context-mode 1.0.28 → 1.0.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/server.bundle.mjs CHANGED
@@ -1,88 +1,88 @@
1
1
  #!/usr/bin/env node
2
- var Mx=Object.create;var ja=Object.defineProperty;var Dx=Object.getOwnPropertyDescriptor;var Lx=Object.getOwnPropertyNames;var Zx=Object.getPrototypeOf,Ux=Object.prototype.hasOwnProperty;var be=(t,e)=>()=>(t&&(e=t(t=0)),e);var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Be=(t,e)=>{for(var r in e)ja(t,r,{get:e[r],enumerable:!0})},Hx=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Lx(e))!Ux.call(t,o)&&o!==r&&ja(t,o,{get:()=>e[o],enumerable:!(n=Dx(e,o))||n.enumerable});return t};var sf=(t,e,r)=>(r=t!=null?Mx(Zx(t)):{},Hx(e||!t||!t.__esModule?ja(r,"default",{value:t,enumerable:!0}):r,t));var No=T(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.regexpCode=ee.getEsmExportName=ee.getProperty=ee.safeStringify=ee.stringify=ee.strConcat=ee.addCodeArg=ee.str=ee._=ee.nil=ee._Code=ee.Name=ee.IDENTIFIER=ee._CodeOrName=void 0;var Io=class{};ee._CodeOrName=Io;ee.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Jr=class extends Io{constructor(e){if(super(),!ee.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};ee.Name=Jr;var lt=class extends Io{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Jr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ee._Code=lt;ee.nil=new lt("");function tg(t,...e){let r=[t[0]],n=0;for(;n<e.length;)vl(r,e[n]),r.push(t[++n]);return new lt(r)}ee._=tg;var yl=new lt("+");function rg(t,...e){let r=[zo(t[0])],n=0;for(;n<e.length;)r.push(yl),vl(r,e[n]),r.push(yl,zo(t[++n]));return LE(r),new lt(r)}ee.str=rg;function vl(t,e){e instanceof lt?t.push(...e._items):e instanceof Jr?t.push(e):t.push(HE(e))}ee.addCodeArg=vl;function LE(t){let e=1;for(;e<t.length-1;){if(t[e]===yl){let r=ZE(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function ZE(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Jr||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof Jr))return`"${t}${e.slice(1)}`}function UE(t,e){return e.emptyStr()?t:t.emptyStr()?e:rg`${t}${e}`}ee.strConcat=UE;function HE(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:zo(Array.isArray(t)?t.join(","):t)}function qE(t){return new lt(zo(t))}ee.stringify=qE;function zo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ee.safeStringify=zo;function FE(t){return typeof t=="string"&&ee.IDENTIFIER.test(t)?new lt(`.${t}`):tg`[${t}]`}ee.getProperty=FE;function BE(t){if(typeof t=="string"&&ee.IDENTIFIER.test(t))return new lt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ee.getEsmExportName=BE;function VE(t){return new lt(t.toString())}ee.regexpCode=VE});var Sl=T(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.ValueScope=Ye.ValueScopeName=Ye.Scope=Ye.varKinds=Ye.UsedValueState=void 0;var We=No(),xl=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Ei;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Ei||(Ye.UsedValueState=Ei={}));Ye.varKinds={const:new We.Name("const"),let:new We.Name("let"),var:new We.Name("var")};var Ti=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof We.Name?e:this.name(e)}name(e){return new We.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ye.Scope=Ti;var $i=class extends We.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,We._)`.${new We.Name(r)}[${n}]`}};Ye.ValueScopeName=$i;var KE=(0,We._)`\n`,kl=class extends Ti{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?KE:We.nil}}get(){return this._scope}name(e){return new $i(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,We._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=We.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,Ei.Started);let l=r(u);if(l){let d=this.opts.es5?Ye.varKinds.var:Ye.varKinds.const;s=(0,We._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,We._)`${s}${l}${this.opts._n}`;else throw new xl(u);c.set(u,Ei.Completed)})}return s}};Ye.ValueScope=kl});var q=T(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.or=F.and=F.not=F.CodeGen=F.operators=F.varKinds=F.ValueScopeName=F.ValueScope=F.Scope=F.Name=F.regexpCode=F.stringify=F.getProperty=F.nil=F.strConcat=F.str=F._=void 0;var Y=No(),vt=Sl(),dr=No();Object.defineProperty(F,"_",{enumerable:!0,get:function(){return dr._}});Object.defineProperty(F,"str",{enumerable:!0,get:function(){return dr.str}});Object.defineProperty(F,"strConcat",{enumerable:!0,get:function(){return dr.strConcat}});Object.defineProperty(F,"nil",{enumerable:!0,get:function(){return dr.nil}});Object.defineProperty(F,"getProperty",{enumerable:!0,get:function(){return dr.getProperty}});Object.defineProperty(F,"stringify",{enumerable:!0,get:function(){return dr.stringify}});Object.defineProperty(F,"regexpCode",{enumerable:!0,get:function(){return dr.regexpCode}});Object.defineProperty(F,"Name",{enumerable:!0,get:function(){return dr.Name}});var Ci=Sl();Object.defineProperty(F,"Scope",{enumerable:!0,get:function(){return Ci.Scope}});Object.defineProperty(F,"ValueScope",{enumerable:!0,get:function(){return Ci.ValueScope}});Object.defineProperty(F,"ValueScopeName",{enumerable:!0,get:function(){return Ci.ValueScopeName}});Object.defineProperty(F,"varKinds",{enumerable:!0,get:function(){return Ci.varKinds}});F.operators={GT:new Y._Code(">"),GTE:new Y._Code(">="),LT:new Y._Code("<"),LTE:new Y._Code("<="),EQ:new Y._Code("==="),NEQ:new Y._Code("!=="),NOT:new Y._Code("!"),OR:new Y._Code("||"),AND:new Y._Code("&&"),ADD:new Y._Code("+")};var Vt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},bl=class extends Vt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?vt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=Pn(this.rhs,e,r)),this}get names(){return this.rhs instanceof Y._CodeOrName?this.rhs.names:{}}},Pi=class extends Vt{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Y.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Pn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Y.Name?{}:{...this.lhs.names};return Oi(e,this.rhs)}},wl=class extends Pi{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},El=class extends Vt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Tl=class extends Vt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},$l=class extends Vt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Pl=class extends Vt{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=Pn(this.code,e,r),this}get names(){return this.code instanceof Y._CodeOrName?this.code.names:{}}},Ao=class extends Vt{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,o=n.length;for(;o--;){let s=n[o];s.optimizeNames(e,r)||(JE(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Yr(e,r.names),{})}},Kt=class extends Ao{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Rl=class extends Ao{},$n=class extends Kt{};$n.kind="else";var Gr=class t extends Kt{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new $n(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(ng(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=Pn(this.condition,e,r),this}get names(){let e=super.names;return Oi(e,this.condition),this.else&&Yr(e,this.else.names),e}};Gr.kind="if";var Wr=class extends Kt{};Wr.kind="for";var Ol=class extends Wr{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=Pn(this.iteration,e,r),this}get names(){return Yr(super.names,this.iteration.names)}},Cl=class extends Wr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?vt.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Oi(super.names,this.from);return Oi(e,this.to)}},Ri=class extends Wr{constructor(e,r,n,o){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=o}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=Pn(this.iterable,e,r),this}get names(){return Yr(super.names,this.iterable.names)}},jo=class extends Kt{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};jo.kind="func";var Mo=class extends Ao{render(e){return"return "+super.render(e)}};Mo.kind="return";var Il=class extends Kt{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,o;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(o=this.finally)===null||o===void 0||o.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Yr(e,this.catch.names),this.finally&&Yr(e,this.finally.names),e}},Do=class extends Kt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Do.kind="catch";var Lo=class extends Kt{render(e){return"finally"+super.render(e)}};Lo.kind="finally";var zl=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
- `:""},this._extScope=e,this._scope=new vt.Scope({parent:e}),this._nodes=[new Rl]}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 bl(e,s,n)),s}const(e,r,n){return this._def(vt.varKinds.const,e,r,n)}let(e,r,n){return this._def(vt.varKinds.let,e,r,n)}var(e,r,n){return this._def(vt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Pi(e,r,n))}add(e,r){return this._leafNode(new wl(e,F.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Y.nil&&this._leafNode(new Pl(e)),this}object(...e){let r=["{"];for(let[n,o]of e)r.length>1&&r.push(","),r.push(n),(n!==o||this.opts.es5)&&(r.push(":"),(0,Y.addCodeArg)(r,o));return r.push("}"),new Y._Code(r)}if(e,r,n){if(this._blockNode(new Gr(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Gr(e))}else(){return this._elseNode(new $n)}endIf(){return this._endBlockNode(Gr,$n)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Ol(e),r)}forRange(e,r,n,o,s=this.opts.es5?vt.varKinds.var:vt.varKinds.let){let i=this._scope.toName(e);return this._for(new Cl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=vt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof Y.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Y._)`${i}.length`,a=>{this.var(s,(0,Y._)`${i}[${a}]`),n(s)})}return this._for(new Ri("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?vt.varKinds.var:vt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Y._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Ri("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Wr)}label(e){return this._leafNode(new El(e))}break(e){return this._leafNode(new Tl(e))}return(e){let r=new Mo;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Mo)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Il;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Do(s),r(s)}return n&&(this._currNode=o.finally=new Lo,this.code(n)),this._endBlockNode(Do,Lo)}throw(e){return this._leafNode(new $l(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Y.nil,n,o){return this._blockNode(new jo(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(jo)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Gr))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};F.CodeGen=zl;function Yr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Oi(t,e){return e instanceof Y._CodeOrName?Yr(t,e.names):t}function Pn(t,e,r){if(t instanceof Y.Name)return n(t);if(!o(t))return t;return new Y._Code(t._items.reduce((s,i)=>(i instanceof Y.Name&&(i=n(i)),i instanceof Y._Code?s.push(...i._items):s.push(i),s),[]));function n(s){let i=r[s.str];return i===void 0||e[s.str]!==1?s:(delete e[s.str],i)}function o(s){return s instanceof Y._Code&&s._items.some(i=>i instanceof Y.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function JE(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function ng(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Y._)`!${Nl(t)}`}F.not=ng;var GE=og(F.operators.AND);function WE(...t){return t.reduce(GE)}F.and=WE;var YE=og(F.operators.OR);function XE(...t){return t.reduce(YE)}F.or=XE;function og(t){return(e,r)=>e===Y.nil?r:r===Y.nil?e:(0,Y._)`${Nl(e)} ${t} ${Nl(r)}`}function Nl(t){return t instanceof Y.Name?t:(0,Y._)`(${t})`}});var X=T(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.checkStrictMode=B.getErrorPath=B.Type=B.useFunc=B.setEvaluated=B.evaluatedPropsToName=B.mergeEvaluated=B.eachItem=B.unescapeJsonPointer=B.escapeJsonPointer=B.escapeFragment=B.unescapeFragment=B.schemaRefOrVal=B.schemaHasRulesButRef=B.schemaHasRules=B.checkUnknownRules=B.alwaysValidSchema=B.toHash=void 0;var oe=q(),QE=No();function eT(t){let e={};for(let r of t)e[r]=!0;return e}B.toHash=eT;function tT(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(ag(t,e),!cg(e,t.self.RULES.all))}B.alwaysValidSchema=tT;function ag(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]||dg(t,`unknown keyword: "${s}"`)}B.checkUnknownRules=ag;function cg(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}B.schemaHasRules=cg;function rT(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}B.schemaHasRulesButRef=rT;function nT({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,oe._)`${r}`}return(0,oe._)`${t}${e}${(0,oe.getProperty)(n)}`}B.schemaRefOrVal=nT;function oT(t){return ug(decodeURIComponent(t))}B.unescapeFragment=oT;function sT(t){return encodeURIComponent(jl(t))}B.escapeFragment=sT;function jl(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}B.escapeJsonPointer=jl;function ug(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}B.unescapeJsonPointer=ug;function iT(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}B.eachItem=iT;function sg({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof oe.Name?(s instanceof oe.Name?t(o,s,i):e(o,s,i),i):s instanceof oe.Name?(e(o,i,s),s):r(s,i);return a===oe.Name&&!(c instanceof oe.Name)?n(o,c):c}}B.mergeEvaluated={props:sg({mergeNames:(t,e,r)=>t.if((0,oe._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,oe._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,oe._)`${r} || {}`).code((0,oe._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,oe._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,oe._)`${r} || {}`),Ml(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:lg}),items:sg({mergeNames:(t,e,r)=>t.if((0,oe._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,oe._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,oe._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,oe._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function lg(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,oe._)`{}`);return e!==void 0&&Ml(t,r,e),r}B.evaluatedPropsToName=lg;function Ml(t,e,r){Object.keys(r).forEach(n=>t.assign((0,oe._)`${e}${(0,oe.getProperty)(n)}`,!0))}B.setEvaluated=Ml;var ig={};function aT(t,e){return t.scopeValue("func",{ref:e,code:ig[e.code]||(ig[e.code]=new QE._Code(e.code))})}B.useFunc=aT;var Al;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Al||(B.Type=Al={}));function cT(t,e,r){if(t instanceof oe.Name){let n=e===Al.Num;return r?n?(0,oe._)`"[" + ${t} + "]"`:(0,oe._)`"['" + ${t} + "']"`:n?(0,oe._)`"/" + ${t}`:(0,oe._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,oe.getProperty)(t).toString():"/"+jl(t)}B.getErrorPath=cT;function dg(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}B.checkStrictMode=dg});var Jt=T(Dl=>{"use strict";Object.defineProperty(Dl,"__esModule",{value:!0});var je=q(),uT={data:new je.Name("data"),valCxt:new je.Name("valCxt"),instancePath:new je.Name("instancePath"),parentData:new je.Name("parentData"),parentDataProperty:new je.Name("parentDataProperty"),rootData:new je.Name("rootData"),dynamicAnchors:new je.Name("dynamicAnchors"),vErrors:new je.Name("vErrors"),errors:new je.Name("errors"),this:new je.Name("this"),self:new je.Name("self"),scope:new je.Name("scope"),json:new je.Name("json"),jsonPos:new je.Name("jsonPos"),jsonLen:new je.Name("jsonLen"),jsonPart:new je.Name("jsonPart")};Dl.default=uT});var Zo=T(Me=>{"use strict";Object.defineProperty(Me,"__esModule",{value:!0});Me.extendErrors=Me.resetErrorsCount=Me.reportExtraError=Me.reportError=Me.keyword$DataError=Me.keywordError=void 0;var Q=q(),Ii=X(),He=Jt();Me.keywordError={message:({keyword:t})=>(0,Q.str)`must pass "${t}" keyword validation`};Me.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Q.str)`"${t}" keyword must be ${e} ($data)`:(0,Q.str)`"${t}" keyword is invalid ($data)`};function lT(t,e=Me.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=mg(t,e,r);n??(i||a)?pg(s,c):fg(o,(0,Q._)`[${c}]`)}Me.reportError=lT;function dT(t,e=Me.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=mg(t,e,r);pg(o,a),s||i||fg(n,He.default.vErrors)}Me.reportExtraError=dT;function pT(t,e){t.assign(He.default.errors,e),t.if((0,Q._)`${He.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Q._)`${He.default.vErrors}.length`,e),()=>t.assign(He.default.vErrors,null)))}Me.resetErrorsCount=pT;function fT({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,He.default.errors,a=>{t.const(i,(0,Q._)`${He.default.vErrors}[${a}]`),t.if((0,Q._)`${i}.instancePath === undefined`,()=>t.assign((0,Q._)`${i}.instancePath`,(0,Q.strConcat)(He.default.instancePath,s.errorPath))),t.assign((0,Q._)`${i}.schemaPath`,(0,Q.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,Q._)`${i}.schema`,r),t.assign((0,Q._)`${i}.data`,n))})}Me.extendErrors=fT;function pg(t,e){let r=t.const("err",e);t.if((0,Q._)`${He.default.vErrors} === null`,()=>t.assign(He.default.vErrors,(0,Q._)`[${r}]`),(0,Q._)`${He.default.vErrors}.push(${r})`),t.code((0,Q._)`${He.default.errors}++`)}function fg(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,Q._)`new ${t.ValidationError}(${e})`):(r.assign((0,Q._)`${n}.errors`,e),r.return(!1))}var Xr={keyword:new Q.Name("keyword"),schemaPath:new Q.Name("schemaPath"),params:new Q.Name("params"),propertyName:new Q.Name("propertyName"),message:new Q.Name("message"),schema:new Q.Name("schema"),parentSchema:new Q.Name("parentSchema")};function mg(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Q._)`{}`:mT(t,e,r)}function mT(t,e,r={}){let{gen:n,it:o}=t,s=[hT(o,r),gT(t,r)];return _T(t,e,s),n.object(...s)}function hT({errorPath:t},{instancePath:e}){let r=e?(0,Q.str)`${t}${(0,Ii.getErrorPath)(e,Ii.Type.Str)}`:t;return[He.default.instancePath,(0,Q.strConcat)(He.default.instancePath,r)]}function gT({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,Q.str)`${e}/${t}`;return r&&(o=(0,Q.str)`${o}${(0,Ii.getErrorPath)(r,Ii.Type.Str)}`),[Xr.schemaPath,o]}function _T(t,{params:e,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;n.push([Xr.keyword,o],[Xr.params,typeof e=="function"?e(t):e||(0,Q._)`{}`]),c.messages&&n.push([Xr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Xr.schema,i],[Xr.parentSchema,(0,Q._)`${l}${d}`],[He.default.data,s]),u&&n.push([Xr.propertyName,u])}});var gg=T(Rn=>{"use strict";Object.defineProperty(Rn,"__esModule",{value:!0});Rn.boolOrEmptySchema=Rn.topBoolOrEmptySchema=void 0;var yT=Zo(),vT=q(),xT=Jt(),kT={message:"boolean schema is false"};function ST(t){let{gen:e,schema:r,validateName:n}=t;r===!1?hg(t,!1):typeof r=="object"&&r.$async===!0?e.return(xT.default.data):(e.assign((0,vT._)`${n}.errors`,null),e.return(!0))}Rn.topBoolOrEmptySchema=ST;function bT(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),hg(t)):r.var(e,!0)}Rn.boolOrEmptySchema=bT;function hg(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,yT.reportError)(o,kT,void 0,e)}});var Ll=T(On=>{"use strict";Object.defineProperty(On,"__esModule",{value:!0});On.getRules=On.isJSONType=void 0;var wT=["string","number","integer","boolean","null","object","array"],ET=new Set(wT);function TT(t){return typeof t=="string"&&ET.has(t)}On.isJSONType=TT;function $T(){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:{}}}On.getRules=$T});var Zl=T(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.shouldUseRule=pr.shouldUseGroup=pr.schemaHasRulesForType=void 0;function PT({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&_g(t,n)}pr.schemaHasRulesForType=PT;function _g(t,e){return e.rules.some(r=>yg(t,r))}pr.shouldUseGroup=_g;function yg(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}pr.shouldUseRule=yg});var Uo=T(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.reportTypeError=De.checkDataTypes=De.checkDataType=De.coerceAndCheckDataType=De.getJSONTypes=De.getSchemaTypes=De.DataType=void 0;var RT=Ll(),OT=Zl(),CT=Zo(),U=q(),vg=X(),Cn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Cn||(De.DataType=Cn={}));function IT(t){let e=xg(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}De.getSchemaTypes=IT;function xg(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(RT.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}De.getJSONTypes=xg;function zT(t,e){let{gen:r,data:n,opts:o}=t,s=NT(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,OT.schemaHasRulesForType)(t,e[0]));if(i){let a=Hl(e,n,o.strictNumbers,Cn.Wrong);r.if(a,()=>{s.length?AT(t,e,s):ql(t)})}return i}De.coerceAndCheckDataType=zT;var kg=new Set(["string","number","integer","boolean","null"]);function NT(t,e){return e?t.filter(r=>kg.has(r)||e==="array"&&r==="array"):[]}function AT(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,U._)`typeof ${o}`),a=n.let("coerced",(0,U._)`undefined`);s.coerceTypes==="array"&&n.if((0,U._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,U._)`${o}[0]`).assign(i,(0,U._)`typeof ${o}`).if(Hl(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,U._)`${a} !== undefined`);for(let u of r)(kg.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),ql(t),n.endIf(),n.if((0,U._)`${a} !== undefined`,()=>{n.assign(o,a),jT(t,a)});function c(u){switch(u){case"string":n.elseIf((0,U._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,U._)`"" + ${o}`).elseIf((0,U._)`${o} === null`).assign(a,(0,U._)`""`);return;case"number":n.elseIf((0,U._)`${i} == "boolean" || ${o} === null
2
+ var Fx=Object.create;var Da=Object.defineProperty;var Bx=Object.getOwnPropertyDescriptor;var Vx=Object.getOwnPropertyNames;var Kx=Object.getPrototypeOf,Jx=Object.prototype.hasOwnProperty;var be=(t,e)=>()=>(t&&(e=t(t=0)),e);var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Be=(t,e)=>{for(var r in e)Da(t,r,{get:e[r],enumerable:!0})},Gx=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Vx(e))!Jx.call(t,o)&&o!==r&&Da(t,o,{get:()=>e[o],enumerable:!(n=Bx(e,o))||n.enumerable});return t};var df=(t,e,r)=>(r=t!=null?Fx(Kx(t)):{},Gx(e||!t||!t.__esModule?Da(r,"default",{value:t,enumerable:!0}):r,t));var jo=T(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.regexpCode=ee.getEsmExportName=ee.getProperty=ee.safeStringify=ee.stringify=ee.strConcat=ee.addCodeArg=ee.str=ee._=ee.nil=ee._Code=ee.Name=ee.IDENTIFIER=ee._CodeOrName=void 0;var No=class{};ee._CodeOrName=No;ee.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Gr=class extends No{constructor(e){if(super(),!ee.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};ee.Name=Gr;var lt=class extends No{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Gr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ee._Code=lt;ee.nil=new lt("");function ig(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Sl(r,e[n]),r.push(t[++n]);return new lt(r)}ee._=ig;var xl=new lt("+");function ag(t,...e){let r=[Ao(t[0])],n=0;for(;n<e.length;)r.push(xl),Sl(r,e[n]),r.push(xl,Ao(t[++n]));return VE(r),new lt(r)}ee.str=ag;function Sl(t,e){e instanceof lt?t.push(...e._items):e instanceof Gr?t.push(e):t.push(GE(e))}ee.addCodeArg=Sl;function VE(t){let e=1;for(;e<t.length-1;){if(t[e]===xl){let r=KE(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function KE(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Gr||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof Gr))return`"${t}${e.slice(1)}`}function JE(t,e){return e.emptyStr()?t:t.emptyStr()?e:ag`${t}${e}`}ee.strConcat=JE;function GE(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Ao(Array.isArray(t)?t.join(","):t)}function WE(t){return new lt(Ao(t))}ee.stringify=WE;function Ao(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ee.safeStringify=Ao;function YE(t){return typeof t=="string"&&ee.IDENTIFIER.test(t)?new lt(`.${t}`):ig`[${t}]`}ee.getProperty=YE;function XE(t){if(typeof t=="string"&&ee.IDENTIFIER.test(t))return new lt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ee.getEsmExportName=XE;function QE(t){return new lt(t.toString())}ee.regexpCode=QE});var wl=T(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.ValueScope=Ye.ValueScopeName=Ye.Scope=Ye.varKinds=Ye.UsedValueState=void 0;var We=jo(),kl=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},$i;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})($i||(Ye.UsedValueState=$i={}));Ye.varKinds={const:new We.Name("const"),let:new We.Name("let"),var:new We.Name("var")};var Pi=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof We.Name?e:this.name(e)}name(e){return new We.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ye.Scope=Pi;var Ri=class extends We.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,We._)`.${new We.Name(r)}[${n}]`}};Ye.ValueScopeName=Ri;var eT=(0,We._)`\n`,bl=class extends Pi{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?eT:We.nil}}get(){return this._scope}name(e){return new Ri(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,We._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=We.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,$i.Started);let l=r(u);if(l){let d=this.opts.es5?Ye.varKinds.var:Ye.varKinds.const;s=(0,We._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,We._)`${s}${l}${this.opts._n}`;else throw new kl(u);c.set(u,$i.Completed)})}return s}};Ye.ValueScope=bl});var q=T(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.or=F.and=F.not=F.CodeGen=F.operators=F.varKinds=F.ValueScopeName=F.ValueScope=F.Scope=F.Name=F.regexpCode=F.stringify=F.getProperty=F.nil=F.strConcat=F.str=F._=void 0;var Y=jo(),vt=wl(),dr=jo();Object.defineProperty(F,"_",{enumerable:!0,get:function(){return dr._}});Object.defineProperty(F,"str",{enumerable:!0,get:function(){return dr.str}});Object.defineProperty(F,"strConcat",{enumerable:!0,get:function(){return dr.strConcat}});Object.defineProperty(F,"nil",{enumerable:!0,get:function(){return dr.nil}});Object.defineProperty(F,"getProperty",{enumerable:!0,get:function(){return dr.getProperty}});Object.defineProperty(F,"stringify",{enumerable:!0,get:function(){return dr.stringify}});Object.defineProperty(F,"regexpCode",{enumerable:!0,get:function(){return dr.regexpCode}});Object.defineProperty(F,"Name",{enumerable:!0,get:function(){return dr.Name}});var zi=wl();Object.defineProperty(F,"Scope",{enumerable:!0,get:function(){return zi.Scope}});Object.defineProperty(F,"ValueScope",{enumerable:!0,get:function(){return zi.ValueScope}});Object.defineProperty(F,"ValueScopeName",{enumerable:!0,get:function(){return zi.ValueScopeName}});Object.defineProperty(F,"varKinds",{enumerable:!0,get:function(){return zi.varKinds}});F.operators={GT:new Y._Code(">"),GTE:new Y._Code(">="),LT:new Y._Code("<"),LTE:new Y._Code("<="),EQ:new Y._Code("==="),NEQ:new Y._Code("!=="),NOT:new Y._Code("!"),OR:new Y._Code("||"),AND:new Y._Code("&&"),ADD:new Y._Code("+")};var Vt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},El=class extends Vt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?vt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=On(this.rhs,e,r)),this}get names(){return this.rhs instanceof Y._CodeOrName?this.rhs.names:{}}},Oi=class extends Vt{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Y.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=On(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Y.Name?{}:{...this.lhs.names};return Ii(e,this.rhs)}},Tl=class extends Oi{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},$l=class extends Vt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Pl=class extends Vt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Rl=class extends Vt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Ol=class extends Vt{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=On(this.code,e,r),this}get names(){return this.code instanceof Y._CodeOrName?this.code.names:{}}},Mo=class extends Vt{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,o=n.length;for(;o--;){let s=n[o];s.optimizeNames(e,r)||(tT(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Xr(e,r.names),{})}},Kt=class extends Mo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Cl=class extends Mo{},Rn=class extends Kt{};Rn.kind="else";var Wr=class t extends Kt{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Rn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(cg(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=On(this.condition,e,r),this}get names(){let e=super.names;return Ii(e,this.condition),this.else&&Xr(e,this.else.names),e}};Wr.kind="if";var Yr=class extends Kt{};Yr.kind="for";var Il=class extends Yr{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=On(this.iteration,e,r),this}get names(){return Xr(super.names,this.iteration.names)}},zl=class extends Yr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?vt.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Ii(super.names,this.from);return Ii(e,this.to)}},Ci=class extends Yr{constructor(e,r,n,o){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=o}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=On(this.iterable,e,r),this}get names(){return Xr(super.names,this.iterable.names)}},Do=class extends Kt{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};Do.kind="func";var Lo=class extends Mo{render(e){return"return "+super.render(e)}};Lo.kind="return";var Nl=class extends Kt{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,o;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(o=this.finally)===null||o===void 0||o.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Xr(e,this.catch.names),this.finally&&Xr(e,this.finally.names),e}},Zo=class extends Kt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Zo.kind="catch";var Uo=class extends Kt{render(e){return"finally"+super.render(e)}};Uo.kind="finally";var Al=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
+ `:""},this._extScope=e,this._scope=new vt.Scope({parent:e}),this._nodes=[new Cl]}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 El(e,s,n)),s}const(e,r,n){return this._def(vt.varKinds.const,e,r,n)}let(e,r,n){return this._def(vt.varKinds.let,e,r,n)}var(e,r,n){return this._def(vt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Oi(e,r,n))}add(e,r){return this._leafNode(new Tl(e,F.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Y.nil&&this._leafNode(new Ol(e)),this}object(...e){let r=["{"];for(let[n,o]of e)r.length>1&&r.push(","),r.push(n),(n!==o||this.opts.es5)&&(r.push(":"),(0,Y.addCodeArg)(r,o));return r.push("}"),new Y._Code(r)}if(e,r,n){if(this._blockNode(new Wr(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Wr(e))}else(){return this._elseNode(new Rn)}endIf(){return this._endBlockNode(Wr,Rn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Il(e),r)}forRange(e,r,n,o,s=this.opts.es5?vt.varKinds.var:vt.varKinds.let){let i=this._scope.toName(e);return this._for(new zl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=vt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof Y.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Y._)`${i}.length`,a=>{this.var(s,(0,Y._)`${i}[${a}]`),n(s)})}return this._for(new Ci("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?vt.varKinds.var:vt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Y._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Ci("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Yr)}label(e){return this._leafNode(new $l(e))}break(e){return this._leafNode(new Pl(e))}return(e){let r=new Lo;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Lo)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Nl;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Zo(s),r(s)}return n&&(this._currNode=o.finally=new Uo,this.code(n)),this._endBlockNode(Zo,Uo)}throw(e){return this._leafNode(new Rl(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Y.nil,n,o){return this._blockNode(new Do(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Do)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Wr))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};F.CodeGen=Al;function Xr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Ii(t,e){return e instanceof Y._CodeOrName?Xr(t,e.names):t}function On(t,e,r){if(t instanceof Y.Name)return n(t);if(!o(t))return t;return new Y._Code(t._items.reduce((s,i)=>(i instanceof Y.Name&&(i=n(i)),i instanceof Y._Code?s.push(...i._items):s.push(i),s),[]));function n(s){let i=r[s.str];return i===void 0||e[s.str]!==1?s:(delete e[s.str],i)}function o(s){return s instanceof Y._Code&&s._items.some(i=>i instanceof Y.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function tT(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function cg(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Y._)`!${jl(t)}`}F.not=cg;var rT=ug(F.operators.AND);function nT(...t){return t.reduce(rT)}F.and=nT;var oT=ug(F.operators.OR);function sT(...t){return t.reduce(oT)}F.or=sT;function ug(t){return(e,r)=>e===Y.nil?r:r===Y.nil?e:(0,Y._)`${jl(e)} ${t} ${jl(r)}`}function jl(t){return t instanceof Y.Name?t:(0,Y._)`(${t})`}});var X=T(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.checkStrictMode=B.getErrorPath=B.Type=B.useFunc=B.setEvaluated=B.evaluatedPropsToName=B.mergeEvaluated=B.eachItem=B.unescapeJsonPointer=B.escapeJsonPointer=B.escapeFragment=B.unescapeFragment=B.schemaRefOrVal=B.schemaHasRulesButRef=B.schemaHasRules=B.checkUnknownRules=B.alwaysValidSchema=B.toHash=void 0;var oe=q(),iT=jo();function aT(t){let e={};for(let r of t)e[r]=!0;return e}B.toHash=aT;function cT(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(pg(t,e),!fg(e,t.self.RULES.all))}B.alwaysValidSchema=cT;function pg(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]||gg(t,`unknown keyword: "${s}"`)}B.checkUnknownRules=pg;function fg(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}B.schemaHasRules=fg;function uT(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}B.schemaHasRulesButRef=uT;function lT({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,oe._)`${r}`}return(0,oe._)`${t}${e}${(0,oe.getProperty)(n)}`}B.schemaRefOrVal=lT;function dT(t){return mg(decodeURIComponent(t))}B.unescapeFragment=dT;function pT(t){return encodeURIComponent(Dl(t))}B.escapeFragment=pT;function Dl(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}B.escapeJsonPointer=Dl;function mg(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}B.unescapeJsonPointer=mg;function fT(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}B.eachItem=fT;function lg({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof oe.Name?(s instanceof oe.Name?t(o,s,i):e(o,s,i),i):s instanceof oe.Name?(e(o,i,s),s):r(s,i);return a===oe.Name&&!(c instanceof oe.Name)?n(o,c):c}}B.mergeEvaluated={props:lg({mergeNames:(t,e,r)=>t.if((0,oe._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,oe._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,oe._)`${r} || {}`).code((0,oe._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,oe._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,oe._)`${r} || {}`),Ll(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:hg}),items:lg({mergeNames:(t,e,r)=>t.if((0,oe._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,oe._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,oe._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,oe._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function hg(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,oe._)`{}`);return e!==void 0&&Ll(t,r,e),r}B.evaluatedPropsToName=hg;function Ll(t,e,r){Object.keys(r).forEach(n=>t.assign((0,oe._)`${e}${(0,oe.getProperty)(n)}`,!0))}B.setEvaluated=Ll;var dg={};function mT(t,e){return t.scopeValue("func",{ref:e,code:dg[e.code]||(dg[e.code]=new iT._Code(e.code))})}B.useFunc=mT;var Ml;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Ml||(B.Type=Ml={}));function hT(t,e,r){if(t instanceof oe.Name){let n=e===Ml.Num;return r?n?(0,oe._)`"[" + ${t} + "]"`:(0,oe._)`"['" + ${t} + "']"`:n?(0,oe._)`"/" + ${t}`:(0,oe._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,oe.getProperty)(t).toString():"/"+Dl(t)}B.getErrorPath=hT;function gg(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}B.checkStrictMode=gg});var Jt=T(Zl=>{"use strict";Object.defineProperty(Zl,"__esModule",{value:!0});var je=q(),gT={data:new je.Name("data"),valCxt:new je.Name("valCxt"),instancePath:new je.Name("instancePath"),parentData:new je.Name("parentData"),parentDataProperty:new je.Name("parentDataProperty"),rootData:new je.Name("rootData"),dynamicAnchors:new je.Name("dynamicAnchors"),vErrors:new je.Name("vErrors"),errors:new je.Name("errors"),this:new je.Name("this"),self:new je.Name("self"),scope:new je.Name("scope"),json:new je.Name("json"),jsonPos:new je.Name("jsonPos"),jsonLen:new je.Name("jsonLen"),jsonPart:new je.Name("jsonPart")};Zl.default=gT});var Ho=T(Me=>{"use strict";Object.defineProperty(Me,"__esModule",{value:!0});Me.extendErrors=Me.resetErrorsCount=Me.reportExtraError=Me.reportError=Me.keyword$DataError=Me.keywordError=void 0;var Q=q(),Ni=X(),He=Jt();Me.keywordError={message:({keyword:t})=>(0,Q.str)`must pass "${t}" keyword validation`};Me.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Q.str)`"${t}" keyword must be ${e} ($data)`:(0,Q.str)`"${t}" keyword is invalid ($data)`};function _T(t,e=Me.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=vg(t,e,r);n??(i||a)?_g(s,c):yg(o,(0,Q._)`[${c}]`)}Me.reportError=_T;function yT(t,e=Me.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=vg(t,e,r);_g(o,a),s||i||yg(n,He.default.vErrors)}Me.reportExtraError=yT;function vT(t,e){t.assign(He.default.errors,e),t.if((0,Q._)`${He.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Q._)`${He.default.vErrors}.length`,e),()=>t.assign(He.default.vErrors,null)))}Me.resetErrorsCount=vT;function xT({gen:t,keyword:e,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let i=t.name("err");t.forRange("i",o,He.default.errors,a=>{t.const(i,(0,Q._)`${He.default.vErrors}[${a}]`),t.if((0,Q._)`${i}.instancePath === undefined`,()=>t.assign((0,Q._)`${i}.instancePath`,(0,Q.strConcat)(He.default.instancePath,s.errorPath))),t.assign((0,Q._)`${i}.schemaPath`,(0,Q.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,Q._)`${i}.schema`,r),t.assign((0,Q._)`${i}.data`,n))})}Me.extendErrors=xT;function _g(t,e){let r=t.const("err",e);t.if((0,Q._)`${He.default.vErrors} === null`,()=>t.assign(He.default.vErrors,(0,Q._)`[${r}]`),(0,Q._)`${He.default.vErrors}.push(${r})`),t.code((0,Q._)`${He.default.errors}++`)}function yg(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,Q._)`new ${t.ValidationError}(${e})`):(r.assign((0,Q._)`${n}.errors`,e),r.return(!1))}var Qr={keyword:new Q.Name("keyword"),schemaPath:new Q.Name("schemaPath"),params:new Q.Name("params"),propertyName:new Q.Name("propertyName"),message:new Q.Name("message"),schema:new Q.Name("schema"),parentSchema:new Q.Name("parentSchema")};function vg(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Q._)`{}`:ST(t,e,r)}function ST(t,e,r={}){let{gen:n,it:o}=t,s=[kT(o,r),bT(t,r)];return wT(t,e,s),n.object(...s)}function kT({errorPath:t},{instancePath:e}){let r=e?(0,Q.str)`${t}${(0,Ni.getErrorPath)(e,Ni.Type.Str)}`:t;return[He.default.instancePath,(0,Q.strConcat)(He.default.instancePath,r)]}function bT({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,Q.str)`${e}/${t}`;return r&&(o=(0,Q.str)`${o}${(0,Ni.getErrorPath)(r,Ni.Type.Str)}`),[Qr.schemaPath,o]}function wT(t,{params:e,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;n.push([Qr.keyword,o],[Qr.params,typeof e=="function"?e(t):e||(0,Q._)`{}`]),c.messages&&n.push([Qr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Qr.schema,i],[Qr.parentSchema,(0,Q._)`${l}${d}`],[He.default.data,s]),u&&n.push([Qr.propertyName,u])}});var Sg=T(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.boolOrEmptySchema=Cn.topBoolOrEmptySchema=void 0;var ET=Ho(),TT=q(),$T=Jt(),PT={message:"boolean schema is false"};function RT(t){let{gen:e,schema:r,validateName:n}=t;r===!1?xg(t,!1):typeof r=="object"&&r.$async===!0?e.return($T.default.data):(e.assign((0,TT._)`${n}.errors`,null),e.return(!0))}Cn.topBoolOrEmptySchema=RT;function OT(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),xg(t)):r.var(e,!0)}Cn.boolOrEmptySchema=OT;function xg(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,ET.reportError)(o,PT,void 0,e)}});var Ul=T(In=>{"use strict";Object.defineProperty(In,"__esModule",{value:!0});In.getRules=In.isJSONType=void 0;var CT=["string","number","integer","boolean","null","object","array"],IT=new Set(CT);function zT(t){return typeof t=="string"&&IT.has(t)}In.isJSONType=zT;function NT(){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:{}}}In.getRules=NT});var Hl=T(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.shouldUseRule=pr.shouldUseGroup=pr.schemaHasRulesForType=void 0;function AT({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&kg(t,n)}pr.schemaHasRulesForType=AT;function kg(t,e){return e.rules.some(r=>bg(t,r))}pr.shouldUseGroup=kg;function bg(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}pr.shouldUseRule=bg});var qo=T(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.reportTypeError=De.checkDataTypes=De.checkDataType=De.coerceAndCheckDataType=De.getJSONTypes=De.getSchemaTypes=De.DataType=void 0;var jT=Ul(),MT=Hl(),DT=Ho(),U=q(),wg=X(),zn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(zn||(De.DataType=zn={}));function LT(t){let e=Eg(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}De.getSchemaTypes=LT;function Eg(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(jT.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}De.getJSONTypes=Eg;function ZT(t,e){let{gen:r,data:n,opts:o}=t,s=UT(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,MT.schemaHasRulesForType)(t,e[0]));if(i){let a=Fl(e,n,o.strictNumbers,zn.Wrong);r.if(a,()=>{s.length?HT(t,e,s):Bl(t)})}return i}De.coerceAndCheckDataType=ZT;var Tg=new Set(["string","number","integer","boolean","null"]);function UT(t,e){return e?t.filter(r=>Tg.has(r)||e==="array"&&r==="array"):[]}function HT(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,U._)`typeof ${o}`),a=n.let("coerced",(0,U._)`undefined`);s.coerceTypes==="array"&&n.if((0,U._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,U._)`${o}[0]`).assign(i,(0,U._)`typeof ${o}`).if(Fl(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,U._)`${a} !== undefined`);for(let u of r)(Tg.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Bl(t),n.endIf(),n.if((0,U._)`${a} !== undefined`,()=>{n.assign(o,a),qT(t,a)});function c(u){switch(u){case"string":n.elseIf((0,U._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,U._)`"" + ${o}`).elseIf((0,U._)`${o} === null`).assign(a,(0,U._)`""`);return;case"number":n.elseIf((0,U._)`${i} == "boolean" || ${o} === null
4
4
  || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,U._)`+${o}`);return;case"integer":n.elseIf((0,U._)`${i} === "boolean" || ${o} === null
5
5
  || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,U._)`+${o}`);return;case"boolean":n.elseIf((0,U._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,U._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,U._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,U._)`${i} === "string" || ${i} === "number"
6
- || ${i} === "boolean" || ${o} === null`).assign(a,(0,U._)`[${o}]`)}}}function jT({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,U._)`${e} !== undefined`,()=>t.assign((0,U._)`${e}[${r}]`,n))}function Ul(t,e,r,n=Cn.Correct){let o=n===Cn.Correct?U.operators.EQ:U.operators.NEQ,s;switch(t){case"null":return(0,U._)`${e} ${o} null`;case"array":s=(0,U._)`Array.isArray(${e})`;break;case"object":s=(0,U._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,U._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,U._)`typeof ${e} ${o} ${t}`}return n===Cn.Correct?s:(0,U.not)(s);function i(a=U.nil){return(0,U.and)((0,U._)`typeof ${e} == "number"`,a,r?(0,U._)`isFinite(${e})`:U.nil)}}De.checkDataType=Ul;function Hl(t,e,r,n){if(t.length===1)return Ul(t[0],e,r,n);let o,s=(0,vg.toHash)(t);if(s.array&&s.object){let i=(0,U._)`typeof ${e} != "object"`;o=s.null?i:(0,U._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=U.nil;s.number&&delete s.integer;for(let i in s)o=(0,U.and)(o,Ul(i,e,r,n));return o}De.checkDataTypes=Hl;var MT={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,U._)`{type: ${t}}`:(0,U._)`{type: ${e}}`};function ql(t){let e=DT(t);(0,CT.reportError)(e,MT)}De.reportTypeError=ql;function DT(t){let{gen:e,data:r,schema:n}=t,o=(0,vg.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var bg=T(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.assignDefaults=void 0;var In=q(),LT=X();function ZT(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Sg(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Sg(t,s,o.default))}zi.assignDefaults=ZT;function Sg(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,In._)`${s}${(0,In.getProperty)(e)}`;if(o){(0,LT.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,In._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,In._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,In._)`${a} = ${(0,In.stringify)(r)}`)}});var dt=T(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});ne.validateUnion=ne.validateArray=ne.usePattern=ne.callValidateCode=ne.schemaProperties=ne.allSchemaProperties=ne.noPropertyInData=ne.propertyInData=ne.isOwnProperty=ne.hasPropFunc=ne.reportMissingProp=ne.checkMissingProp=ne.checkReportMissingProp=void 0;var de=q(),Fl=X(),fr=Jt(),UT=X();function HT(t,e){let{gen:r,data:n,it:o}=t;r.if(Vl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,de._)`${e}`},!0),t.error()})}ne.checkReportMissingProp=HT;function qT({gen:t,data:e,it:{opts:r}},n,o){return(0,de.or)(...n.map(s=>(0,de.and)(Vl(t,e,s,r.ownProperties),(0,de._)`${o} = ${s}`)))}ne.checkMissingProp=qT;function FT(t,e){t.setParams({missingProperty:e},!0),t.error()}ne.reportMissingProp=FT;function wg(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,de._)`Object.prototype.hasOwnProperty`})}ne.hasPropFunc=wg;function Bl(t,e,r){return(0,de._)`${wg(t)}.call(${e}, ${r})`}ne.isOwnProperty=Bl;function BT(t,e,r,n){let o=(0,de._)`${e}${(0,de.getProperty)(r)} !== undefined`;return n?(0,de._)`${o} && ${Bl(t,e,r)}`:o}ne.propertyInData=BT;function Vl(t,e,r,n){let o=(0,de._)`${e}${(0,de.getProperty)(r)} === undefined`;return n?(0,de.or)(o,(0,de.not)(Bl(t,e,r))):o}ne.noPropertyInData=Vl;function Eg(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ne.allSchemaProperties=Eg;function VT(t,e){return Eg(e).filter(r=>!(0,Fl.alwaysValidSchema)(t,e[r]))}ne.schemaProperties=VT;function KT({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,de._)`${t}, ${e}, ${n}${o}`:e,d=[[fr.default.instancePath,(0,de.strConcat)(fr.default.instancePath,s)],[fr.default.parentData,i.parentData],[fr.default.parentDataProperty,i.parentDataProperty],[fr.default.rootData,fr.default.rootData]];i.opts.dynamicRef&&d.push([fr.default.dynamicAnchors,fr.default.dynamicAnchors]);let f=(0,de._)`${l}, ${r.object(...d)}`;return c!==de.nil?(0,de._)`${a}.call(${c}, ${f})`:(0,de._)`${a}(${f})`}ne.callValidateCode=KT;var JT=(0,de._)`new RegExp`;function GT({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,de._)`${o.code==="new RegExp"?JT:(0,UT.useFunc)(t,o)}(${r}, ${n})`})}ne.usePattern=GT;function WT(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,de._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Fl.Type.Num},s),e.if((0,de.not)(s),a)})}}ne.validateArray=WT;function YT(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,Fl.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,de._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,de.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}ne.validateUnion=YT});var Pg=T(It=>{"use strict";Object.defineProperty(It,"__esModule",{value:!0});It.validateKeywordUsage=It.validSchemaType=It.funcKeywordCode=It.macroKeywordCode=void 0;var qe=q(),Qr=Jt(),XT=dt(),QT=Zo();function e$(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=$g(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:qe.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}It.macroKeywordCode=e$;function t$(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;n$(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=$g(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&&Tg(t),g(()=>t.error());else{let y=e.async?m():p();e.modifying&&Tg(t),g(()=>r$(t,y))}}function m(){let y=n.let("ruleErrs",null);return n.try(()=>h((0,qe._)`await `),x=>n.assign(d,!1).if((0,qe._)`${x} instanceof ${c.ValidationError}`,()=>n.assign(y,(0,qe._)`${x}.errors`),()=>n.throw(x))),y}function p(){let y=(0,qe._)`${l}.errors`;return n.assign(y,null),h(qe.nil),y}function h(y=e.async?(0,qe._)`await `:qe.nil){let x=c.opts.passContext?Qr.default.this:Qr.default.self,k=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,qe._)`${y}${(0,XT.callValidateCode)(t,l,x,k)}`,e.modifying)}function g(y){var x;n.if((0,qe.not)((x=e.valid)!==null&&x!==void 0?x:d),y)}}It.funcKeywordCode=t$;function Tg(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,qe._)`${n.parentData}[${n.parentDataProperty}]`))}function r$(t,e){let{gen:r}=t;r.if((0,qe._)`Array.isArray(${e})`,()=>{r.assign(Qr.default.vErrors,(0,qe._)`${Qr.default.vErrors} === null ? ${e} : ${Qr.default.vErrors}.concat(${e})`).assign(Qr.default.errors,(0,qe._)`${Qr.default.vErrors}.length`),(0,QT.extendErrors)(t)},()=>t.error())}function n$({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function $g(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,qe.stringify)(r)})}function o$(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}It.validSchemaType=o$;function s$({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}It.validateKeywordUsage=s$});var Og=T(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.extendSubschemaMode=mr.extendSubschemaData=mr.getSubschema=void 0;var zt=q(),Rg=X();function i$(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,Rg.escapeFragment)(r)}`}}if(n!==void 0){if(o===void 0||s===void 0||i===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:i,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}mr.getSubschema=i$;function a$(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,Rg.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,zt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof zt.Name?o:a.let("data",o,!0);c(u),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}mr.extendSubschemaData=a$;function c$(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:s}){n!==void 0&&(t.compositeRule=n),o!==void 0&&(t.createErrors=o),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=r}mr.extendSubschemaMode=c$});var Kl=T((M1,Cg)=>{"use strict";Cg.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,o,s;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!t(e[o],r[o]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(s=Object.keys(e),n=s.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[o]))return!1;for(o=n;o--!==0;){var i=s[o];if(!t(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}});var zg=T((D1,Ig)=>{"use strict";var hr=Ig.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};Ni(e,n,o,t,"",t)};hr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};hr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};hr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};hr.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Ni(t,e,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in hr.arrayKeywords)for(var f=0;f<d.length;f++)Ni(t,e,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in hr.propsKeywords){if(d&&typeof d=="object")for(var m in d)Ni(t,e,r,d[m],o+"/"+l+"/"+u$(m),s,o,l,n,m)}else(l in hr.keywords||t.allKeys&&!(l in hr.skipKeywords))&&Ni(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function u$(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Ho=T(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.getSchemaRefs=Xe.resolveUrl=Xe.normalizeId=Xe._getFullPath=Xe.getFullPath=Xe.inlineRef=void 0;var l$=X(),d$=Kl(),p$=zg(),f$=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function m$(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Jl(t):e?Ng(t)<=e:!1}Xe.inlineRef=m$;var h$=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Jl(t){for(let e in t){if(h$.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Jl)||typeof r=="object"&&Jl(r))return!0}return!1}function Ng(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!f$.has(r)&&(typeof t[r]=="object"&&(0,l$.eachItem)(t[r],n=>e+=Ng(n)),e===1/0))return 1/0}return e}function Ag(t,e="",r){r!==!1&&(e=zn(e));let n=t.parse(e);return jg(t,n)}Xe.getFullPath=Ag;function jg(t,e){return t.serialize(e).split("#")[0]+"#"}Xe._getFullPath=jg;var g$=/#\/?$/;function zn(t){return t?t.replace(g$,""):""}Xe.normalizeId=zn;function _$(t,e,r){return r=zn(r),t.resolve(e,r)}Xe.resolveUrl=_$;var y$=/^[a-z_][-a-z0-9._]*$/i;function v$(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=zn(t[r]||e),s={"":o},i=Ag(n,o,!1),a={},c=new Set;return p$(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=zn(g?w(g,k):k),c.has(k))throw l(k);c.add(k);let R=this.refs[k];return typeof R=="string"&&(R=this.refs[R]),typeof R=="object"?u(d,R.schema,k):k!==zn(h)&&(k[0]==="#"?(u(d,a[k],k),a[k]=d):this.refs[k]=h),k}function x(k){if(typeof k=="string"){if(!y$.test(k))throw new Error(`invalid anchor "${k}"`);y.call(this,`#${k}`)}}}),a;function u(d,f,m){if(f!==void 0&&!d$(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Xe.getSchemaRefs=v$});var Bo=T(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.getData=gr.KeywordCxt=gr.validateFunctionCode=void 0;var Ug=gg(),Mg=Uo(),Wl=Zl(),Ai=Uo(),x$=bg(),Fo=Pg(),Gl=Og(),z=q(),D=Jt(),k$=Ho(),Gt=X(),qo=Zo();function S$(t){if(Fg(t)&&(Bg(t),qg(t))){E$(t);return}Hg(t,()=>(0,Ug.topBoolOrEmptySchema)(t))}gr.validateFunctionCode=S$;function Hg({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,z._)`${D.default.data}, ${D.default.valCxt}`,n.$async,()=>{t.code((0,z._)`"use strict"; ${Dg(r,o)}`),w$(t,o),t.code(s)}):t.func(e,(0,z._)`${D.default.data}, ${b$(o)}`,n.$async,()=>t.code(Dg(r,o)).code(s))}function b$(t){return(0,z._)`{${D.default.instancePath}="", ${D.default.parentData}, ${D.default.parentDataProperty}, ${D.default.rootData}=${D.default.data}${t.dynamicRef?(0,z._)`, ${D.default.dynamicAnchors}={}`:z.nil}}={}`}function w$(t,e){t.if(D.default.valCxt,()=>{t.var(D.default.instancePath,(0,z._)`${D.default.valCxt}.${D.default.instancePath}`),t.var(D.default.parentData,(0,z._)`${D.default.valCxt}.${D.default.parentData}`),t.var(D.default.parentDataProperty,(0,z._)`${D.default.valCxt}.${D.default.parentDataProperty}`),t.var(D.default.rootData,(0,z._)`${D.default.valCxt}.${D.default.rootData}`),e.dynamicRef&&t.var(D.default.dynamicAnchors,(0,z._)`${D.default.valCxt}.${D.default.dynamicAnchors}`)},()=>{t.var(D.default.instancePath,(0,z._)`""`),t.var(D.default.parentData,(0,z._)`undefined`),t.var(D.default.parentDataProperty,(0,z._)`undefined`),t.var(D.default.rootData,D.default.data),e.dynamicRef&&t.var(D.default.dynamicAnchors,(0,z._)`{}`)})}function E$(t){let{schema:e,opts:r,gen:n}=t;Hg(t,()=>{r.$comment&&e.$comment&&Kg(t),O$(t),n.let(D.default.vErrors,null),n.let(D.default.errors,0),r.unevaluated&&T$(t),Vg(t),z$(t)})}function T$(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,z._)`${r}.evaluated`),e.if((0,z._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,z._)`${t.evaluated}.props`,(0,z._)`undefined`)),e.if((0,z._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,z._)`${t.evaluated}.items`,(0,z._)`undefined`))}function Dg(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,z._)`/*# sourceURL=${r} */`:z.nil}function $$(t,e){if(Fg(t)&&(Bg(t),qg(t))){P$(t,e);return}(0,Ug.boolOrEmptySchema)(t,e)}function qg({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 Fg(t){return typeof t.schema!="boolean"}function P$(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&Kg(t),C$(t),I$(t);let s=n.const("_errs",D.default.errors);Vg(t,s),n.var(e,(0,z._)`${s} === ${D.default.errors}`)}function Bg(t){(0,Gt.checkUnknownRules)(t),R$(t)}function Vg(t,e){if(t.opts.jtd)return Lg(t,[],!1,e);let r=(0,Mg.getSchemaTypes)(t.schema),n=(0,Mg.coerceAndCheckDataType)(t,r);Lg(t,r,!n,e)}function R$(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Gt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function O$(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Gt.checkStrictMode)(t,"default is ignored in the schema root")}function C$(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,k$.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function I$(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Kg({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,z._)`${D.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,z.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,z._)`${D.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function z$(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,z._)`${D.default.errors} === 0`,()=>e.return(D.default.data),()=>e.throw((0,z._)`new ${o}(${D.default.vErrors})`)):(e.assign((0,z._)`${n}.errors`,D.default.vErrors),s.unevaluated&&N$(t),e.return((0,z._)`${D.default.errors} === 0`))}function N$({gen:t,evaluated:e,props:r,items:n}){r instanceof z.Name&&t.assign((0,z._)`${e}.props`,r),n instanceof z.Name&&t.assign((0,z._)`${e}.items`,n)}function Lg(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Gt.schemaHasRulesButRef)(s,l))){o.block(()=>Gg(t,"$ref",l.all.$ref.definition));return}c.jtd||A$(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Wl.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Ai.checkDataType)(f.type,i,c.strictNumbers)),Zg(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,Ai.reportTypeError)(t)),o.endIf()):Zg(t,f),a||o.if((0,z._)`${D.default.errors} === ${n||0}`))}}function Zg(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,x$.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Wl.shouldUseRule)(n,s)&&Gg(t,s.keyword,s.definition,e.type)})}function A$(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(j$(t,e),t.opts.allowUnionTypes||M$(t,e),D$(t,t.dataTypes))}function j$(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Jg(t.dataTypes,r)||Yl(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),Z$(t,e)}}function M$(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Yl(t,"use allowUnionTypes to allow union type keyword")}function D$(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Wl.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>L$(e,i))&&Yl(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function L$(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Jg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function Z$(t,e){let r=[];for(let n of t.dataTypes)Jg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Yl(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Gt.checkStrictMode)(t,e,t.opts.strictTypes)}var ji=class{constructor(e,r,n){if((0,Fo.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Gt.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",Wg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Fo.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",D.default.errors))}result(e,r,n){this.failResult((0,z.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,z.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,z._)`${r} !== undefined && (${(0,z.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?qo.reportExtraError:qo.reportError)(this,this.def.error,r)}$dataError(){(0,qo.reportError)(this,this.def.$dataError||qo.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,qo.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=z.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=z.nil,r=z.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,z.or)((0,z._)`${o} === undefined`,r)),e!==z.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==z.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,z.or)(i(),a());function i(){if(n.length){if(!(r instanceof z.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,z._)`${(0,Ai.checkDataTypes)(c,r,s.opts.strictNumbers,Ai.DataType.Wrong)}`}return z.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,z._)`!${c}(${r})`}return z.nil}}subschema(e,r){let n=(0,Gl.getSubschema)(this.it,e);(0,Gl.extendSubschemaData)(n,this.it,e),(0,Gl.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return $$(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Gt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Gt.mergeEvaluated.items(o,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(e,z.Name)),!0}};gr.KeywordCxt=ji;function Gg(t,e,r,n){let o=new ji(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Fo.funcKeywordCode)(o,r):"macro"in r?(0,Fo.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Fo.funcKeywordCode)(o,r)}var U$=/^\/(?:[^~]|~0|~1)*$/,H$=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Wg(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return D.default.rootData;if(t[0]==="/"){if(!U$.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=D.default.rootData}else{let u=H$.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,z._)`${s}${(0,z.getProperty)((0,Gt.unescapeJsonPointer)(u))}`,i=(0,z._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}gr.getData=Wg});var Mi=T(Ql=>{"use strict";Object.defineProperty(Ql,"__esModule",{value:!0});var Xl=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Ql.default=Xl});var Vo=T(rd=>{"use strict";Object.defineProperty(rd,"__esModule",{value:!0});var ed=Ho(),td=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,ed.resolveUrl)(e,r,n),this.missingSchema=(0,ed.normalizeId)((0,ed.getFullPath)(e,this.missingRef))}};rd.default=td});var Li=T(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.resolveSchema=pt.getCompilingSchema=pt.resolveRef=pt.compileSchema=pt.SchemaEnv=void 0;var xt=q(),q$=Mi(),en=Jt(),kt=Ho(),Yg=X(),F$=Bo(),Nn=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,kt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};pt.SchemaEnv=Nn;function od(t){let e=Xg.call(this,t);if(e)return e;let r=(0,kt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new xt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:q$.default,code:(0,xt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:en.default.data,parentData:en.default.parentData,parentDataProperty:en.default.parentDataProperty,dataNames:[en.default.data],dataPathArr:[xt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,xt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:xt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,xt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,F$.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(en.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${en.default.self}`,`${en.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof xt.Name?void 0:p,items:h instanceof xt.Name?void 0:h,dynamicProps:p instanceof xt.Name,dynamicItems:h instanceof xt.Name},m.source&&(m.source.evaluated=(0,xt.stringify)(m.evaluated))}return t.validate=m,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}pt.compileSchema=od;function B$(t,e,r){var n;r=(0,kt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=J$.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 Nn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=V$.call(this,s)}pt.resolveRef=B$;function V$(t){return(0,kt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:od.call(this,t)}function Xg(t){for(let e of this._compilations)if(K$(e,t))return e}pt.getCompilingSchema=Xg;function K$(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function J$(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Di.call(this,t,e)}function Di(t,e){let r=this.opts.uriResolver.parse(e),n=(0,kt._getFullPath)(this.opts.uriResolver,r),o=(0,kt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return nd.call(this,r,t);let s=(0,kt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Di.call(this,t,i);return typeof a?.schema!="object"?void 0:nd.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||od.call(this,i),s===(0,kt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,kt.resolveUrl)(this.opts.uriResolver,o,u)),new Nn({schema:a,schemaId:c,root:t,baseId:o})}return nd.call(this,r,i)}}pt.resolveSchema=Di;var G$=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function nd(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,Yg.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!G$.has(a)&&u&&(e=(0,kt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,Yg.schemaHasRulesButRef)(r,this.RULES)){let a=(0,kt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Di.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Nn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var Qg=T((F1,W$)=>{W$.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 id=T((B1,n_)=>{"use strict";var Y$=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),t_=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 sd(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 X$=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function e_(t){return t.length=0,!0}function Q$(t,e,r){if(t.length){let n=sd(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function eP(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=Q$;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=e_}else{o.push(u);continue}}return o.length&&(a===e_?r.zone=o.join(""):i?n.push(o.join("")):n.push(sd(o))),r.address=n.join(""),r}function r_(t){if(tP(t,":")<2)return{host:t,isIPV6:!1};let e=eP(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 tP(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function rP(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 nP(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 oP(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!t_(r)){let n=r_(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}n_.exports={nonSimpleDomain:X$,recomposeAuthority:oP,normalizeComponentEncoding:nP,removeDotSegments:rP,isIPv4:t_,isUUID:Y$,normalizeIPv6:r_,stringArrayToHexStripped:sd}});var c_=T((V1,a_)=>{"use strict";var{isUUID:sP}=id(),iP=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,aP=["http","https","ws","wss","urn","urn:uuid"];function cP(t){return aP.indexOf(t)!==-1}function ad(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 o_(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function s_(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 uP(t){return t.secure=ad(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function lP(t){if((t.port===(ad(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 dP(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(iP);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=cd(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function pP(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=cd(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 fP(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!sP(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function mP(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var i_={scheme:"http",domainHost:!0,parse:o_,serialize:s_},hP={scheme:"https",domainHost:i_.domainHost,parse:o_,serialize:s_},Zi={scheme:"ws",domainHost:!0,parse:uP,serialize:lP},gP={scheme:"wss",domainHost:Zi.domainHost,parse:Zi.parse,serialize:Zi.serialize},_P={scheme:"urn",parse:dP,serialize:pP,skipNormalize:!0},yP={scheme:"urn:uuid",parse:fP,serialize:mP,skipNormalize:!0},Ui={http:i_,https:hP,ws:Zi,wss:gP,urn:_P,"urn:uuid":yP};Object.setPrototypeOf(Ui,null);function cd(t){return t&&(Ui[t]||Ui[t.toLowerCase()])||void 0}a_.exports={wsIsSecure:ad,SCHEMES:Ui,isValidSchemeName:cP,getSchemeHandler:cd}});var d_=T((K1,qi)=>{"use strict";var{normalizeIPv6:vP,removeDotSegments:Ko,recomposeAuthority:xP,normalizeComponentEncoding:Hi,isIPv4:kP,nonSimpleDomain:SP}=id(),{SCHEMES:bP,getSchemeHandler:u_}=c_();function wP(t,e){return typeof t=="string"?t=Nt(Wt(t,e),e):typeof t=="object"&&(t=Wt(Nt(t,e),e)),t}function EP(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=l_(Wt(t,n),Wt(e,n),n,!0);return n.skipEscape=!0,Nt(o,n)}function l_(t,e,r,n){let o={};return n||(t=Wt(Nt(t,r),r),e=Wt(Nt(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Ko(e.path||""),o.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Ko(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Ko(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?o.path="/"+e.path:t.path?o.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:o.path=e.path,o.path=Ko(o.path)),o.query=e.query):(o.path=t.path,e.query!==void 0?o.query=e.query:o.query=t.query),o.userinfo=t.userinfo,o.host=t.host,o.port=t.port),o.scheme=t.scheme),o.fragment=e.fragment,o}function TP(t,e,r){return typeof t=="string"?(t=unescape(t),t=Nt(Hi(Wt(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Nt(Hi(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Nt(Hi(Wt(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Nt(Hi(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Nt(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),o=[],s=u_(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=xP(r);if(i!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(i),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(a=Ko(a)),i===void 0&&a[0]==="/"&&a[1]==="/"&&(a="/%2F"+a.slice(2)),o.push(a)}return r.query!==void 0&&o.push("?",r.query),r.fragment!==void 0&&o.push("#",r.fragment),o.join("")}var $P=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Wt(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match($P);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(kP(n.host)===!1){let c=vP(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=u_(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&SP(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 ud={SCHEMES:bP,normalize:wP,resolve:EP,resolveComponent:l_,equal:TP,serialize:Nt,parse:Wt};qi.exports=ud;qi.exports.default=ud;qi.exports.fastUri=ud});var f_=T(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});var p_=d_();p_.code='require("ajv/dist/runtime/uri").default';ld.default=p_});var k_=T(Ie=>{"use strict";Object.defineProperty(Ie,"__esModule",{value:!0});Ie.CodeGen=Ie.Name=Ie.nil=Ie.stringify=Ie.str=Ie._=Ie.KeywordCxt=void 0;var PP=Bo();Object.defineProperty(Ie,"KeywordCxt",{enumerable:!0,get:function(){return PP.KeywordCxt}});var An=q();Object.defineProperty(Ie,"_",{enumerable:!0,get:function(){return An._}});Object.defineProperty(Ie,"str",{enumerable:!0,get:function(){return An.str}});Object.defineProperty(Ie,"stringify",{enumerable:!0,get:function(){return An.stringify}});Object.defineProperty(Ie,"nil",{enumerable:!0,get:function(){return An.nil}});Object.defineProperty(Ie,"Name",{enumerable:!0,get:function(){return An.Name}});Object.defineProperty(Ie,"CodeGen",{enumerable:!0,get:function(){return An.CodeGen}});var RP=Mi(),y_=Vo(),OP=Ll(),Jo=Li(),CP=q(),Go=Ho(),Fi=Uo(),pd=X(),m_=Qg(),IP=f_(),v_=(t,e)=>new RegExp(t,e);v_.code="new RegExp";var zP=["removeAdditional","useDefaults","coerceTypes"],NP=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),AP={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."},jP={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},h_=200;function MP(t){var e,r,n,o,s,i,a,c,u,l,d,f,m,p,h,g,y,x,k,w,R,ie,ae,tt,Zt;let fe=t.strict,er=(e=t.code)===null||e===void 0?void 0:e.optimize,Le=er===!0||er===void 0?1:er||0,ws=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:v_,Aa=(o=t.uriResolver)!==null&&o!==void 0?o:IP.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:fe)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:fe)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:fe)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:fe)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:fe)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:Le,regExp:ws}:{optimize:Le,regExp:ws},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:h_,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:h_,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:(R=t.addUsedSchema)!==null&&R!==void 0?R:!0,validateSchema:(ie=t.validateSchema)!==null&&ie!==void 0?ie:!0,validateFormats:(ae=t.validateFormats)!==null&&ae!==void 0?ae:!0,unicodeRegExp:(tt=t.unicodeRegExp)!==null&&tt!==void 0?tt:!0,int32range:(Zt=t.int32range)!==null&&Zt!==void 0?Zt:!0,uriResolver:Aa}}var Wo=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...MP(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new CP.ValueScope({scope:{},prefixes:NP,es5:r,lines:n}),this.logger=qP(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,OP.getRules)(),g_.call(this,AP,e,"NOT SUPPORTED"),g_.call(this,jP,e,"DEPRECATED","warn"),this._metaOpts=UP.call(this),e.formats&&LP.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&ZP.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),DP.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=m_;n==="id"&&(o={...m_},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 y_.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),i.call(this,l)}}function a({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,o=this.opts.validateSchema){if(Array.isArray(e)){for(let i of e)this.addSchema(i,void 0,n,o);return this}let s;if(typeof e=="object"){let{schemaId:i}=this.opts;if(s=e[i],s!==void 0&&typeof s!="string")throw new Error(`schema ${i} must be string`)}return r=(0,Go.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,o,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let o=this.validate(n,e);if(!o&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return o}getSchema(e){let r;for(;typeof(r=__.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Jo.SchemaEnv({schema:{},schemaId:n});if(r=Jo.resolveSchema.call(this,o,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=__.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,Go.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(BP.call(this,n,r),!r)return(0,pd.eachItem)(n,s=>dd.call(this,s)),this;KP.call(this,r);let o={...r,type:(0,Fi.getJSONTypes)(r.type),schemaType:(0,Fi.getJSONTypes)(r.schemaType)};return(0,pd.eachItem)(n,o.type.length===0?s=>dd.call(this,s,o):s=>o.type.forEach(i=>dd.call(this,s,o,i))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let o=n.rules.findIndex(s=>s.keyword===e);o>=0&&n.rules.splice(o,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(o=>`${n}${o.instancePath} ${o.message}`).reduce((o,s)=>o+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let o of r){let s=o.split("/").slice(1),i=e;for(let a of s)i=i[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:u}=c.definition,l=i[a];u&&l&&(i[a]=x_(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let o=e[n];(!r||r.test(n))&&(typeof o=="string"?delete e[n]:o&&!o.meta&&(this._cache.delete(o.schema),delete e[n]))}}_addSchema(e,r,n,o=this.opts.validateSchema,s=this.opts.addUsedSchema){let i,{schemaId:a}=this.opts;if(typeof e=="object")i=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,Go.normalizeId)(i||n);let u=Go.getSchemaRefs.call(this,e,n);return c=new Jo.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),o&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):Jo.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{Jo.compileSchema.call(this,e)}finally{this.opts=r}}};Wo.ValidationError=RP.default;Wo.MissingRefError=y_.default;Ie.default=Wo;function g_(t,e,r,n="error"){for(let o in t){let s=o;s in e&&this.logger[n](`${r}: option ${o}. ${t[s]}`)}}function __(t){return t=(0,Go.normalizeId)(t),this.schemas[t]||this.refs[t]}function DP(){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 LP(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function ZP(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 UP(){let t={...this.opts};for(let e of zP)delete t[e];return t}var HP={log(){},warn(){},error(){}};function qP(t){if(t===!1)return HP;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 FP=/^[a-z_$][a-z0-9_$:-]*$/i;function BP(t,e){let{RULES:r}=this;if((0,pd.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!FP.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 dd(t,e,r){var n;let o=e?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(i||(i={type:r,rules:[]},s.rules.push(i)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,Fi.getJSONTypes)(e.type),schemaType:(0,Fi.getJSONTypes)(e.schemaType)}};e.before?VP.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 VP(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 KP(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=x_(e)),t.validateSchema=this.compile(e,!0))}var JP={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function x_(t){return{anyOf:[t,JP]}}});var S_=T(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});var GP={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};fd.default=GP});var T_=T(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.callRef=tn.getValidate=void 0;var WP=Vo(),b_=dt(),Qe=q(),jn=Jt(),w_=Li(),Bi=X(),YP={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 WP.default(n.opts.uriResolver,o,r);if(l instanceof w_.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return Vi(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Vi(t,(0,Qe._)`${p}.validate`,u,u.$async)}function f(p){let h=E_(t,p);Vi(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,Qe.stringify)(p)}:{ref:p}),g=e.name("valid"),y=t.subschema({schema:p,dataTypes:[],schemaPath:Qe.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(y),t.ok(g)}}};function E_(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Qe._)`${r.scopeValue("wrapper",{ref:e})}.validate`}tn.getValidate=E_;function Vi(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?jn.default.this:Qe.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,Qe._)`await ${(0,b_.callValidateCode)(t,e,u)}`),m(e),i||o.assign(p,!0)},h=>{o.if((0,Qe._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),f(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,b_.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,Qe._)`${p}.errors`;o.assign(jn.default.vErrors,(0,Qe._)`${jn.default.vErrors} === null ? ${h} : ${jn.default.vErrors}.concat(${h})`),o.assign(jn.default.errors,(0,Qe._)`${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=Bi.mergeEvaluated.props(o,g.props,s.props));else{let y=o.var("props",(0,Qe._)`${p}.evaluated.props`);s.props=Bi.mergeEvaluated.props(o,y,s.props,Qe.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Bi.mergeEvaluated.items(o,g.items,s.items));else{let y=o.var("items",(0,Qe._)`${p}.evaluated.items`);s.items=Bi.mergeEvaluated.items(o,y,s.items,Qe.Name)}}}tn.callRef=Vi;tn.default=YP});var $_=T(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});var XP=S_(),QP=T_(),e0=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",XP.default,QP.default];md.default=e0});var P_=T(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var Ki=q(),_r=Ki.operators,Ji={maximum:{okStr:"<=",ok:_r.LTE,fail:_r.GT},minimum:{okStr:">=",ok:_r.GTE,fail:_r.LT},exclusiveMaximum:{okStr:"<",ok:_r.LT,fail:_r.GTE},exclusiveMinimum:{okStr:">",ok:_r.GT,fail:_r.LTE}},t0={message:({keyword:t,schemaCode:e})=>(0,Ki.str)`must be ${Ji[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ki._)`{comparison: ${Ji[t].okStr}, limit: ${e}}`},r0={keyword:Object.keys(Ji),type:"number",schemaType:"number",$data:!0,error:t0,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Ki._)`${r} ${Ji[e].fail} ${n} || isNaN(${r})`)}};hd.default=r0});var R_=T(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var Yo=q(),n0={message:({schemaCode:t})=>(0,Yo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Yo._)`{multipleOf: ${t}}`},o0={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:n0,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Yo._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Yo._)`${i} !== parseInt(${i})`;t.fail$data((0,Yo._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};gd.default=o0});var C_=T(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});function O_(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}_d.default=O_;O_.code='require("ajv/dist/runtime/ucs2length").default'});var I_=T(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var rn=q(),s0=X(),i0=C_(),a0={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,rn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,rn._)`{limit: ${t}}`},c0={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:a0,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?rn.operators.GT:rn.operators.LT,i=o.opts.unicode===!1?(0,rn._)`${r}.length`:(0,rn._)`${(0,s0.useFunc)(t.gen,i0.default)}(${r})`;t.fail$data((0,rn._)`${i} ${s} ${n}`)}};yd.default=c0});var z_=T(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var u0=dt(),l0=X(),Mn=q(),d0={message:({schemaCode:t})=>(0,Mn.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Mn._)`{pattern: ${t}}`},p0={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:d0,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=i.opts.code,u=c.code==="new RegExp"?(0,Mn._)`new RegExp`:(0,l0.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Mn._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Mn._)`!${l}`)}else{let c=(0,u0.usePattern)(t,o);t.fail$data((0,Mn._)`!${c}.test(${r})`)}}};vd.default=p0});var N_=T(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var Xo=q(),f0={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Xo.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Xo._)`{limit: ${t}}`},m0={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:f0,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Xo.operators.GT:Xo.operators.LT;t.fail$data((0,Xo._)`Object.keys(${r}).length ${o} ${n}`)}};xd.default=m0});var A_=T(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});var Qo=dt(),es=q(),h0=X(),g0={message:({params:{missingProperty:t}})=>(0,es.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,es._)`{missingProperty: ${t}}`},_0={keyword:"required",type:"object",schemaType:"array",$data:!0,error:g0,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,h0.checkStrictMode)(i,y,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(es.nil,d);else for(let m of r)(0,Qo.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,Qo.checkMissingProp)(t,r,m)),(0,Qo.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,Qo.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,Qo.propertyInData)(e,o,m,a.ownProperties)),e.if((0,es.not)(p),()=>{t.error(),e.break()})},es.nil)}}};kd.default=_0});var j_=T(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var ts=q(),y0={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,ts.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,ts._)`{limit: ${t}}`},v0={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:y0,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?ts.operators.GT:ts.operators.LT;t.fail$data((0,ts._)`${r}.length ${o} ${n}`)}};Sd.default=v0});var Gi=T(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var M_=Kl();M_.code='require("ajv/dist/runtime/equal").default';bd.default=M_});var D_=T(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var wd=Uo(),ze=q(),x0=X(),k0=Gi(),S0={message:({params:{i:t,j:e}})=>(0,ze.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,ze._)`{i: ${t}, j: ${e}}`},b0={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:S0,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,wd.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,ze._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,ze._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,ze._)`${p} > 1`,()=>(d()?f:m)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,h){let g=e.name("item"),y=(0,wd.checkDataTypes)(u,g,a.opts.strictNumbers,wd.DataType.Wrong),x=e.const("indices",(0,ze._)`{}`);e.for((0,ze._)`;${p}--;`,()=>{e.let(g,(0,ze._)`${r}[${p}]`),e.if(y,(0,ze._)`continue`),u.length>1&&e.if((0,ze._)`typeof ${g} == "string"`,(0,ze._)`${g} += "_"`),e.if((0,ze._)`typeof ${x}[${g}] == "number"`,()=>{e.assign(h,(0,ze._)`${x}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,ze._)`${x}[${g}] = ${p}`)})}function m(p,h){let g=(0,x0.useFunc)(e,k0.default),y=e.name("outer");e.label(y).for((0,ze._)`;${p}--;`,()=>e.for((0,ze._)`${h} = ${p}; ${h}--;`,()=>e.if((0,ze._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(y)})))}}};Ed.default=b0});var L_=T($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var Td=q(),w0=X(),E0=Gi(),T0={message:"must be equal to constant",params:({schemaCode:t})=>(0,Td._)`{allowedValue: ${t}}`},$0={keyword:"const",$data:!0,error:T0,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,Td._)`!${(0,w0.useFunc)(e,E0.default)}(${r}, ${o})`):t.fail((0,Td._)`${s} !== ${r}`)}};$d.default=$0});var Z_=T(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var rs=q(),P0=X(),R0=Gi(),O0={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,rs._)`{allowedValues: ${t}}`},C0={keyword:"enum",schemaType:"array",$data:!0,error:O0,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,P0.useFunc)(e,R0.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,rs.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,rs._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,rs._)`${u()}(${r}, ${m}[${p}])`:(0,rs._)`${r} === ${h}`}}};Pd.default=C0});var U_=T(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var I0=P_(),z0=R_(),N0=I_(),A0=z_(),j0=N_(),M0=A_(),D0=j_(),L0=D_(),Z0=L_(),U0=Z_(),H0=[I0.default,z0.default,N0.default,A0.default,j0.default,M0.default,D0.default,L0.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Z0.default,U0.default];Rd.default=H0});var Cd=T(ns=>{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.validateAdditionalItems=void 0;var nn=q(),Od=X(),q0={message:({params:{len:t}})=>(0,nn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,nn._)`{limit: ${t}}`},F0={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:q0,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Od.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}H_(t,n)}};function H_(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,nn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,nn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,Od.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,nn._)`${a} <= ${e.length}`);r.if((0,nn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:Od.Type.Num},u),i.allErrors||r.if((0,nn.not)(u),()=>r.break())})}}ns.validateAdditionalItems=H_;ns.default=F0});var Id=T(os=>{"use strict";Object.defineProperty(os,"__esModule",{value:!0});os.validateTuple=void 0;var q_=q(),Wi=X(),B0=dt(),V0={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return F_(t,"additionalItems",e);r.items=!0,!(0,Wi.alwaysValidSchema)(r,e)&&t.ok((0,B0.validateArray)(t))}};function F_(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;l(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Wi.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,q_._)`${s}.length`);r.forEach((d,f)=>{(0,Wi.alwaysValidSchema)(a,d)||(n.if((0,q_._)`${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,Wi.checkStrictMode)(a,g,f.strictTuples)}}}os.validateTuple=F_;os.default=V0});var B_=T(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var K0=Id(),J0={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,K0.validateTuple)(t,"items")};zd.default=J0});var K_=T(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var V_=q(),G0=X(),W0=dt(),Y0=Cd(),X0={message:({params:{len:t}})=>(0,V_.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,V_._)`{limit: ${t}}`},Q0={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:X0,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,G0.alwaysValidSchema)(n,e)&&(o?(0,Y0.validateAdditionalItems)(t,o):t.ok((0,W0.validateArray)(t)))}};Nd.default=Q0});var J_=T(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});var ft=q(),Yi=X(),eR={message:({params:{min:t,max:e}})=>e===void 0?(0,ft.str)`must contain at least ${t} valid item(s)`:(0,ft.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ft._)`{minContains: ${t}}`:(0,ft._)`{minContains: ${t}, maxContains: ${e}}`},tR={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:eR,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,i,a,{minContains:c,maxContains:u}=n;s.opts.next?(i=c===void 0?1:c,a=u):i=1;let l=e.const("len",(0,ft._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Yi.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Yi.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Yi.alwaysValidSchema)(s,r)){let h=(0,ft._)`${l} >= ${i}`;a!==void 0&&(h=(0,ft._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?m(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,ft._)`${o}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),g=e.let("count",0);m(h,()=>e.if(h,()=>p(g)))}function m(h,g){e.forRange("i",0,l,y=>{t.subschema({keyword:"contains",dataProp:y,dataPropType:Yi.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,ft._)`${h}++`),a===void 0?e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,ft._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Ad.default=tR});var Y_=T(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.validateSchemaDeps=At.validatePropertyDeps=At.error=void 0;var jd=q(),rR=X(),ss=dt();At.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,jd.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,jd._)`{property: ${t},
6
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,U._)`[${o}]`)}}}function qT({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,U._)`${e} !== undefined`,()=>t.assign((0,U._)`${e}[${r}]`,n))}function ql(t,e,r,n=zn.Correct){let o=n===zn.Correct?U.operators.EQ:U.operators.NEQ,s;switch(t){case"null":return(0,U._)`${e} ${o} null`;case"array":s=(0,U._)`Array.isArray(${e})`;break;case"object":s=(0,U._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,U._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,U._)`typeof ${e} ${o} ${t}`}return n===zn.Correct?s:(0,U.not)(s);function i(a=U.nil){return(0,U.and)((0,U._)`typeof ${e} == "number"`,a,r?(0,U._)`isFinite(${e})`:U.nil)}}De.checkDataType=ql;function Fl(t,e,r,n){if(t.length===1)return ql(t[0],e,r,n);let o,s=(0,wg.toHash)(t);if(s.array&&s.object){let i=(0,U._)`typeof ${e} != "object"`;o=s.null?i:(0,U._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=U.nil;s.number&&delete s.integer;for(let i in s)o=(0,U.and)(o,ql(i,e,r,n));return o}De.checkDataTypes=Fl;var FT={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,U._)`{type: ${t}}`:(0,U._)`{type: ${e}}`};function Bl(t){let e=BT(t);(0,DT.reportError)(e,FT)}De.reportTypeError=Bl;function BT(t){let{gen:e,data:r,schema:n}=t,o=(0,wg.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Pg=T(Ai=>{"use strict";Object.defineProperty(Ai,"__esModule",{value:!0});Ai.assignDefaults=void 0;var Nn=q(),VT=X();function KT(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)$g(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>$g(t,s,o.default))}Ai.assignDefaults=KT;function $g(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Nn._)`${s}${(0,Nn.getProperty)(e)}`;if(o){(0,VT.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Nn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Nn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Nn._)`${a} = ${(0,Nn.stringify)(r)}`)}});var dt=T(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});ne.validateUnion=ne.validateArray=ne.usePattern=ne.callValidateCode=ne.schemaProperties=ne.allSchemaProperties=ne.noPropertyInData=ne.propertyInData=ne.isOwnProperty=ne.hasPropFunc=ne.reportMissingProp=ne.checkMissingProp=ne.checkReportMissingProp=void 0;var de=q(),Vl=X(),fr=Jt(),JT=X();function GT(t,e){let{gen:r,data:n,it:o}=t;r.if(Jl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,de._)`${e}`},!0),t.error()})}ne.checkReportMissingProp=GT;function WT({gen:t,data:e,it:{opts:r}},n,o){return(0,de.or)(...n.map(s=>(0,de.and)(Jl(t,e,s,r.ownProperties),(0,de._)`${o} = ${s}`)))}ne.checkMissingProp=WT;function YT(t,e){t.setParams({missingProperty:e},!0),t.error()}ne.reportMissingProp=YT;function Rg(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,de._)`Object.prototype.hasOwnProperty`})}ne.hasPropFunc=Rg;function Kl(t,e,r){return(0,de._)`${Rg(t)}.call(${e}, ${r})`}ne.isOwnProperty=Kl;function XT(t,e,r,n){let o=(0,de._)`${e}${(0,de.getProperty)(r)} !== undefined`;return n?(0,de._)`${o} && ${Kl(t,e,r)}`:o}ne.propertyInData=XT;function Jl(t,e,r,n){let o=(0,de._)`${e}${(0,de.getProperty)(r)} === undefined`;return n?(0,de.or)(o,(0,de.not)(Kl(t,e,r))):o}ne.noPropertyInData=Jl;function Og(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ne.allSchemaProperties=Og;function QT(t,e){return Og(e).filter(r=>!(0,Vl.alwaysValidSchema)(t,e[r]))}ne.schemaProperties=QT;function e$({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,de._)`${t}, ${e}, ${n}${o}`:e,d=[[fr.default.instancePath,(0,de.strConcat)(fr.default.instancePath,s)],[fr.default.parentData,i.parentData],[fr.default.parentDataProperty,i.parentDataProperty],[fr.default.rootData,fr.default.rootData]];i.opts.dynamicRef&&d.push([fr.default.dynamicAnchors,fr.default.dynamicAnchors]);let f=(0,de._)`${l}, ${r.object(...d)}`;return c!==de.nil?(0,de._)`${a}.call(${c}, ${f})`:(0,de._)`${a}(${f})`}ne.callValidateCode=e$;var t$=(0,de._)`new RegExp`;function r$({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,de._)`${o.code==="new RegExp"?t$:(0,JT.useFunc)(t,o)}(${r}, ${n})`})}ne.usePattern=r$;function n$(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,de._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Vl.Type.Num},s),e.if((0,de.not)(s),a)})}}ne.validateArray=n$;function o$(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,Vl.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,de._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,de.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}ne.validateUnion=o$});var zg=T(It=>{"use strict";Object.defineProperty(It,"__esModule",{value:!0});It.validateKeywordUsage=It.validSchemaType=It.funcKeywordCode=It.macroKeywordCode=void 0;var qe=q(),en=Jt(),s$=dt(),i$=Ho();function a$(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Ig(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:qe.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}It.macroKeywordCode=a$;function c$(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;l$(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Ig(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&&Cg(t),g(()=>t.error());else{let y=e.async?m():p();e.modifying&&Cg(t),g(()=>u$(t,y))}}function m(){let y=n.let("ruleErrs",null);return n.try(()=>h((0,qe._)`await `),x=>n.assign(d,!1).if((0,qe._)`${x} instanceof ${c.ValidationError}`,()=>n.assign(y,(0,qe._)`${x}.errors`),()=>n.throw(x))),y}function p(){let y=(0,qe._)`${l}.errors`;return n.assign(y,null),h(qe.nil),y}function h(y=e.async?(0,qe._)`await `:qe.nil){let x=c.opts.passContext?en.default.this:en.default.self,S=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,qe._)`${y}${(0,s$.callValidateCode)(t,l,x,S)}`,e.modifying)}function g(y){var x;n.if((0,qe.not)((x=e.valid)!==null&&x!==void 0?x:d),y)}}It.funcKeywordCode=c$;function Cg(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,qe._)`${n.parentData}[${n.parentDataProperty}]`))}function u$(t,e){let{gen:r}=t;r.if((0,qe._)`Array.isArray(${e})`,()=>{r.assign(en.default.vErrors,(0,qe._)`${en.default.vErrors} === null ? ${e} : ${en.default.vErrors}.concat(${e})`).assign(en.default.errors,(0,qe._)`${en.default.vErrors}.length`),(0,i$.extendErrors)(t)},()=>t.error())}function l$({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Ig(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,qe.stringify)(r)})}function d$(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}It.validSchemaType=d$;function p$({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}It.validateKeywordUsage=p$});var Ag=T(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.extendSubschemaMode=mr.extendSubschemaData=mr.getSubschema=void 0;var zt=q(),Ng=X();function f$(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,Ng.escapeFragment)(r)}`}}if(n!==void 0){if(o===void 0||s===void 0||i===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:i,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}mr.getSubschema=f$;function m$(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,Ng.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,zt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof zt.Name?o:a.let("data",o,!0);c(u),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}mr.extendSubschemaData=m$;function h$(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:s}){n!==void 0&&(t.compositeRule=n),o!==void 0&&(t.createErrors=o),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=r}mr.extendSubschemaMode=h$});var Gl=T((F1,jg)=>{"use strict";jg.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 Dg=T((B1,Mg)=>{"use strict";var hr=Mg.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};ji(e,n,o,t,"",t)};hr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};hr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};hr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};hr.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function ji(t,e,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in hr.arrayKeywords)for(var f=0;f<d.length;f++)ji(t,e,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in hr.propsKeywords){if(d&&typeof d=="object")for(var m in d)ji(t,e,r,d[m],o+"/"+l+"/"+g$(m),s,o,l,n,m)}else(l in hr.keywords||t.allKeys&&!(l in hr.skipKeywords))&&ji(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function g$(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Fo=T(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.getSchemaRefs=Xe.resolveUrl=Xe.normalizeId=Xe._getFullPath=Xe.getFullPath=Xe.inlineRef=void 0;var _$=X(),y$=Gl(),v$=Dg(),x$=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function S$(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Wl(t):e?Lg(t)<=e:!1}Xe.inlineRef=S$;var k$=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Wl(t){for(let e in t){if(k$.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Wl)||typeof r=="object"&&Wl(r))return!0}return!1}function Lg(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!x$.has(r)&&(typeof t[r]=="object"&&(0,_$.eachItem)(t[r],n=>e+=Lg(n)),e===1/0))return 1/0}return e}function Zg(t,e="",r){r!==!1&&(e=An(e));let n=t.parse(e);return Ug(t,n)}Xe.getFullPath=Zg;function Ug(t,e){return t.serialize(e).split("#")[0]+"#"}Xe._getFullPath=Ug;var b$=/#\/?$/;function An(t){return t?t.replace(b$,""):""}Xe.normalizeId=An;function w$(t,e,r){return r=An(r),t.resolve(e,r)}Xe.resolveUrl=w$;var E$=/^[a-z_][-a-z0-9._]*$/i;function T$(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=An(t[r]||e),s={"":o},i=Zg(n,o,!1),a={},c=new Set;return v$(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(S){let w=this.opts.uriResolver.resolve;if(S=An(g?w(g,S):S),c.has(S))throw l(S);c.add(S);let R=this.refs[S];return typeof R=="string"&&(R=this.refs[R]),typeof R=="object"?u(d,R.schema,S):S!==An(h)&&(S[0]==="#"?(u(d,a[S],S),a[S]=d):this.refs[S]=h),S}function x(S){if(typeof S=="string"){if(!E$.test(S))throw new Error(`invalid anchor "${S}"`);y.call(this,`#${S}`)}}}),a;function u(d,f,m){if(f!==void 0&&!y$(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Xe.getSchemaRefs=T$});var Ko=T(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.getData=gr.KeywordCxt=gr.validateFunctionCode=void 0;var Vg=Sg(),Hg=qo(),Xl=Hl(),Mi=qo(),$$=Pg(),Vo=zg(),Yl=Ag(),z=q(),D=Jt(),P$=Fo(),Gt=X(),Bo=Ho();function R$(t){if(Gg(t)&&(Wg(t),Jg(t))){I$(t);return}Kg(t,()=>(0,Vg.topBoolOrEmptySchema)(t))}gr.validateFunctionCode=R$;function Kg({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,z._)`${D.default.data}, ${D.default.valCxt}`,n.$async,()=>{t.code((0,z._)`"use strict"; ${qg(r,o)}`),C$(t,o),t.code(s)}):t.func(e,(0,z._)`${D.default.data}, ${O$(o)}`,n.$async,()=>t.code(qg(r,o)).code(s))}function O$(t){return(0,z._)`{${D.default.instancePath}="", ${D.default.parentData}, ${D.default.parentDataProperty}, ${D.default.rootData}=${D.default.data}${t.dynamicRef?(0,z._)`, ${D.default.dynamicAnchors}={}`:z.nil}}={}`}function C$(t,e){t.if(D.default.valCxt,()=>{t.var(D.default.instancePath,(0,z._)`${D.default.valCxt}.${D.default.instancePath}`),t.var(D.default.parentData,(0,z._)`${D.default.valCxt}.${D.default.parentData}`),t.var(D.default.parentDataProperty,(0,z._)`${D.default.valCxt}.${D.default.parentDataProperty}`),t.var(D.default.rootData,(0,z._)`${D.default.valCxt}.${D.default.rootData}`),e.dynamicRef&&t.var(D.default.dynamicAnchors,(0,z._)`${D.default.valCxt}.${D.default.dynamicAnchors}`)},()=>{t.var(D.default.instancePath,(0,z._)`""`),t.var(D.default.parentData,(0,z._)`undefined`),t.var(D.default.parentDataProperty,(0,z._)`undefined`),t.var(D.default.rootData,D.default.data),e.dynamicRef&&t.var(D.default.dynamicAnchors,(0,z._)`{}`)})}function I$(t){let{schema:e,opts:r,gen:n}=t;Kg(t,()=>{r.$comment&&e.$comment&&Xg(t),M$(t),n.let(D.default.vErrors,null),n.let(D.default.errors,0),r.unevaluated&&z$(t),Yg(t),Z$(t)})}function z$(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,z._)`${r}.evaluated`),e.if((0,z._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,z._)`${t.evaluated}.props`,(0,z._)`undefined`)),e.if((0,z._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,z._)`${t.evaluated}.items`,(0,z._)`undefined`))}function qg(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,z._)`/*# sourceURL=${r} */`:z.nil}function N$(t,e){if(Gg(t)&&(Wg(t),Jg(t))){A$(t,e);return}(0,Vg.boolOrEmptySchema)(t,e)}function Jg({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 Gg(t){return typeof t.schema!="boolean"}function A$(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&Xg(t),D$(t),L$(t);let s=n.const("_errs",D.default.errors);Yg(t,s),n.var(e,(0,z._)`${s} === ${D.default.errors}`)}function Wg(t){(0,Gt.checkUnknownRules)(t),j$(t)}function Yg(t,e){if(t.opts.jtd)return Fg(t,[],!1,e);let r=(0,Hg.getSchemaTypes)(t.schema),n=(0,Hg.coerceAndCheckDataType)(t,r);Fg(t,r,!n,e)}function j$(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Gt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function M$(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Gt.checkStrictMode)(t,"default is ignored in the schema root")}function D$(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,P$.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function L$(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Xg({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,z._)`${D.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,z.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,z._)`${D.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function Z$(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,z._)`${D.default.errors} === 0`,()=>e.return(D.default.data),()=>e.throw((0,z._)`new ${o}(${D.default.vErrors})`)):(e.assign((0,z._)`${n}.errors`,D.default.vErrors),s.unevaluated&&U$(t),e.return((0,z._)`${D.default.errors} === 0`))}function U$({gen:t,evaluated:e,props:r,items:n}){r instanceof z.Name&&t.assign((0,z._)`${e}.props`,r),n instanceof z.Name&&t.assign((0,z._)`${e}.items`,n)}function Fg(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Gt.schemaHasRulesButRef)(s,l))){o.block(()=>e_(t,"$ref",l.all.$ref.definition));return}c.jtd||H$(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Xl.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Mi.checkDataType)(f.type,i,c.strictNumbers)),Bg(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,Mi.reportTypeError)(t)),o.endIf()):Bg(t,f),a||o.if((0,z._)`${D.default.errors} === ${n||0}`))}}function Bg(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,$$.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Xl.shouldUseRule)(n,s)&&e_(t,s.keyword,s.definition,e.type)})}function H$(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(q$(t,e),t.opts.allowUnionTypes||F$(t,e),B$(t,t.dataTypes))}function q$(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Qg(t.dataTypes,r)||Ql(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),K$(t,e)}}function F$(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Ql(t,"use allowUnionTypes to allow union type keyword")}function B$(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Xl.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>V$(e,i))&&Ql(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function V$(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Qg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function K$(t,e){let r=[];for(let n of t.dataTypes)Qg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Ql(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Gt.checkStrictMode)(t,e,t.opts.strictTypes)}var Di=class{constructor(e,r,n){if((0,Vo.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Gt.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",t_(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Vo.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",D.default.errors))}result(e,r,n){this.failResult((0,z.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,z.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,z._)`${r} !== undefined && (${(0,z.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?Bo.reportExtraError:Bo.reportError)(this,this.def.error,r)}$dataError(){(0,Bo.reportError)(this,this.def.$dataError||Bo.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Bo.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=z.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=z.nil,r=z.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,z.or)((0,z._)`${o} === undefined`,r)),e!==z.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==z.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,z.or)(i(),a());function i(){if(n.length){if(!(r instanceof z.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,z._)`${(0,Mi.checkDataTypes)(c,r,s.opts.strictNumbers,Mi.DataType.Wrong)}`}return z.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,z._)`!${c}(${r})`}return z.nil}}subschema(e,r){let n=(0,Yl.getSubschema)(this.it,e);(0,Yl.extendSubschemaData)(n,this.it,e),(0,Yl.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return N$(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Gt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Gt.mergeEvaluated.items(o,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(e,z.Name)),!0}};gr.KeywordCxt=Di;function e_(t,e,r,n){let o=new Di(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Vo.funcKeywordCode)(o,r):"macro"in r?(0,Vo.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Vo.funcKeywordCode)(o,r)}var J$=/^\/(?:[^~]|~0|~1)*$/,G$=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function t_(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return D.default.rootData;if(t[0]==="/"){if(!J$.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=D.default.rootData}else{let u=G$.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,z._)`${s}${(0,z.getProperty)((0,Gt.unescapeJsonPointer)(u))}`,i=(0,z._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}gr.getData=t_});var Li=T(td=>{"use strict";Object.defineProperty(td,"__esModule",{value:!0});var ed=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};td.default=ed});var Jo=T(od=>{"use strict";Object.defineProperty(od,"__esModule",{value:!0});var rd=Fo(),nd=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,rd.resolveUrl)(e,r,n),this.missingSchema=(0,rd.normalizeId)((0,rd.getFullPath)(e,this.missingRef))}};od.default=nd});var Ui=T(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.resolveSchema=pt.getCompilingSchema=pt.resolveRef=pt.compileSchema=pt.SchemaEnv=void 0;var xt=q(),W$=Li(),tn=Jt(),St=Fo(),r_=X(),Y$=Ko(),jn=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,St.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};pt.SchemaEnv=jn;function id(t){let e=n_.call(this,t);if(e)return e;let r=(0,St.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new xt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:W$.default,code:(0,xt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:tn.default.data,parentData:tn.default.parentData,parentDataProperty:tn.default.parentDataProperty,dataNames:[tn.default.data],dataPathArr:[xt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,xt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:xt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,xt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,Y$.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(tn.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${tn.default.self}`,`${tn.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof xt.Name?void 0:p,items:h instanceof xt.Name?void 0:h,dynamicProps:p instanceof xt.Name,dynamicItems:h instanceof xt.Name},m.source&&(m.source.evaluated=(0,xt.stringify)(m.evaluated))}return t.validate=m,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}pt.compileSchema=id;function X$(t,e,r){var n;r=(0,St.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=tP.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 jn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=Q$.call(this,s)}pt.resolveRef=X$;function Q$(t){return(0,St.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:id.call(this,t)}function n_(t){for(let e of this._compilations)if(eP(e,t))return e}pt.getCompilingSchema=n_;function eP(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function tP(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Zi.call(this,t,e)}function Zi(t,e){let r=this.opts.uriResolver.parse(e),n=(0,St._getFullPath)(this.opts.uriResolver,r),o=(0,St.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return sd.call(this,r,t);let s=(0,St.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Zi.call(this,t,i);return typeof a?.schema!="object"?void 0:sd.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||id.call(this,i),s===(0,St.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,St.resolveUrl)(this.opts.uriResolver,o,u)),new jn({schema:a,schemaId:c,root:t,baseId:o})}return sd.call(this,r,i)}}pt.resolveSchema=Zi;var rP=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function sd(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,r_.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!rP.has(a)&&u&&(e=(0,St.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,r_.schemaHasRulesButRef)(r,this.RULES)){let a=(0,St.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Zi.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new jn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var o_=T((Y1,nP)=>{nP.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 cd=T((X1,c_)=>{"use strict";var oP=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),i_=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 ad(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 sP=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function s_(t){return t.length=0,!0}function iP(t,e,r){if(t.length){let n=ad(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function aP(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=iP;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=s_}else{o.push(u);continue}}return o.length&&(a===s_?r.zone=o.join(""):i?n.push(o.join("")):n.push(ad(o))),r.address=n.join(""),r}function a_(t){if(cP(t,":")<2)return{host:t,isIPV6:!1};let e=aP(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 cP(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function uP(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 lP(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 dP(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!i_(r)){let n=a_(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}c_.exports={nonSimpleDomain:sP,recomposeAuthority:dP,normalizeComponentEncoding:lP,removeDotSegments:uP,isIPv4:i_,isUUID:oP,normalizeIPv6:a_,stringArrayToHexStripped:ad}});var f_=T((Q1,p_)=>{"use strict";var{isUUID:pP}=cd(),fP=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,mP=["http","https","ws","wss","urn","urn:uuid"];function hP(t){return mP.indexOf(t)!==-1}function ud(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 u_(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function l_(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 gP(t){return t.secure=ud(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function _P(t){if((t.port===(ud(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 yP(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(fP);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=ld(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function vP(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=ld(o);s&&(t=s.serialize(t,e));let i=t,a=t.nss;return i.path=`${n||e.nid}:${a}`,e.skipEscape=!0,i}function xP(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!pP(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function SP(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var d_={scheme:"http",domainHost:!0,parse:u_,serialize:l_},kP={scheme:"https",domainHost:d_.domainHost,parse:u_,serialize:l_},Hi={scheme:"ws",domainHost:!0,parse:gP,serialize:_P},bP={scheme:"wss",domainHost:Hi.domainHost,parse:Hi.parse,serialize:Hi.serialize},wP={scheme:"urn",parse:yP,serialize:vP,skipNormalize:!0},EP={scheme:"urn:uuid",parse:xP,serialize:SP,skipNormalize:!0},qi={http:d_,https:kP,ws:Hi,wss:bP,urn:wP,"urn:uuid":EP};Object.setPrototypeOf(qi,null);function ld(t){return t&&(qi[t]||qi[t.toLowerCase()])||void 0}p_.exports={wsIsSecure:ud,SCHEMES:qi,isValidSchemeName:hP,getSchemeHandler:ld}});var g_=T((eM,Bi)=>{"use strict";var{normalizeIPv6:TP,removeDotSegments:Go,recomposeAuthority:$P,normalizeComponentEncoding:Fi,isIPv4:PP,nonSimpleDomain:RP}=cd(),{SCHEMES:OP,getSchemeHandler:m_}=f_();function CP(t,e){return typeof t=="string"?t=Nt(Wt(t,e),e):typeof t=="object"&&(t=Wt(Nt(t,e),e)),t}function IP(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=h_(Wt(t,n),Wt(e,n),n,!0);return n.skipEscape=!0,Nt(o,n)}function h_(t,e,r,n){let o={};return n||(t=Wt(Nt(t,r),r),e=Wt(Nt(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Go(e.path||""),o.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Go(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Go(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?o.path="/"+e.path:t.path?o.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:o.path=e.path,o.path=Go(o.path)),o.query=e.query):(o.path=t.path,e.query!==void 0?o.query=e.query:o.query=t.query),o.userinfo=t.userinfo,o.host=t.host,o.port=t.port),o.scheme=t.scheme),o.fragment=e.fragment,o}function zP(t,e,r){return typeof t=="string"?(t=unescape(t),t=Nt(Fi(Wt(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Nt(Fi(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Nt(Fi(Wt(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Nt(Fi(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Nt(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),o=[],s=m_(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=$P(r);if(i!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(i),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(a=Go(a)),i===void 0&&a[0]==="/"&&a[1]==="/"&&(a="/%2F"+a.slice(2)),o.push(a)}return r.query!==void 0&&o.push("?",r.query),r.fragment!==void 0&&o.push("#",r.fragment),o.join("")}var NP=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Wt(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match(NP);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(PP(n.host)===!1){let c=TP(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=m_(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&RP(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 dd={SCHEMES:OP,normalize:CP,resolve:IP,resolveComponent:h_,equal:zP,serialize:Nt,parse:Wt};Bi.exports=dd;Bi.exports.default=dd;Bi.exports.fastUri=dd});var y_=T(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});var __=g_();__.code='require("ajv/dist/runtime/uri").default';pd.default=__});var T_=T(Ie=>{"use strict";Object.defineProperty(Ie,"__esModule",{value:!0});Ie.CodeGen=Ie.Name=Ie.nil=Ie.stringify=Ie.str=Ie._=Ie.KeywordCxt=void 0;var AP=Ko();Object.defineProperty(Ie,"KeywordCxt",{enumerable:!0,get:function(){return AP.KeywordCxt}});var Mn=q();Object.defineProperty(Ie,"_",{enumerable:!0,get:function(){return Mn._}});Object.defineProperty(Ie,"str",{enumerable:!0,get:function(){return Mn.str}});Object.defineProperty(Ie,"stringify",{enumerable:!0,get:function(){return Mn.stringify}});Object.defineProperty(Ie,"nil",{enumerable:!0,get:function(){return Mn.nil}});Object.defineProperty(Ie,"Name",{enumerable:!0,get:function(){return Mn.Name}});Object.defineProperty(Ie,"CodeGen",{enumerable:!0,get:function(){return Mn.CodeGen}});var jP=Li(),b_=Jo(),MP=Ul(),Wo=Ui(),DP=q(),Yo=Fo(),Vi=qo(),md=X(),v_=o_(),LP=y_(),w_=(t,e)=>new RegExp(t,e);w_.code="new RegExp";var ZP=["removeAdditional","useDefaults","coerceTypes"],UP=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),HP={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."},qP={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},x_=200;function FP(t){var e,r,n,o,s,i,a,c,u,l,d,f,m,p,h,g,y,x,S,w,R,ie,ae,tt,Zt;let fe=t.strict,er=(e=t.code)===null||e===void 0?void 0:e.optimize,Le=er===!0||er===void 0?1:er||0,Ts=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:w_,Ma=(o=t.uriResolver)!==null&&o!==void 0?o:LP.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:fe)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:fe)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:fe)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:fe)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:fe)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:Le,regExp:Ts}:{optimize:Le,regExp:Ts},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:x_,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:x_,meta:(y=t.meta)!==null&&y!==void 0?y:!0,messages:(x=t.messages)!==null&&x!==void 0?x:!0,inlineRefs:(S=t.inlineRefs)!==null&&S!==void 0?S:!0,schemaId:(w=t.schemaId)!==null&&w!==void 0?w:"$id",addUsedSchema:(R=t.addUsedSchema)!==null&&R!==void 0?R:!0,validateSchema:(ie=t.validateSchema)!==null&&ie!==void 0?ie:!0,validateFormats:(ae=t.validateFormats)!==null&&ae!==void 0?ae:!0,unicodeRegExp:(tt=t.unicodeRegExp)!==null&&tt!==void 0?tt:!0,int32range:(Zt=t.int32range)!==null&&Zt!==void 0?Zt:!0,uriResolver:Ma}}var Xo=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...FP(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new DP.ValueScope({scope:{},prefixes:UP,es5:r,lines:n}),this.logger=WP(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,MP.getRules)(),S_.call(this,HP,e,"NOT SUPPORTED"),S_.call(this,qP,e,"DEPRECATED","warn"),this._metaOpts=JP.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),BP.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=v_;n==="id"&&(o={...v_},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 b_.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),i.call(this,l)}}function a({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,o=this.opts.validateSchema){if(Array.isArray(e)){for(let i of e)this.addSchema(i,void 0,n,o);return this}let s;if(typeof e=="object"){let{schemaId:i}=this.opts;if(s=e[i],s!==void 0&&typeof s!="string")throw new Error(`schema ${i} must be string`)}return r=(0,Yo.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,o,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let o=this.validate(n,e);if(!o&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return o}getSchema(e){let r;for(;typeof(r=k_.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Wo.SchemaEnv({schema:{},schemaId:n});if(r=Wo.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=k_.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,Yo.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(XP.call(this,n,r),!r)return(0,md.eachItem)(n,s=>fd.call(this,s)),this;e0.call(this,r);let o={...r,type:(0,Vi.getJSONTypes)(r.type),schemaType:(0,Vi.getJSONTypes)(r.schemaType)};return(0,md.eachItem)(n,o.type.length===0?s=>fd.call(this,s,o):s=>o.type.forEach(i=>fd.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]=E_(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let o=e[n];(!r||r.test(n))&&(typeof o=="string"?delete e[n]:o&&!o.meta&&(this._cache.delete(o.schema),delete e[n]))}}_addSchema(e,r,n,o=this.opts.validateSchema,s=this.opts.addUsedSchema){let i,{schemaId:a}=this.opts;if(typeof e=="object")i=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,Yo.normalizeId)(i||n);let u=Yo.getSchemaRefs.call(this,e,n);return c=new Wo.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):Wo.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{Wo.compileSchema.call(this,e)}finally{this.opts=r}}};Xo.ValidationError=jP.default;Xo.MissingRefError=b_.default;Ie.default=Xo;function S_(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 k_(t){return t=(0,Yo.normalizeId)(t),this.schemas[t]||this.refs[t]}function BP(){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 JP(){let t={...this.opts};for(let e of ZP)delete t[e];return t}var GP={log(){},warn(){},error(){}};function WP(t){if(t===!1)return GP;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 YP=/^[a-z_$][a-z0-9_$:-]*$/i;function XP(t,e){let{RULES:r}=this;if((0,md.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!YP.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 fd(t,e,r){var n;let o=e?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(i||(i={type:r,rules:[]},s.rules.push(i)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,Vi.getJSONTypes)(e.type),schemaType:(0,Vi.getJSONTypes)(e.schemaType)}};e.before?QP.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 QP(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 e0(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=E_(e)),t.validateSchema=this.compile(e,!0))}var t0={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function E_(t){return{anyOf:[t,t0]}}});var $_=T(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var r0={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};hd.default=r0});var C_=T(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.callRef=rn.getValidate=void 0;var n0=Jo(),P_=dt(),Qe=q(),Dn=Jt(),R_=Ui(),Ki=X(),o0={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=R_.resolveRef.call(c,u,o,r);if(l===void 0)throw new n0.default(n.opts.uriResolver,o,r);if(l instanceof R_.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,Qe._)`${p}.validate`,u,u.$async)}function f(p){let h=O_(t,p);Ji(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,Qe.stringify)(p)}:{ref:p}),g=e.name("valid"),y=t.subschema({schema:p,dataTypes:[],schemaPath:Qe.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(y),t.ok(g)}}};function O_(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Qe._)`${r.scopeValue("wrapper",{ref:e})}.validate`}rn.getValidate=O_;function Ji(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Dn.default.this:Qe.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,Qe._)`await ${(0,P_.callValidateCode)(t,e,u)}`),m(e),i||o.assign(p,!0)},h=>{o.if((0,Qe._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),f(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,P_.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,Qe._)`${p}.errors`;o.assign(Dn.default.vErrors,(0,Qe._)`${Dn.default.vErrors} === null ? ${h} : ${Dn.default.vErrors}.concat(${h})`),o.assign(Dn.default.errors,(0,Qe._)`${Dn.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=Ki.mergeEvaluated.props(o,g.props,s.props));else{let y=o.var("props",(0,Qe._)`${p}.evaluated.props`);s.props=Ki.mergeEvaluated.props(o,y,s.props,Qe.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Ki.mergeEvaluated.items(o,g.items,s.items));else{let y=o.var("items",(0,Qe._)`${p}.evaluated.items`);s.items=Ki.mergeEvaluated.items(o,y,s.items,Qe.Name)}}}rn.callRef=Ji;rn.default=o0});var I_=T(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var s0=$_(),i0=C_(),a0=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",s0.default,i0.default];gd.default=a0});var z_=T(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var Gi=q(),_r=Gi.operators,Wi={maximum:{okStr:"<=",ok:_r.LTE,fail:_r.GT},minimum:{okStr:">=",ok:_r.GTE,fail:_r.LT},exclusiveMaximum:{okStr:"<",ok:_r.LT,fail:_r.GTE},exclusiveMinimum:{okStr:">",ok:_r.GT,fail:_r.LTE}},c0={message:({keyword:t,schemaCode:e})=>(0,Gi.str)`must be ${Wi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Gi._)`{comparison: ${Wi[t].okStr}, limit: ${e}}`},u0={keyword:Object.keys(Wi),type:"number",schemaType:"number",$data:!0,error:c0,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Gi._)`${r} ${Wi[e].fail} ${n} || isNaN(${r})`)}};_d.default=u0});var N_=T(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var Qo=q(),l0={message:({schemaCode:t})=>(0,Qo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Qo._)`{multipleOf: ${t}}`},d0={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:l0,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Qo._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Qo._)`${i} !== parseInt(${i})`;t.fail$data((0,Qo._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};yd.default=d0});var j_=T(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});function A_(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=A_;A_.code='require("ajv/dist/runtime/ucs2length").default'});var M_=T(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var nn=q(),p0=X(),f0=j_(),m0={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,nn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,nn._)`{limit: ${t}}`},h0={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:m0,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?nn.operators.GT:nn.operators.LT,i=o.opts.unicode===!1?(0,nn._)`${r}.length`:(0,nn._)`${(0,p0.useFunc)(t.gen,f0.default)}(${r})`;t.fail$data((0,nn._)`${i} ${s} ${n}`)}};xd.default=h0});var D_=T(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var g0=dt(),_0=X(),Ln=q(),y0={message:({schemaCode:t})=>(0,Ln.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Ln._)`{pattern: ${t}}`},v0={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:y0,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,Ln._)`new RegExp`:(0,_0.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Ln._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Ln._)`!${l}`)}else{let c=(0,g0.usePattern)(t,o);t.fail$data((0,Ln._)`!${c}.test(${r})`)}}};Sd.default=v0});var L_=T(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});var es=q(),x0={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,es.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,es._)`{limit: ${t}}`},S0={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:x0,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?es.operators.GT:es.operators.LT;t.fail$data((0,es._)`Object.keys(${r}).length ${o} ${n}`)}};kd.default=S0});var Z_=T(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var ts=dt(),rs=q(),k0=X(),b0={message:({params:{missingProperty:t}})=>(0,rs.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,rs._)`{missingProperty: ${t}}`},w0={keyword:"required",type:"object",schemaType:"array",$data:!0,error:b0,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,k0.checkStrictMode)(i,y,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(rs.nil,d);else for(let m of r)(0,ts.checkReportMissingProp)(t,m)}function l(){let m=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>f(m,p)),t.ok(p)}else e.if((0,ts.checkMissingProp)(t,r,m)),(0,ts.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,ts.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,ts.propertyInData)(e,o,m,a.ownProperties)),e.if((0,rs.not)(p),()=>{t.error(),e.break()})},rs.nil)}}};bd.default=w0});var U_=T(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var ns=q(),E0={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,ns.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,ns._)`{limit: ${t}}`},T0={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:E0,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?ns.operators.GT:ns.operators.LT;t.fail$data((0,ns._)`${r}.length ${o} ${n}`)}};wd.default=T0});var Yi=T(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var H_=Gl();H_.code='require("ajv/dist/runtime/equal").default';Ed.default=H_});var q_=T($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var Td=qo(),ze=q(),$0=X(),P0=Yi(),R0={message:({params:{i:t,j:e}})=>(0,ze.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,ze._)`{i: ${t}, j: ${e}}`},O0={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:R0,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,Td.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,ze._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,ze._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,ze._)`${p} > 1`,()=>(d()?f:m)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,h){let g=e.name("item"),y=(0,Td.checkDataTypes)(u,g,a.opts.strictNumbers,Td.DataType.Wrong),x=e.const("indices",(0,ze._)`{}`);e.for((0,ze._)`;${p}--;`,()=>{e.let(g,(0,ze._)`${r}[${p}]`),e.if(y,(0,ze._)`continue`),u.length>1&&e.if((0,ze._)`typeof ${g} == "string"`,(0,ze._)`${g} += "_"`),e.if((0,ze._)`typeof ${x}[${g}] == "number"`,()=>{e.assign(h,(0,ze._)`${x}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,ze._)`${x}[${g}] = ${p}`)})}function m(p,h){let g=(0,$0.useFunc)(e,P0.default),y=e.name("outer");e.label(y).for((0,ze._)`;${p}--;`,()=>e.for((0,ze._)`${h} = ${p}; ${h}--;`,()=>e.if((0,ze._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(y)})))}}};$d.default=O0});var F_=T(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var Pd=q(),C0=X(),I0=Yi(),z0={message:"must be equal to constant",params:({schemaCode:t})=>(0,Pd._)`{allowedValue: ${t}}`},N0={keyword:"const",$data:!0,error:z0,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,Pd._)`!${(0,C0.useFunc)(e,I0.default)}(${r}, ${o})`):t.fail((0,Pd._)`${s} !== ${r}`)}};Rd.default=N0});var B_=T(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var os=q(),A0=X(),j0=Yi(),M0={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,os._)`{allowedValues: ${t}}`},D0={keyword:"enum",schemaType:"array",$data:!0,error:M0,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,A0.useFunc)(e,j0.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let m=e.const("vSchema",s);l=(0,os.or)(...o.map((p,h)=>f(m,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,m=>e.if((0,os._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,os._)`${u()}(${r}, ${m}[${p}])`:(0,os._)`${r} === ${h}`}}};Od.default=D0});var V_=T(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});var L0=z_(),Z0=N_(),U0=M_(),H0=D_(),q0=L_(),F0=Z_(),B0=U_(),V0=q_(),K0=F_(),J0=B_(),G0=[L0.default,Z0.default,U0.default,H0.default,q0.default,F0.default,B0.default,V0.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},K0.default,J0.default];Cd.default=G0});var zd=T(ss=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});ss.validateAdditionalItems=void 0;var on=q(),Id=X(),W0={message:({params:{len:t}})=>(0,on.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,on._)`{limit: ${t}}`},Y0={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:W0,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Id.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}K_(t,n)}};function K_(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,on._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,on._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,Id.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,on._)`${a} <= ${e.length}`);r.if((0,on.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:Id.Type.Num},u),i.allErrors||r.if((0,on.not)(u),()=>r.break())})}}ss.validateAdditionalItems=K_;ss.default=Y0});var Nd=T(is=>{"use strict";Object.defineProperty(is,"__esModule",{value:!0});is.validateTuple=void 0;var J_=q(),Xi=X(),X0=dt(),Q0={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return G_(t,"additionalItems",e);r.items=!0,!(0,Xi.alwaysValidSchema)(r,e)&&t.ok((0,X0.validateArray)(t))}};function G_(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;l(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Xi.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,J_._)`${s}.length`);r.forEach((d,f)=>{(0,Xi.alwaysValidSchema)(a,d)||(n.if((0,J_._)`${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,Xi.checkStrictMode)(a,g,f.strictTuples)}}}is.validateTuple=G_;is.default=Q0});var W_=T(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});var eR=Nd(),tR={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,eR.validateTuple)(t,"items")};Ad.default=tR});var X_=T(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});var Y_=q(),rR=X(),nR=dt(),oR=zd(),sR={message:({params:{len:t}})=>(0,Y_.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Y_._)`{limit: ${t}}`},iR={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:sR,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,rR.alwaysValidSchema)(n,e)&&(o?(0,oR.validateAdditionalItems)(t,o):t.ok((0,nR.validateArray)(t)))}};jd.default=iR});var Q_=T(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});var ft=q(),Qi=X(),aR={message:({params:{min:t,max:e}})=>e===void 0?(0,ft.str)`must contain at least ${t} valid item(s)`:(0,ft.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ft._)`{minContains: ${t}}`:(0,ft._)`{minContains: ${t}, maxContains: ${e}}`},cR={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,ft._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Qi.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Qi.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Qi.alwaysValidSchema)(s,r)){let h=(0,ft._)`${l} >= ${i}`;a!==void 0&&(h=(0,ft._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?m(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,ft._)`${o}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),g=e.let("count",0);m(h,()=>e.if(h,()=>p(g)))}function m(h,g){e.forRange("i",0,l,y=>{t.subschema({keyword:"contains",dataProp:y,dataPropType:Qi.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,ft._)`${h}++`),a===void 0?e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,ft._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Md.default=cR});var ry=T(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.validateSchemaDeps=At.validatePropertyDeps=At.error=void 0;var Dd=q(),uR=X(),as=dt();At.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Dd.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Dd._)`{property: ${t},
7
7
  missingProperty: ${n},
8
8
  depsCount: ${e},
9
- deps: ${r}}`};var nR={keyword:"dependencies",type:"object",schemaType:"object",error:At.error,code(t){let[e,r]=oR(t);G_(t,e),W_(t,r)}};function oR({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 G_(t,e=t.schema){let{gen:r,data:n,it:o}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let i in e){let a=e[i];if(a.length===0)continue;let c=(0,ss.propertyInData)(r,n,i,o.opts.ownProperties);t.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let u of a)(0,ss.checkReportMissingProp)(t,u)}):(r.if((0,jd._)`${c} && (${(0,ss.checkMissingProp)(t,a,s)})`),(0,ss.reportMissingProp)(t,s),r.else())}}At.validatePropertyDeps=G_;function W_(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,rR.alwaysValidSchema)(s,e[a])||(r.if((0,ss.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}At.validateSchemaDeps=W_;At.default=nR});var Q_=T(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});var X_=q(),sR=X(),iR={message:"property name must be valid",params:({params:t})=>(0,X_._)`{propertyName: ${t.propertyName}}`},aR={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:iR,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,sR.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,X_.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Md.default=aR});var Ld=T(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var Xi=dt(),St=q(),cR=Jt(),Qi=X(),uR={message:"must NOT have additional properties",params:({params:t})=>(0,St._)`{additionalProperty: ${t.additionalProperty}}`},lR={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:uR,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,Qi.alwaysValidSchema)(i,r))return;let u=(0,Xi.allSchemaProperties)(n.properties),l=(0,Xi.allSchemaProperties)(n.patternProperties);d(),t.ok((0,St._)`${s} === ${cR.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,Qi.schemaRefOrVal)(i,n.properties,"properties");y=(0,Xi.isOwnProperty)(e,x,g)}else u.length?y=(0,St.or)(...u.map(x=>(0,St._)`${g} === ${x}`)):y=St.nil;return l.length&&(y=(0,St.or)(y,...l.map(x=>(0,St._)`${(0,Xi.usePattern)(t,x)}.test(${g})`))),(0,St.not)(y)}function m(g){e.code((0,St._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,Qi.alwaysValidSchema)(i,r)){let y=e.name("valid");c.removeAdditional==="failing"?(h(g,y,!1),e.if((0,St.not)(y),()=>{t.reset(),m(g)})):(h(g,y),a||e.if((0,St.not)(y),()=>e.break()))}}function h(g,y,x){let k={keyword:"additionalProperties",dataProp:g,dataPropType:Qi.Type.Str};x===!1&&Object.assign(k,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(k,y)}}};Dd.default=lR});var ry=T(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});var dR=Bo(),ey=dt(),Zd=X(),ty=Ld(),pR={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&&ty.default.code(new dR.KeywordCxt(s,ty.default,"additionalProperties"));let i=(0,ey.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Zd.mergeEvaluated.props(e,(0,Zd.toHash)(i),s.props));let a=i.filter(d=>!(0,Zd.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,ey.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)}}};Ud.default=pR});var iy=T(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});var ny=dt(),ea=q(),oy=X(),sy=X(),fR={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,ny.allSchemaProperties)(r),c=a.filter(h=>(0,oy.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof ea.Name)&&(s.props=(0,sy.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,oy.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,ea._)`${(0,ny.usePattern)(t,h)}.test(${g})`,()=>{let y=c.includes(h);y||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:sy.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,ea._)`${d}[${g}]`,!0):!y&&!s.allErrors&&e.if((0,ea.not)(l),()=>e.break())})})}}};Hd.default=fR});var ay=T(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var mR=X(),hR={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,mR.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"}};qd.default=hR});var cy=T(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});var gR=dt(),_R={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:gR.validateUnion,error:{message:"must match a schema in anyOf"}};Fd.default=_R});var uy=T(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});var ta=q(),yR=X(),vR={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,ta._)`{passingSchemas: ${t.passing}}`},xR={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:vR,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,yR.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,ta._)`${c} && ${i}`).assign(i,!1).assign(a,(0,ta._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,ta.Name)})})}}};Bd.default=xR});var ly=T(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var kR=X(),SR={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,kR.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Vd.default=SR});var fy=T(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});var ra=q(),py=X(),bR={message:({params:t})=>(0,ra.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,ra._)`{failingKeyword: ${t.ifClause}}`},wR={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:bR,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,py.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=dy(n,"then"),s=dy(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else o?e.if(a,u("then")):e.if((0,ra.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(f,i),d?e.assign(d,(0,ra._)`${l}`):t.setParams({ifClause:l})}}}};function dy(t,e){let r=t.schema[e];return r!==void 0&&!(0,py.alwaysValidSchema)(t,r)}Kd.default=wR});var my=T(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});var ER=X(),TR={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,ER.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Jd.default=TR});var hy=T(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});var $R=Cd(),PR=B_(),RR=Id(),OR=K_(),CR=J_(),IR=Y_(),zR=Q_(),NR=Ld(),AR=ry(),jR=iy(),MR=ay(),DR=cy(),LR=uy(),ZR=ly(),UR=fy(),HR=my();function qR(t=!1){let e=[MR.default,DR.default,LR.default,ZR.default,UR.default,HR.default,zR.default,NR.default,IR.default,AR.default,jR.default];return t?e.push(PR.default,OR.default):e.push($R.default,RR.default),e.push(CR.default),e}Gd.default=qR});var gy=T(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});var xe=q(),FR={message:({schemaCode:t})=>(0,xe.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,xe._)`{format: ${t}}`},BR={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:FR,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?f():m();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,xe._)`${p}[${i}]`),g=r.let("fType"),y=r.let("format");r.if((0,xe._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,xe._)`${h}.type || "string"`).assign(y,(0,xe._)`${h}.validate`),()=>r.assign(g,(0,xe._)`"string"`).assign(y,h)),t.fail$data((0,xe.or)(x(),k()));function x(){return c.strictSchema===!1?xe.nil:(0,xe._)`${i} && !${y}`}function k(){let w=l.$async?(0,xe._)`(${h}.async ? await ${y}(${n}) : ${y}(${n}))`:(0,xe._)`${y}(${n})`,R=(0,xe._)`(typeof ${y} == "function" ? ${w} : ${y}.test(${n}))`;return(0,xe._)`${y} && ${y} !== true && ${g} === ${e} && !${R}`}}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(R());return}throw new Error(R());function R(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function k(R){let ie=R instanceof RegExp?(0,xe.regexpCode)(R):c.code.formats?(0,xe._)`${c.code.formats}${(0,xe.getProperty)(s)}`:void 0,ae=r.scopeValue("formats",{key:s,ref:R,code:ie});return typeof R=="object"&&!(R instanceof RegExp)?[R.type||"string",R.validate,(0,xe._)`${ae}.validate`]:["string",R,ae]}function w(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,xe._)`await ${y}(${n})`}return typeof g=="function"?(0,xe._)`${y}(${n})`:(0,xe._)`${y}.test(${n})`}}}};Wd.default=BR});var _y=T(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});var VR=gy(),KR=[VR.default];Yd.default=KR});var yy=T(Dn=>{"use strict";Object.defineProperty(Dn,"__esModule",{value:!0});Dn.contentVocabulary=Dn.metadataVocabulary=void 0;Dn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Dn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var xy=T(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});var JR=$_(),GR=U_(),WR=hy(),YR=_y(),vy=yy(),XR=[JR.default,GR.default,(0,WR.default)(),YR.default,vy.metadataVocabulary,vy.contentVocabulary];Xd.default=XR});var Sy=T(na=>{"use strict";Object.defineProperty(na,"__esModule",{value:!0});na.DiscrError=void 0;var ky;(function(t){t.Tag="tag",t.Mapping="mapping"})(ky||(na.DiscrError=ky={}))});var wy=T(ep=>{"use strict";Object.defineProperty(ep,"__esModule",{value:!0});var Ln=q(),Qd=Sy(),by=Li(),QR=Vo(),eO=X(),tO={message:({params:{discrError:t,tagName:e}})=>t===Qd.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Ln._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},rO={keyword:"discriminator",type:"object",schemaType:"object",error:tO,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,Ln._)`${r}${(0,Ln.getProperty)(a)}`);e.if((0,Ln._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Qd.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let m=f();e.if(!1);for(let p in m)e.elseIf((0,Ln._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:Qd.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(m){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:m},p);return t.mergeEvaluated(h,Ln.Name),p}function f(){var m;let p={},h=y(o),g=!0;for(let w=0;w<i.length;w++){let R=i[w];if(R?.$ref&&!(0,eO.schemaHasRulesButRef)(R,s.self.RULES)){let ae=R.$ref;if(R=by.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,ae),R instanceof by.SchemaEnv&&(R=R.schema),R===void 0)throw new QR.default(s.opts.uriResolver,s.baseId,ae)}let ie=(m=R?.properties)===null||m===void 0?void 0:m[a];if(typeof ie!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||y(R)),x(ie,w)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function y({required:w}){return Array.isArray(w)&&w.includes(a)}function x(w,R){if(w.const)k(w.const,R);else if(w.enum)for(let ie of w.enum)k(ie,R);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function k(w,R){if(typeof w!="string"||w in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[w]=R}}}};ep.default=rO});var Ey=T((AM,nO)=>{nO.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 rp=T((pe,tp)=>{"use strict";Object.defineProperty(pe,"__esModule",{value:!0});pe.MissingRefError=pe.ValidationError=pe.CodeGen=pe.Name=pe.nil=pe.stringify=pe.str=pe._=pe.KeywordCxt=pe.Ajv=void 0;var oO=k_(),sO=xy(),iO=wy(),Ty=Ey(),aO=["/properties"],oa="http://json-schema.org/draft-07/schema",Zn=class extends oO.default{_addVocabularies(){super._addVocabularies(),sO.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(iO.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Ty,aO):Ty;this.addMetaSchema(e,oa,!1),this.refs["http://json-schema.org/schema"]=oa}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(oa)?oa:void 0)}};pe.Ajv=Zn;tp.exports=pe=Zn;tp.exports.Ajv=Zn;Object.defineProperty(pe,"__esModule",{value:!0});pe.default=Zn;var cO=Bo();Object.defineProperty(pe,"KeywordCxt",{enumerable:!0,get:function(){return cO.KeywordCxt}});var Un=q();Object.defineProperty(pe,"_",{enumerable:!0,get:function(){return Un._}});Object.defineProperty(pe,"str",{enumerable:!0,get:function(){return Un.str}});Object.defineProperty(pe,"stringify",{enumerable:!0,get:function(){return Un.stringify}});Object.defineProperty(pe,"nil",{enumerable:!0,get:function(){return Un.nil}});Object.defineProperty(pe,"Name",{enumerable:!0,get:function(){return Un.Name}});Object.defineProperty(pe,"CodeGen",{enumerable:!0,get:function(){return Un.CodeGen}});var uO=Mi();Object.defineProperty(pe,"ValidationError",{enumerable:!0,get:function(){return uO.default}});var lO=Vo();Object.defineProperty(pe,"MissingRefError",{enumerable:!0,get:function(){return lO.default}})});var Ny=T(Mt=>{"use strict";Object.defineProperty(Mt,"__esModule",{value:!0});Mt.formatNames=Mt.fastFormats=Mt.fullFormats=void 0;function jt(t,e){return{validate:t,compare:e}}Mt.fullFormats={date:jt(Oy,ip),time:jt(op(!0),ap),"date-time":jt($y(!0),Iy),"iso-time":jt(op(),Cy),"iso-date-time":jt($y(),zy),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:gO,"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:bO,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:_O,int32:{type:"number",validate:xO},int64:{type:"number",validate:kO},float:{type:"number",validate:Ry},double:{type:"number",validate:Ry},password:!0,binary:!0};Mt.fastFormats={...Mt.fullFormats,date:jt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,ip),time:jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,ap),"date-time":jt(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Iy),"iso-time":jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Cy),"iso-date-time":jt(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,zy),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Mt.formatNames=Object.keys(Mt.fullFormats);function dO(t){return t%4===0&&(t%100!==0||t%400===0)}var pO=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,fO=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Oy(t){let e=pO.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&&dO(r)?29:fO[n])}function ip(t,e){if(t&&e)return t>e?1:t<e?-1:0}var np=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function op(t){return function(r){let n=np.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 ap(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 Cy(t,e){if(!(t&&e))return;let r=np.exec(t),n=np.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 sp=/t|\s/i;function $y(t){let e=op(t);return function(n){let o=n.split(sp);return o.length===2&&Oy(o[0])&&e(o[1])}}function Iy(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function zy(t,e){if(!(t&&e))return;let[r,n]=t.split(sp),[o,s]=e.split(sp),i=ip(r,o);if(i!==void 0)return i||ap(n,s)}var mO=/\/|:/,hO=/^(?:[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 gO(t){return mO.test(t)&&hO.test(t)}var Py=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function _O(t){return Py.lastIndex=0,Py.test(t)}var yO=-(2**31),vO=2**31-1;function xO(t){return Number.isInteger(t)&&t<=vO&&t>=yO}function kO(t){return Number.isInteger(t)}function Ry(){return!0}var SO=/[^\\]\\Z/;function bO(t){if(SO.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Ay=T(Hn=>{"use strict";Object.defineProperty(Hn,"__esModule",{value:!0});Hn.formatLimitDefinition=void 0;var wO=rp(),bt=q(),yr=bt.operators,sa={formatMaximum:{okStr:"<=",ok:yr.LTE,fail:yr.GT},formatMinimum:{okStr:">=",ok:yr.GTE,fail:yr.LT},formatExclusiveMaximum:{okStr:"<",ok:yr.LT,fail:yr.GTE},formatExclusiveMinimum:{okStr:">",ok:yr.GT,fail:yr.LTE}},EO={message:({keyword:t,schemaCode:e})=>(0,bt.str)`should be ${sa[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,bt._)`{comparison: ${sa[t].okStr}, limit: ${e}}`};Hn.formatLimitDefinition={keyword:Object.keys(sa),type:"string",schemaType:"string",$data:!0,error:EO,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 wO.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,bt._)`${f}[${c.schemaCode}]`);t.fail$data((0,bt.or)((0,bt._)`typeof ${m} != "object"`,(0,bt._)`${m} instanceof RegExp`,(0,bt._)`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=a.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${o}": format "${f}" does not define "compare" function`);let p=e.scopeValue("formats",{key:f,ref:m,code:i.code.formats?(0,bt._)`${i.code.formats}${(0,bt.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,bt._)`${f}.compare(${r}, ${n}) ${sa[o].fail} 0`}},dependencies:["format"]};var TO=t=>(t.addKeyword(Hn.formatLimitDefinition),t);Hn.default=TO});var Ly=T((is,Dy)=>{"use strict";Object.defineProperty(is,"__esModule",{value:!0});var qn=Ny(),$O=Ay(),cp=q(),jy=new cp.Name("fullFormats"),PO=new cp.Name("fastFormats"),up=(t,e={keywords:!0})=>{if(Array.isArray(e))return My(t,e,qn.fullFormats,jy),t;let[r,n]=e.mode==="fast"?[qn.fastFormats,PO]:[qn.fullFormats,jy],o=e.formats||qn.formatNames;return My(t,o,r,n),e.keywords&&(0,$O.default)(t),t};up.get=(t,e="full")=>{let n=(e==="fast"?qn.fastFormats:qn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function My(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,cp._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}Dy.exports=is=up;Object.defineProperty(is,"__esModule",{value:!0});is.default=up});var Sv,bv=be(()=>{"use strict";Sv={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot",Codex:"codex","codex-mcp-client":"codex","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed"}});function us(t,e){let r=va[e],n=kp(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function kp(t,e){if(e){let r=va[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}var Tt,lC,wv,va,GD,WD,Ev=be(()=>{"use strict";Tt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},lC=["Bash","WebFetch","Read","Grep","Agent","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"],wv=lC.join("|"),va={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},GD=[Tt.PRE_TOOL_USE,Tt.SESSION_START],WD=[Tt.POST_TOOL_USE,Tt.PRE_COMPACT,Tt.USER_PROMPT_SUBMIT]});var bp={};Be(bp,{ClaudeCodeAdapter:()=>Sp});import{createHash as Tv}from"node:crypto";import{readFileSync as Bn,writeFileSync as xa,mkdirSync as dC,copyFileSync as pC,accessSync as $v,readdirSync as fC,chmodSync as mC,constants as Pv}from"node:fs";import{resolve as Dt,join as ls}from"node:path";import{homedir as on}from"node:os";var Sp,wp=be(()=>{"use strict";Ev();Sp=class{name="Claude Code";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{updatedInput:e.updatedInput};if(e.decision==="context"&&e.additionalContext)return{additionalContext:e.additionalContext};if(e.decision==="ask")return{permissionDecision:"ask"}}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),e.updatedOutput&&(r.updatedMCPToolOutput=e.updatedOutput),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Dt(on(),".claude","settings.json")}getSessionDir(){let e=ls(on(),".claude","context-mode","sessions");return dC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Tv("sha256").update(e).digest("hex").slice(0,16);return ls(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Tv("sha256").update(e).digest("hex").slice(0,16);return ls(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){let r=`node ${e}/hooks/pretooluse.mjs`;return{PreToolUse:["Bash","WebFetch","Read","Grep","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].map(o=>({matcher:o,hooks:[{type:"command",command:r}]})),PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{let e=Bn(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){xa(this.getSettingsPath(),JSON.stringify(e,null,2)+`
10
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"PreToolUse hook",status:"fail",message:"Could not read ~/.claude/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=this.readPluginHooks(e),i=this.checkHookType(o,s,Tt.PRE_TOOL_USE);r.push({check:"PreToolUse hook",status:i?"pass":"fail",message:i?"PreToolUse hook configured":"No PreToolUse hooks found",fix:i?void 0:"context-mode upgrade"});let a=this.checkHookType(o,s,Tt.SESSION_START);return r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"No SessionStart hooks found",fix:a?void 0:"context-mode upgrade"}),r}readPluginHooks(e){let r=[ls(e,"hooks","hooks.json"),ls(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=Bn(n,"utf-8"),s=JSON.parse(o);if(s.hooks)return s.hooks}catch{}}checkHookType(e,r,n){let o=e?.[n];if(o&&o.length>0&&o.some(i=>us(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>us(i,n)))}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read settings.json"};let r=e.enabledPlugins;if(!r)return{check:"Plugin registration",status:"warn",message:"No enabledPlugins section found (might be using standalone MCP mode)"};let n=Object.keys(r).find(o=>o.startsWith("context-mode"));return n&&r[n]?{check:"Plugin registration",status:"pass",message:`Plugin enabled: ${n}`}:{check:"Plugin registration",status:"warn",message:"context-mode not in enabledPlugins (might be using standalone MCP mode)"}}getInstalledVersion(){try{let r=Dt(on(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Bn(r,"utf-8")).plugins??{};for(let[s,i]of Object.entries(o)){if(!s.toLowerCase().includes("context-mode"))continue;let a=i;if(a.length>0&&typeof a[0].version=="string")return a[0].version}}catch{}let e=[Dt(on(),".claude"),Dt(on(),".config","claude")];for(let r of e){let n=Dt(r,"plugins","cache","context-mode","context-mode");try{let s=fC(n).filter(i=>/^\d+\.\d+\.\d+/.test(i)).sort((i,a)=>{let c=i.split(".").map(Number),u=a.split(".").map(Number);for(let l=0;l<3;l++)if((c[l]??0)!==(u[l]??0))return(c[l]??0)-(u[l]??0);return 0});if(s.length>0)return s[s.length-1]}catch{}}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[],s=[Tt.PRE_TOOL_USE,Tt.SESSION_START];for(let i of s){let a=kp(i,e);if(i===Tt.PRE_TOOL_USE){let c={matcher:wv,hooks:[{type:"command",command:a}]},u=n.PreToolUse;if(u&&Array.isArray(u)){let l=u.findIndex(d=>us(d,i));l>=0?(u[l]=c,o.push(`Updated existing ${i} hook entry`)):(u.push(c),o.push(`Added ${i} hook entry`)),n.PreToolUse=u}else n.PreToolUse=[c],o.push(`Created ${i} hooks section`)}else{let c={matcher:"",hooks:[{type:"command",command:a}]},u=n[i];if(u&&Array.isArray(u)){let l=u.findIndex(d=>us(d,i));l>=0?(u[l]=c,o.push(`Updated existing ${i} hook entry`)):(u.push(c),o.push(`Added ${i} hook entry`)),n[i]=u}else n[i]=[c],o.push(`Created ${i} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{$v(e,Pv.R_OK);let r=e+".bak";return pC(e,r),r}catch{return null}}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(va)){let o=Dt(e,"hooks",n);try{$v(o,Pv.R_OK),mC(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=Dt(on(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Bn(n,"utf-8"));for(let[s,i]of Object.entries(o.plugins||{}))if(s.toLowerCase().includes("context-mode"))for(let a of i)a.installPath=e,a.version=r,a.lastUpdated=new Date().toISOString();xa(n,JSON.stringify(o,null,2)+`
11
- `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"CLAUDE.md",globalPath:Dt(on(),".claude","CLAUDE.md"),projectRelativePath:"CLAUDE.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Dt(e,n.projectRelativePath),s=Dt(r,"configs","claude-code",n.fileName);try{let i=Bn(s,"utf-8");try{let a=Bn(o,"utf-8");return a.includes("context-mode")?null:(xa(o,a.trimEnd()+`
9
+ deps: ${r}}`};var lR={keyword:"dependencies",type:"object",schemaType:"object",error:At.error,code(t){let[e,r]=dR(t);ey(t,e),ty(t,r)}};function dR({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 ey(t,e=t.schema){let{gen:r,data:n,it:o}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let i in e){let a=e[i];if(a.length===0)continue;let c=(0,as.propertyInData)(r,n,i,o.opts.ownProperties);t.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let u of a)(0,as.checkReportMissingProp)(t,u)}):(r.if((0,Dd._)`${c} && (${(0,as.checkMissingProp)(t,a,s)})`),(0,as.reportMissingProp)(t,s),r.else())}}At.validatePropertyDeps=ey;function ty(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,uR.alwaysValidSchema)(s,e[a])||(r.if((0,as.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}At.validateSchemaDeps=ty;At.default=lR});var oy=T(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});var ny=q(),pR=X(),fR={message:"property name must be valid",params:({params:t})=>(0,ny._)`{propertyName: ${t.propertyName}}`},mR={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:fR,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,pR.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,ny.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Ld.default=mR});var Ud=T(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});var ea=dt(),kt=q(),hR=Jt(),ta=X(),gR={message:"must NOT have additional properties",params:({params:t})=>(0,kt._)`{additionalProperty: ${t.additionalProperty}}`},_R={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:gR,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,ta.alwaysValidSchema)(i,r))return;let u=(0,ea.allSchemaProperties)(n.properties),l=(0,ea.allSchemaProperties)(n.patternProperties);d(),t.ok((0,kt._)`${s} === ${hR.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,ta.schemaRefOrVal)(i,n.properties,"properties");y=(0,ea.isOwnProperty)(e,x,g)}else u.length?y=(0,kt.or)(...u.map(x=>(0,kt._)`${g} === ${x}`)):y=kt.nil;return l.length&&(y=(0,kt.or)(y,...l.map(x=>(0,kt._)`${(0,ea.usePattern)(t,x)}.test(${g})`))),(0,kt.not)(y)}function m(g){e.code((0,kt._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,ta.alwaysValidSchema)(i,r)){let y=e.name("valid");c.removeAdditional==="failing"?(h(g,y,!1),e.if((0,kt.not)(y),()=>{t.reset(),m(g)})):(h(g,y),a||e.if((0,kt.not)(y),()=>e.break()))}}function h(g,y,x){let S={keyword:"additionalProperties",dataProp:g,dataPropType:ta.Type.Str};x===!1&&Object.assign(S,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(S,y)}}};Zd.default=_R});var ay=T(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var yR=Ko(),sy=dt(),Hd=X(),iy=Ud(),vR={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&&iy.default.code(new yR.KeywordCxt(s,iy.default,"additionalProperties"));let i=(0,sy.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Hd.mergeEvaluated.props(e,(0,Hd.toHash)(i),s.props));let a=i.filter(d=>!(0,Hd.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,sy.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)}}};qd.default=vR});var dy=T(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});var cy=dt(),ra=q(),uy=X(),ly=X(),xR={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:o,it:s}=t,{opts:i}=s,a=(0,cy.allSchemaProperties)(r),c=a.filter(h=>(0,uy.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof ra.Name)&&(s.props=(0,ly.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,uy.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,ra._)`${(0,cy.usePattern)(t,h)}.test(${g})`,()=>{let y=c.includes(h);y||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:ly.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,ra._)`${d}[${g}]`,!0):!y&&!s.allErrors&&e.if((0,ra.not)(l),()=>e.break())})})}}};Fd.default=xR});var py=T(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});var SR=X(),kR={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,SR.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"}};Bd.default=kR});var fy=T(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var bR=dt(),wR={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:bR.validateUnion,error:{message:"must match a schema in anyOf"}};Vd.default=wR});var my=T(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});var na=q(),ER=X(),TR={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,na._)`{passingSchemas: ${t.passing}}`},$R={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:TR,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,ER.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,na._)`${c} && ${i}`).assign(i,!1).assign(a,(0,na._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,na.Name)})})}}};Kd.default=$R});var hy=T(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});var PR=X(),RR={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,PR.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Jd.default=RR});var yy=T(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});var oa=q(),_y=X(),OR={message:({params:t})=>(0,oa.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,oa._)`{failingKeyword: ${t.ifClause}}`},CR={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:OR,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,_y.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=gy(n,"then"),s=gy(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else o?e.if(a,u("then")):e.if((0,oa.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(f,i),d?e.assign(d,(0,oa._)`${l}`):t.setParams({ifClause:l})}}}};function gy(t,e){let r=t.schema[e];return r!==void 0&&!(0,_y.alwaysValidSchema)(t,r)}Gd.default=CR});var vy=T(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});var IR=X(),zR={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,IR.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Wd.default=zR});var xy=T(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});var NR=zd(),AR=W_(),jR=Nd(),MR=X_(),DR=Q_(),LR=ry(),ZR=oy(),UR=Ud(),HR=ay(),qR=dy(),FR=py(),BR=fy(),VR=my(),KR=hy(),JR=yy(),GR=vy();function WR(t=!1){let e=[FR.default,BR.default,VR.default,KR.default,JR.default,GR.default,ZR.default,UR.default,LR.default,HR.default,qR.default];return t?e.push(AR.default,MR.default):e.push(NR.default,jR.default),e.push(DR.default),e}Yd.default=WR});var Sy=T(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});var xe=q(),YR={message:({schemaCode:t})=>(0,xe.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,xe._)`{format: ${t}}`},XR={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:YR,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?f():m();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,xe._)`${p}[${i}]`),g=r.let("fType"),y=r.let("format");r.if((0,xe._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,xe._)`${h}.type || "string"`).assign(y,(0,xe._)`${h}.validate`),()=>r.assign(g,(0,xe._)`"string"`).assign(y,h)),t.fail$data((0,xe.or)(x(),S()));function x(){return c.strictSchema===!1?xe.nil:(0,xe._)`${i} && !${y}`}function S(){let w=l.$async?(0,xe._)`(${h}.async ? await ${y}(${n}) : ${y}(${n}))`:(0,xe._)`${y}(${n})`,R=(0,xe._)`(typeof ${y} == "function" ? ${w} : ${y}.test(${n}))`;return(0,xe._)`${y} && ${y} !== true && ${g} === ${e} && !${R}`}}function m(){let p=d.formats[s];if(!p){x();return}if(p===!0)return;let[h,g,y]=S(p);h===e&&t.pass(w());function x(){if(c.strictSchema===!1){d.logger.warn(R());return}throw new Error(R());function R(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function S(R){let ie=R instanceof RegExp?(0,xe.regexpCode)(R):c.code.formats?(0,xe._)`${c.code.formats}${(0,xe.getProperty)(s)}`:void 0,ae=r.scopeValue("formats",{key:s,ref:R,code:ie});return typeof R=="object"&&!(R instanceof RegExp)?[R.type||"string",R.validate,(0,xe._)`${ae}.validate`]:["string",R,ae]}function w(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,xe._)`await ${y}(${n})`}return typeof g=="function"?(0,xe._)`${y}(${n})`:(0,xe._)`${y}.test(${n})`}}}};Xd.default=XR});var ky=T(Qd=>{"use strict";Object.defineProperty(Qd,"__esModule",{value:!0});var QR=Sy(),eO=[QR.default];Qd.default=eO});var by=T(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.contentVocabulary=Zn.metadataVocabulary=void 0;Zn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Zn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Ey=T(ep=>{"use strict";Object.defineProperty(ep,"__esModule",{value:!0});var tO=I_(),rO=V_(),nO=xy(),oO=ky(),wy=by(),sO=[tO.default,rO.default,(0,nO.default)(),oO.default,wy.metadataVocabulary,wy.contentVocabulary];ep.default=sO});var $y=T(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.DiscrError=void 0;var Ty;(function(t){t.Tag="tag",t.Mapping="mapping"})(Ty||(sa.DiscrError=Ty={}))});var Ry=T(rp=>{"use strict";Object.defineProperty(rp,"__esModule",{value:!0});var Un=q(),tp=$y(),Py=Ui(),iO=Jo(),aO=X(),cO={message:({params:{discrError:t,tagName:e}})=>t===tp.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Un._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},uO={keyword:"discriminator",type:"object",schemaType:"object",error:cO,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,Un._)`${r}${(0,Un.getProperty)(a)}`);e.if((0,Un._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:tp.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,Un._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:tp.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,Un.Name),p}function f(){var m;let p={},h=y(o),g=!0;for(let w=0;w<i.length;w++){let R=i[w];if(R?.$ref&&!(0,aO.schemaHasRulesButRef)(R,s.self.RULES)){let ae=R.$ref;if(R=Py.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,ae),R instanceof Py.SchemaEnv&&(R=R.schema),R===void 0)throw new iO.default(s.opts.uriResolver,s.baseId,ae)}let ie=(m=R?.properties)===null||m===void 0?void 0:m[a];if(typeof ie!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||y(R)),x(ie,w)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function y({required:w}){return Array.isArray(w)&&w.includes(a)}function x(w,R){if(w.const)S(w.const,R);else if(w.enum)for(let ie of w.enum)S(ie,R);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function S(w,R){if(typeof w!="string"||w in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[w]=R}}}};rp.default=uO});var Oy=T((HM,lO)=>{lO.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 op=T((pe,np)=>{"use strict";Object.defineProperty(pe,"__esModule",{value:!0});pe.MissingRefError=pe.ValidationError=pe.CodeGen=pe.Name=pe.nil=pe.stringify=pe.str=pe._=pe.KeywordCxt=pe.Ajv=void 0;var dO=T_(),pO=Ey(),fO=Ry(),Cy=Oy(),mO=["/properties"],ia="http://json-schema.org/draft-07/schema",Hn=class extends dO.default{_addVocabularies(){super._addVocabularies(),pO.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(fO.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Cy,mO):Cy;this.addMetaSchema(e,ia,!1),this.refs["http://json-schema.org/schema"]=ia}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ia)?ia:void 0)}};pe.Ajv=Hn;np.exports=pe=Hn;np.exports.Ajv=Hn;Object.defineProperty(pe,"__esModule",{value:!0});pe.default=Hn;var hO=Ko();Object.defineProperty(pe,"KeywordCxt",{enumerable:!0,get:function(){return hO.KeywordCxt}});var qn=q();Object.defineProperty(pe,"_",{enumerable:!0,get:function(){return qn._}});Object.defineProperty(pe,"str",{enumerable:!0,get:function(){return qn.str}});Object.defineProperty(pe,"stringify",{enumerable:!0,get:function(){return qn.stringify}});Object.defineProperty(pe,"nil",{enumerable:!0,get:function(){return qn.nil}});Object.defineProperty(pe,"Name",{enumerable:!0,get:function(){return qn.Name}});Object.defineProperty(pe,"CodeGen",{enumerable:!0,get:function(){return qn.CodeGen}});var gO=Li();Object.defineProperty(pe,"ValidationError",{enumerable:!0,get:function(){return gO.default}});var _O=Jo();Object.defineProperty(pe,"MissingRefError",{enumerable:!0,get:function(){return _O.default}})});var Ly=T(Mt=>{"use strict";Object.defineProperty(Mt,"__esModule",{value:!0});Mt.formatNames=Mt.fastFormats=Mt.fullFormats=void 0;function jt(t,e){return{validate:t,compare:e}}Mt.fullFormats={date:jt(Ay,cp),time:jt(ip(!0),up),"date-time":jt(Iy(!0),My),"iso-time":jt(ip(),jy),"iso-date-time":jt(Iy(),Dy),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:bO,"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:OO,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:wO,int32:{type:"number",validate:$O},int64:{type:"number",validate:PO},float:{type:"number",validate:Ny},double:{type:"number",validate:Ny},password:!0,binary:!0};Mt.fastFormats={...Mt.fullFormats,date:jt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,cp),time:jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,up),"date-time":jt(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,My),"iso-time":jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,jy),"iso-date-time":jt(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Dy),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Mt.formatNames=Object.keys(Mt.fullFormats);function yO(t){return t%4===0&&(t%100!==0||t%400===0)}var vO=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,xO=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Ay(t){let e=vO.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&&yO(r)?29:xO[n])}function cp(t,e){if(t&&e)return t>e?1:t<e?-1:0}var sp=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function ip(t){return function(r){let n=sp.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 up(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 jy(t,e){if(!(t&&e))return;let r=sp.exec(t),n=sp.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 ap=/t|\s/i;function Iy(t){let e=ip(t);return function(n){let o=n.split(ap);return o.length===2&&Ay(o[0])&&e(o[1])}}function My(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Dy(t,e){if(!(t&&e))return;let[r,n]=t.split(ap),[o,s]=e.split(ap),i=cp(r,o);if(i!==void 0)return i||up(n,s)}var SO=/\/|:/,kO=/^(?:[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 bO(t){return SO.test(t)&&kO.test(t)}var zy=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function wO(t){return zy.lastIndex=0,zy.test(t)}var EO=-(2**31),TO=2**31-1;function $O(t){return Number.isInteger(t)&&t<=TO&&t>=EO}function PO(t){return Number.isInteger(t)}function Ny(){return!0}var RO=/[^\\]\\Z/;function OO(t){if(RO.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Zy=T(Fn=>{"use strict";Object.defineProperty(Fn,"__esModule",{value:!0});Fn.formatLimitDefinition=void 0;var CO=op(),bt=q(),yr=bt.operators,aa={formatMaximum:{okStr:"<=",ok:yr.LTE,fail:yr.GT},formatMinimum:{okStr:">=",ok:yr.GTE,fail:yr.LT},formatExclusiveMaximum:{okStr:"<",ok:yr.LT,fail:yr.GTE},formatExclusiveMinimum:{okStr:">",ok:yr.GT,fail:yr.LTE}},IO={message:({keyword:t,schemaCode:e})=>(0,bt.str)`should be ${aa[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,bt._)`{comparison: ${aa[t].okStr}, limit: ${e}}`};Fn.formatLimitDefinition={keyword:Object.keys(aa),type:"string",schemaType:"string",$data:!0,error:IO,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 CO.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,bt._)`${f}[${c.schemaCode}]`);t.fail$data((0,bt.or)((0,bt._)`typeof ${m} != "object"`,(0,bt._)`${m} instanceof RegExp`,(0,bt._)`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=a.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${o}": format "${f}" does not define "compare" function`);let p=e.scopeValue("formats",{key:f,ref:m,code:i.code.formats?(0,bt._)`${i.code.formats}${(0,bt.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,bt._)`${f}.compare(${r}, ${n}) ${aa[o].fail} 0`}},dependencies:["format"]};var zO=t=>(t.addKeyword(Fn.formatLimitDefinition),t);Fn.default=zO});var Fy=T((cs,qy)=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});var Bn=Ly(),NO=Zy(),lp=q(),Uy=new lp.Name("fullFormats"),AO=new lp.Name("fastFormats"),dp=(t,e={keywords:!0})=>{if(Array.isArray(e))return Hy(t,e,Bn.fullFormats,Uy),t;let[r,n]=e.mode==="fast"?[Bn.fastFormats,AO]:[Bn.fullFormats,Uy],o=e.formats||Bn.formatNames;return Hy(t,o,r,n),e.keywords&&(0,NO.default)(t),t};dp.get=(t,e="full")=>{let n=(e==="fast"?Bn.fastFormats:Bn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function Hy(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,lp._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}qy.exports=cs=dp;Object.defineProperty(cs,"__esModule",{value:!0});cs.default=dp});var Pv,Rv=be(()=>{"use strict";Pv={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot",Codex:"codex","codex-mcp-client":"codex","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed"}});function ds(t,e){let r=Sa[e],n=Tp(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function Tp(t,e){if(e){let r=Sa[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}var Tt,_C,Ov,Sa,tL,rL,Cv=be(()=>{"use strict";Tt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},_C=["Bash","WebFetch","Read","Grep","Agent","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"],Ov=_C.join("|"),Sa={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},tL=[Tt.PRE_TOOL_USE,Tt.SESSION_START],rL=[Tt.POST_TOOL_USE,Tt.PRE_COMPACT,Tt.USER_PROMPT_SUBMIT]});var Pp={};Be(Pp,{ClaudeCodeAdapter:()=>$p});import{createHash as Iv}from"node:crypto";import{readFileSync as Kn,writeFileSync as ka,mkdirSync as yC,copyFileSync as vC,accessSync as zv,readdirSync as xC,chmodSync as SC,constants as Nv}from"node:fs";import{resolve as Dt,join as ps}from"node:path";import{homedir as sn}from"node:os";var $p,Rp=be(()=>{"use strict";Cv();$p=class{name="Claude Code";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{updatedInput:e.updatedInput};if(e.decision==="context"&&e.additionalContext)return{additionalContext:e.additionalContext};if(e.decision==="ask")return{permissionDecision:"ask"}}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),e.updatedOutput&&(r.updatedMCPToolOutput=e.updatedOutput),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Dt(sn(),".claude","settings.json")}getSessionDir(){let e=ps(sn(),".claude","context-mode","sessions");return yC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Iv("sha256").update(e).digest("hex").slice(0,16);return ps(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Iv("sha256").update(e).digest("hex").slice(0,16);return ps(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){let r=`node ${e}/hooks/pretooluse.mjs`;return{PreToolUse:["Bash","WebFetch","Read","Grep","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].map(o=>({matcher:o,hooks:[{type:"command",command:r}]})),PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{let e=Kn(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){ka(this.getSettingsPath(),JSON.stringify(e,null,2)+`
10
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"PreToolUse hook",status:"fail",message:"Could not read ~/.claude/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=this.readPluginHooks(e),i=this.checkHookType(o,s,Tt.PRE_TOOL_USE);r.push({check:"PreToolUse hook",status:i?"pass":"fail",message:i?"PreToolUse hook configured":"No PreToolUse hooks found",fix:i?void 0:"context-mode upgrade"});let a=this.checkHookType(o,s,Tt.SESSION_START);return r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"No SessionStart hooks found",fix:a?void 0:"context-mode upgrade"}),r}readPluginHooks(e){let r=[ps(e,"hooks","hooks.json"),ps(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=Kn(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=>ds(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>ds(i,n)))}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read settings.json"};let r=e.enabledPlugins;if(!r)return{check:"Plugin registration",status:"warn",message:"No enabledPlugins section found (might be using standalone MCP mode)"};let n=Object.keys(r).find(o=>o.startsWith("context-mode"));return n&&r[n]?{check:"Plugin registration",status:"pass",message:`Plugin enabled: ${n}`}:{check:"Plugin registration",status:"warn",message:"context-mode not in enabledPlugins (might be using standalone MCP mode)"}}getInstalledVersion(){try{let r=Dt(sn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Kn(r,"utf-8")).plugins??{};for(let[s,i]of Object.entries(o)){if(!s.toLowerCase().includes("context-mode"))continue;let a=i;if(a.length>0&&typeof a[0].version=="string")return a[0].version}}catch{}let e=[Dt(sn(),".claude"),Dt(sn(),".config","claude")];for(let r of e){let n=Dt(r,"plugins","cache","context-mode","context-mode");try{let s=xC(n).filter(i=>/^\d+\.\d+\.\d+/.test(i)).sort((i,a)=>{let c=i.split(".").map(Number),u=a.split(".").map(Number);for(let l=0;l<3;l++)if((c[l]??0)!==(u[l]??0))return(c[l]??0)-(u[l]??0);return 0});if(s.length>0)return s[s.length-1]}catch{}}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[],s=[Tt.PRE_TOOL_USE,Tt.SESSION_START];for(let i of s){let a=Tp(i,e);if(i===Tt.PRE_TOOL_USE){let c={matcher:Ov,hooks:[{type:"command",command:a}]},u=n.PreToolUse;if(u&&Array.isArray(u)){let l=u.findIndex(d=>ds(d,i));l>=0?(u[l]=c,o.push(`Updated existing ${i} hook entry`)):(u.push(c),o.push(`Added ${i} hook entry`)),n.PreToolUse=u}else n.PreToolUse=[c],o.push(`Created ${i} hooks section`)}else{let c={matcher:"",hooks:[{type:"command",command:a}]},u=n[i];if(u&&Array.isArray(u)){let l=u.findIndex(d=>ds(d,i));l>=0?(u[l]=c,o.push(`Updated existing ${i} hook entry`)):(u.push(c),o.push(`Added ${i} hook entry`)),n[i]=u}else n[i]=[c],o.push(`Created ${i} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{zv(e,Nv.R_OK);let r=e+".bak";return vC(e,r),r}catch{return null}}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(Sa)){let o=Dt(e,"hooks",n);try{zv(o,Nv.R_OK),SC(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=Dt(sn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Kn(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();ka(n,JSON.stringify(o,null,2)+`
11
+ `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"CLAUDE.md",globalPath:Dt(sn(),".claude","CLAUDE.md"),projectRelativePath:"CLAUDE.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Dt(e,n.projectRelativePath),s=Dt(r,"configs","claude-code",n.fileName);try{let i=Kn(s,"utf-8");try{let a=Kn(o,"utf-8");return a.includes("context-mode")?null:(ka(o,a.trimEnd()+`
12
12
 
13
- `+i,"utf-8"),o)}catch{return xa(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return e.session_id?e.session_id:process.env.CLAUDE_SESSION_ID?process.env.CLAUDE_SESSION_ID:`pid-${process.ppid}`}}});function Vn(t,e){let r=Ep[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var ke,Ep,nL,oL,Rv=be(()=>{"use strict";ke={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},Ep={[ke.BEFORE_TOOL]:"beforetool.mjs",[ke.AFTER_TOOL]:"aftertool.mjs",[ke.PRE_COMPRESS]:"precompress.mjs",[ke.SESSION_START]:"sessionstart.mjs"},nL=[ke.BEFORE_TOOL,ke.SESSION_START],oL=[ke.AFTER_TOOL,ke.PRE_COMPRESS]});var Nv={};Be(Nv,{GeminiCLIAdapter:()=>Tp});import{createHash as Ov}from"node:crypto";import{readFileSync as ds,writeFileSync as ka,mkdirSync as Cv,copyFileSync as hC,accessSync as Iv,chmodSync as gC,constants as zv}from"node:fs";import{resolve as xr,join as Sa}from"node:path";import{homedir as Kn}from"node:os";var Tp,Av=be(()=>{"use strict";Rv();Tp=class{name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return xr(Kn(),".gemini","settings.json")}getSessionDir(){let e=Sa(Kn(),".gemini","context-mode","sessions");return Cv(e,{recursive:!0}),e}getSessionDBPath(e){let r=Ov("sha256").update(e).digest("hex").slice(0,16);return Sa(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Ov("sha256").update(e).digest("hex").slice(0,16);return Sa(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ke.BEFORE_TOOL]:[{matcher:"",hooks:[{type:"command",command:Vn(ke.BEFORE_TOOL,e)}]}],[ke.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Vn(ke.AFTER_TOOL,e)}]}],[ke.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Vn(ke.PRE_COMPRESS,e)}]}],[ke.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Vn(ke.SESSION_START,e)}]}]}}readSettings(){try{let e=ds(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=xr(Kn(),".gemini");Cv(r,{recursive:!0}),ka(this.getSettingsPath(),JSON.stringify(e,null,2)+`
14
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"BeforeTool hook",status:"fail",message:"Could not read ~/.gemini/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=o?.[ke.BEFORE_TOOL];if(s&&s.length>0){let a=s.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"BeforeTool hook",status:a?"pass":"fail",message:a?"BeforeTool hook configured":"BeforeTool exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"BeforeTool hook",status:"fail",message:"No BeforeTool hooks found",fix:"context-mode upgrade"});let i=o?.[ke.SESSION_START];if(i&&i.length>0){let a=i.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"SessionStart exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"SessionStart hook",status:"fail",message:"No SessionStart hooks found",fix:"context-mode upgrade"});return r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read ~/.gemini/settings.json"};let r=e.extensions;return r&&(Array.isArray(r)?r.some(o=>typeof o=="string"&&o.includes("context-mode")):Object.keys(r).some(o=>o.includes("context-mode")))?{check:"Plugin registration",status:"pass",message:"context-mode found in extensions"}:{check:"Plugin registration",status:"warn",message:"context-mode not found in extensions (might be using standalone MCP mode)"}}getInstalledVersion(){try{let e=xr(Kn(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(ds(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[],s=[{name:ke.BEFORE_TOOL},{name:ke.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:Vn(i.name,e)}]},u=n[i.name];if(u&&Array.isArray(u)){let l=u.findIndex(d=>d.hooks?.some(m=>m.command?.includes("context-mode")));l>=0?(u[l]=c,o.push(`Updated existing ${i.name} hook entry`)):(u.push(c),o.push(`Added ${i.name} hook entry`)),n[i.name]=u}else n[i.name]=[c],o.push(`Created ${i.name} hooks section`)}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{Iv(e,zv.R_OK);let r=e+".bak";return hC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=Sa(e,"hooks","gemini-cli");for(let o of Object.values(Ep)){let s=xr(n,o);try{Iv(s,zv.R_OK),gC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=xr(Kn(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(ds(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),ka(n,JSON.stringify(o,null,2)+`
15
- `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:xr(Kn(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=xr(e,n.projectRelativePath),s=xr(r,"configs","gemini-cli",n.fileName);try{let i=ds(s,"utf-8");try{let a=ds(o,"utf-8");return a.includes("context-mode")?null:(ka(o,a.trimEnd()+`
13
+ `+i,"utf-8"),o)}catch{return ka(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return e.session_id?e.session_id:process.env.CLAUDE_SESSION_ID?process.env.CLAUDE_SESSION_ID:`pid-${process.ppid}`}}});function Jn(t,e){let r=Op[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var Se,Op,uL,lL,Av=be(()=>{"use strict";Se={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},Op={[Se.BEFORE_TOOL]:"beforetool.mjs",[Se.AFTER_TOOL]:"aftertool.mjs",[Se.PRE_COMPRESS]:"precompress.mjs",[Se.SESSION_START]:"sessionstart.mjs"},uL=[Se.BEFORE_TOOL,Se.SESSION_START],lL=[Se.AFTER_TOOL,Se.PRE_COMPRESS]});var Zv={};Be(Zv,{GeminiCLIAdapter:()=>Cp});import{createHash as jv}from"node:crypto";import{readFileSync as fs,writeFileSync as ba,mkdirSync as Mv,copyFileSync as kC,accessSync as Dv,chmodSync as bC,constants as Lv}from"node:fs";import{resolve as xr,join as wa}from"node:path";import{homedir as Gn}from"node:os";var Cp,Uv=be(()=>{"use strict";Av();Cp=class{name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return xr(Gn(),".gemini","settings.json")}getSessionDir(){let e=wa(Gn(),".gemini","context-mode","sessions");return Mv(e,{recursive:!0}),e}getSessionDBPath(e){let r=jv("sha256").update(e).digest("hex").slice(0,16);return wa(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=jv("sha256").update(e).digest("hex").slice(0,16);return wa(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[Se.BEFORE_TOOL]:[{matcher:"",hooks:[{type:"command",command:Jn(Se.BEFORE_TOOL,e)}]}],[Se.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Jn(Se.AFTER_TOOL,e)}]}],[Se.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Jn(Se.PRE_COMPRESS,e)}]}],[Se.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Jn(Se.SESSION_START,e)}]}]}}readSettings(){try{let e=fs(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=xr(Gn(),".gemini");Mv(r,{recursive:!0}),ba(this.getSettingsPath(),JSON.stringify(e,null,2)+`
14
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"BeforeTool hook",status:"fail",message:"Could not read ~/.gemini/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=o?.[Se.BEFORE_TOOL];if(s&&s.length>0){let a=s.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"BeforeTool hook",status:a?"pass":"fail",message:a?"BeforeTool hook configured":"BeforeTool exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"BeforeTool hook",status:"fail",message:"No BeforeTool hooks found",fix:"context-mode upgrade"});let i=o?.[Se.SESSION_START];if(i&&i.length>0){let a=i.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"SessionStart exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"SessionStart hook",status:"fail",message:"No SessionStart hooks found",fix:"context-mode upgrade"});return r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read ~/.gemini/settings.json"};let r=e.extensions;return r&&(Array.isArray(r)?r.some(o=>typeof o=="string"&&o.includes("context-mode")):Object.keys(r).some(o=>o.includes("context-mode")))?{check:"Plugin registration",status:"pass",message:"context-mode found in extensions"}:{check:"Plugin registration",status:"warn",message:"context-mode not found in extensions (might be using standalone MCP mode)"}}getInstalledVersion(){try{let e=xr(Gn(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(fs(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[],s=[{name:Se.BEFORE_TOOL},{name:Se.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:Jn(i.name,e)}]},u=n[i.name];if(u&&Array.isArray(u)){let l=u.findIndex(d=>d.hooks?.some(m=>m.command?.includes("context-mode")));l>=0?(u[l]=c,o.push(`Updated existing ${i.name} hook entry`)):(u.push(c),o.push(`Added ${i.name} hook entry`)),n[i.name]=u}else n[i.name]=[c],o.push(`Created ${i.name} hooks section`)}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{Dv(e,Lv.R_OK);let r=e+".bak";return kC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=wa(e,"hooks","gemini-cli");for(let o of Object.values(Op)){let s=xr(n,o);try{Dv(s,Lv.R_OK),bC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=xr(Gn(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(fs(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),ba(n,JSON.stringify(o,null,2)+`
15
+ `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:xr(Gn(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=xr(e,n.projectRelativePath),s=xr(r,"configs","gemini-cli",n.fileName);try{let i=fs(s,"utf-8");try{let a=fs(o,"utf-8");return a.includes("context-mode")?null:(ba(o,a.trimEnd()+`
16
16
 
17
- `+i,"utf-8"),o)}catch{return ka(o,i,"utf-8"),o}}catch{return null}}getProjectDir(){return process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var sn,dL,pL,jv=be(()=>{"use strict";sn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},dL=[sn.BEFORE,sn.AFTER],pL=[sn.COMPACTING]});var Dv={};Be(Dv,{OpenCodeAdapter:()=>Pp});import{createHash as Mv}from"node:crypto";import{readFileSync as ba,writeFileSync as $p,mkdirSync as _C,copyFileSync as yC,accessSync as vC,constants as xC}from"node:fs";import{resolve as Lt,join as ps}from"node:path";import{homedir as fs}from"node:os";var Pp,Lv=be(()=>{"use strict";jv();Pp=class{name="OpenCode";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")throw new Error(e.reason??"Blocked by context-mode hook");if(e.decision==="modify"&&e.updatedInput)return{args:e.updatedInput};if(e.decision==="ask")throw new Error(e.reason??"Action requires user confirmation (security policy)")}formatPostToolUseResponse(e){let r={};return e.updatedOutput&&(r.output=e.updatedOutput),e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Lt("opencode.json")}getSessionDir(){let e=ps(fs(),".config","opencode","context-mode","sessions");return _C(e,{recursive:!0}),e}getSessionDBPath(e){let r=Mv("sha256").update(e).digest("hex").slice(0,16);return ps(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Mv("sha256").update(e).digest("hex").slice(0,16);return ps(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[sn.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[sn.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[sn.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[Lt("opencode.json"),Lt(".opencode","opencode.json"),ps(fs(),".config","opencode","opencode.json")];for(let r of e)try{let n=ba(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=Lt("opencode.json");$p(r,JSON.stringify(e,null,2)+`
18
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read opencode.json",fix:"context-mode upgrade"}),r;let o=n.plugin;if(o&&Array.isArray(o)){let s=o.some(i=>i.includes("context-mode"));r.push({check:"Plugin registration",status:s?"pass":"fail",message:s?"context-mode found in plugin array":"context-mode not found in plugin array",fix:s?void 0:"context-mode upgrade"})}else r.push({check:"Plugin registration",status:"fail",message:"No plugin array found in opencode.json",fix:"context-mode upgrade"});return r.push({check:"SessionStart hook",status:"warn",message:"SessionStart not supported in OpenCode (see issues #14808, #5409)"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read opencode.json"};let r=e.plugin;return r&&Array.isArray(r)&&r.some(o=>o.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in opencode.json plugin array",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=Lt(fs(),".cache","opencode","node_modules","context-mode","package.json"),r=JSON.parse(ba(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];return o.some(s=>s.includes("context-mode"))?n.push("context-mode already in plugin array"):(o.push("context-mode"),n.push("Added context-mode to plugin array")),r.plugin=o,this.writeSettings(r),n}backupSettings(){let e=[Lt("opencode.json"),Lt(".opencode","opencode.json"),ps(fs(),".config","opencode","opencode.json")];for(let r of e)try{vC(r,xC.R_OK);let n=r+".bak";return yC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:Lt(fs(),".config","opencode","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Lt(e,n.projectRelativePath),s=Lt(r,"configs","opencode",n.fileName);try{let i=ba(s,"utf-8");try{let a=ba(o,"utf-8");return a.includes("context-mode")?null:($p(o,a.trimEnd()+`
17
+ `+i,"utf-8"),o)}catch{return ba(o,i,"utf-8"),o}}catch{return null}}getProjectDir(){return process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var an,_L,yL,Hv=be(()=>{"use strict";an={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},_L=[an.BEFORE,an.AFTER],yL=[an.COMPACTING]});var Fv={};Be(Fv,{OpenCodeAdapter:()=>zp});import{createHash as qv}from"node:crypto";import{readFileSync as Ea,writeFileSync as Ip,mkdirSync as wC,copyFileSync as EC,accessSync as TC,constants as $C}from"node:fs";import{resolve as Lt,join as ms}from"node:path";import{homedir as hs}from"node:os";var zp,Bv=be(()=>{"use strict";Hv();zp=class{name="OpenCode";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")throw new Error(e.reason??"Blocked by context-mode hook");if(e.decision==="modify"&&e.updatedInput)return{args:e.updatedInput};if(e.decision==="ask")throw new Error(e.reason??"Action requires user confirmation (security policy)")}formatPostToolUseResponse(e){let r={};return e.updatedOutput&&(r.output=e.updatedOutput),e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Lt("opencode.json")}getSessionDir(){let e=ms(hs(),".config","opencode","context-mode","sessions");return wC(e,{recursive:!0}),e}getSessionDBPath(e){let r=qv("sha256").update(e).digest("hex").slice(0,16);return ms(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=qv("sha256").update(e).digest("hex").slice(0,16);return ms(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[an.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[an.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[an.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[Lt("opencode.json"),Lt(".opencode","opencode.json"),ms(hs(),".config","opencode","opencode.json")];for(let r of e)try{let n=Ea(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=Lt("opencode.json");Ip(r,JSON.stringify(e,null,2)+`
18
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read opencode.json",fix:"context-mode upgrade"}),r;let o=n.plugin;if(o&&Array.isArray(o)){let s=o.some(i=>i.includes("context-mode"));r.push({check:"Plugin registration",status:s?"pass":"fail",message:s?"context-mode found in plugin array":"context-mode not found in plugin array",fix:s?void 0:"context-mode upgrade"})}else r.push({check:"Plugin registration",status:"fail",message:"No plugin array found in opencode.json",fix:"context-mode upgrade"});return r.push({check:"SessionStart hook",status:"warn",message:"SessionStart not supported in OpenCode (see issues #14808, #5409)"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read opencode.json"};let r=e.plugin;return r&&Array.isArray(r)&&r.some(o=>o.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in opencode.json plugin array",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=Lt(hs(),".cache","opencode","node_modules","context-mode","package.json"),r=JSON.parse(Ea(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];return o.some(s=>s.includes("context-mode"))?n.push("context-mode already in plugin array"):(o.push("context-mode"),n.push("Added context-mode to plugin array")),r.plugin=o,this.writeSettings(r),n}backupSettings(){let e=[Lt("opencode.json"),Lt(".opencode","opencode.json"),ms(hs(),".config","opencode","opencode.json")];for(let r of e)try{TC(r,$C.R_OK);let n=r+".bak";return EC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:Lt(hs(),".config","opencode","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Lt(e,n.projectRelativePath),s=Lt(r,"configs","opencode",n.fileName);try{let i=Ea(s,"utf-8");try{let a=Ea(o,"utf-8");return a.includes("context-mode")?null:(Ip(o,a.trimEnd()+`
19
19
 
20
- `+i,"utf-8"),o)}catch{return $p(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var an,vL,xL,Zv=be(()=>{"use strict";an={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},vL=[an.TOOL_CALL_BEFORE,an.TOOL_CALL_AFTER],xL=[an.COMMAND_NEW]});var Hv={};Be(Hv,{OpenClawAdapter:()=>Op});import{createHash as Uv}from"node:crypto";import{readFileSync as Jn,writeFileSync as Rp,mkdirSync as kC,copyFileSync as SC,accessSync as bC,constants as wC}from"node:fs";import{resolve as mt,join as ms}from"node:path";import{homedir as hs}from"node:os";var Op,qv=be(()=>{"use strict";Zv();Op=class{name="OpenClaw";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCLAW_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},toolOutput:r.output??r.tool_output,isError:r.isError??r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.OPENCLAW_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCLAW_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.OPENCLAW_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{block:!0,blockReason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{params:e.updatedInput};if(e.decision==="ask")return{block:!0,blockReason:e.reason??"Action requires user confirmation (security policy)"};e.decision==="context"&&e.additionalContext}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return mt("openclaw.json")}getSessionDir(){let e=ms(hs(),".openclaw","context-mode","sessions");return kC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Uv("sha256").update(e).digest("hex").slice(0,16);return ms(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Uv("sha256").update(e).digest("hex").slice(0,16);return ms(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[an.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[an.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[an.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[mt("openclaw.json"),mt(".openclaw","openclaw.json"),ms(hs(),".openclaw","openclaw.json")];for(let r of e)try{let n=Jn(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=mt("openclaw.json");Rp(r,JSON.stringify(e,null,2)+`
21
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read openclaw.json",fix:"context-mode upgrade"}),r;let o=n.plugins,s=o?.entries;if(s){let a=Object.keys(s).some(c=>c.includes("context-mode"));if(r.push({check:"Plugin registration",status:a?"pass":"fail",message:a?"context-mode found in plugins.entries":"context-mode not found in plugins.entries",fix:a?void 0:"context-mode upgrade"}),a){let u=s["context-mode"]?.enabled!==!1;r.push({check:"Plugin enabled",status:u?"pass":"warn",message:u?"context-mode plugin is enabled":"context-mode plugin is disabled"})}}else r.push({check:"Plugin registration",status:"fail",message:"No plugins.entries found in openclaw.json",fix:"context-mode upgrade"});return o?.slots?.contextEngine==="context-mode"?r.push({check:"Context engine",status:"pass",message:"context-mode registered as context engine (owns compaction)"}):r.push({check:"Context engine",status:"warn",message:"context-mode not set as context engine \u2014 compaction will use default engine"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read openclaw.json"};let n=e.plugins?.entries;return n&&Object.keys(n).some(s=>s.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugins.entries"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in openclaw.json plugins.entries",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=mt(hs(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Jn(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=mt("node_modules","context-mode","package.json"),r=JSON.parse(Jn(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[];r.plugins||(r.plugins={});let o=r.plugins;o.entries||(o.entries={});let s=o.entries;if(!s["context-mode"])s["context-mode"]={enabled:!0},n.push("Added context-mode to plugins.entries");else{let a=s["context-mode"];a.enabled===!1?(a.enabled=!0,n.push("Enabled context-mode plugin")):n.push("context-mode already configured in plugins.entries")}o.slots||(o.slots={});let i=o.slots;return i.contextEngine?i.contextEngine!=="context-mode"&&n.push(`Context engine already set to "${i.contextEngine}" \u2014 not overwriting`):(i.contextEngine="context-mode",n.push("Set context-mode as context engine (owns compaction)")),this.writeSettings(r),n}backupSettings(){let e=[mt("openclaw.json"),mt(".openclaw","openclaw.json"),ms(hs(),".openclaw","openclaw.json")];for(let r of e)try{bC(r,wC.R_OK);let n=r+".bak";return SC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:mt(hs(),".openclaw","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=mt(e,n.projectRelativePath),s=mt(r,"configs","openclaw",n.fileName);try{let i;try{i=Jn(s,"utf-8")}catch{let a=mt(r,"configs","opencode",n.fileName);i=Jn(a,"utf-8")}try{let a=Jn(o,"utf-8");return a.includes("context-mode")?null:(Rp(o,a.trimEnd()+`
20
+ `+i,"utf-8"),o)}catch{return Ip(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var cn,EL,TL,Vv=be(()=>{"use strict";cn={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},EL=[cn.TOOL_CALL_BEFORE,cn.TOOL_CALL_AFTER],TL=[cn.COMMAND_NEW]});var Jv={};Be(Jv,{OpenClawAdapter:()=>Ap});import{createHash as Kv}from"node:crypto";import{readFileSync as Wn,writeFileSync as Np,mkdirSync as PC,copyFileSync as RC,accessSync as OC,constants as CC}from"node:fs";import{resolve as mt,join as gs}from"node:path";import{homedir as _s}from"node:os";var Ap,Gv=be(()=>{"use strict";Vv();Ap=class{name="OpenClaw";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCLAW_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},toolOutput:r.output??r.tool_output,isError:r.isError??r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.OPENCLAW_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCLAW_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.OPENCLAW_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{block:!0,blockReason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{params:e.updatedInput};if(e.decision==="ask")return{block:!0,blockReason:e.reason??"Action requires user confirmation (security policy)"};e.decision==="context"&&e.additionalContext}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return mt("openclaw.json")}getSessionDir(){let e=gs(_s(),".openclaw","context-mode","sessions");return PC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Kv("sha256").update(e).digest("hex").slice(0,16);return gs(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Kv("sha256").update(e).digest("hex").slice(0,16);return gs(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[cn.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[cn.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[cn.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[mt("openclaw.json"),mt(".openclaw","openclaw.json"),gs(_s(),".openclaw","openclaw.json")];for(let r of e)try{let n=Wn(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=mt("openclaw.json");Np(r,JSON.stringify(e,null,2)+`
21
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read openclaw.json",fix:"context-mode upgrade"}),r;let o=n.plugins,s=o?.entries;if(s){let a=Object.keys(s).some(c=>c.includes("context-mode"));if(r.push({check:"Plugin registration",status:a?"pass":"fail",message:a?"context-mode found in plugins.entries":"context-mode not found in plugins.entries",fix:a?void 0:"context-mode upgrade"}),a){let u=s["context-mode"]?.enabled!==!1;r.push({check:"Plugin enabled",status:u?"pass":"warn",message:u?"context-mode plugin is enabled":"context-mode plugin is disabled"})}}else r.push({check:"Plugin registration",status:"fail",message:"No plugins.entries found in openclaw.json",fix:"context-mode upgrade"});return o?.slots?.contextEngine==="context-mode"?r.push({check:"Context engine",status:"pass",message:"context-mode registered as context engine (owns compaction)"}):r.push({check:"Context engine",status:"warn",message:"context-mode not set as context engine \u2014 compaction will use default engine"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read openclaw.json"};let n=e.plugins?.entries;return n&&Object.keys(n).some(s=>s.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugins.entries"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in openclaw.json plugins.entries",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=mt(_s(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Wn(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=mt("node_modules","context-mode","package.json"),r=JSON.parse(Wn(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[];r.plugins||(r.plugins={});let o=r.plugins;o.entries||(o.entries={});let s=o.entries;if(!s["context-mode"])s["context-mode"]={enabled:!0},n.push("Added context-mode to plugins.entries");else{let a=s["context-mode"];a.enabled===!1?(a.enabled=!0,n.push("Enabled context-mode plugin")):n.push("context-mode already configured in plugins.entries")}o.slots||(o.slots={});let i=o.slots;return i.contextEngine?i.contextEngine!=="context-mode"&&n.push(`Context engine already set to "${i.contextEngine}" \u2014 not overwriting`):(i.contextEngine="context-mode",n.push("Set context-mode as context engine (owns compaction)")),this.writeSettings(r),n}backupSettings(){let e=[mt("openclaw.json"),mt(".openclaw","openclaw.json"),gs(_s(),".openclaw","openclaw.json")];for(let r of e)try{OC(r,CC.R_OK);let n=r+".bak";return RC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:mt(_s(),".openclaw","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=mt(e,n.projectRelativePath),s=mt(r,"configs","openclaw",n.fileName);try{let i;try{i=Wn(s,"utf-8")}catch{let a=mt(r,"configs","opencode",n.fileName);i=Wn(a,"utf-8")}try{let a=Wn(o,"utf-8");return a.includes("context-mode")?null:(Np(o,a.trimEnd()+`
22
22
 
23
- `+i,"utf-8"),o)}catch{return Rp(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var Vv={};Be(Vv,{CodexAdapter:()=>zp});import{createHash as Fv}from"node:crypto";import{readFileSync as gs,writeFileSync as Bv,mkdirSync as EC,copyFileSync as TC,accessSync as $C,constants as PC}from"node:fs";import{resolve as _s,join as Cp,dirname as RC}from"node:path";import{fileURLToPath as OC}from"node:url";import{homedir as Ip}from"node:os";var zp,Kv=be(()=>{"use strict";zp=class{name="Codex CLI";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Codex CLI does not support hooks")}parsePostToolUseInput(e){throw new Error("Codex CLI does not support hooks")}parsePreCompactInput(e){throw new Error("Codex CLI does not support hooks")}parseSessionStartInput(e){throw new Error("Codex CLI does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return _s(Ip(),".codex","config.toml")}getSessionDir(){let e=Cp(Ip(),".codex","context-mode","sessions");return EC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Fv("sha256").update(e).digest("hex").slice(0,16);return Cp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Fv("sha256").update(e).digest("hex").slice(0,16);return Cp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{return{_raw_toml:gs(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Codex CLI does not support hooks (PRs #2904, #9796 closed without merge). Only MCP integration is available."}]}checkPluginRegistration(){try{let e=gs(this.getSettingsPath(),"utf-8"),r=e.includes("context-mode"),n=e.includes("[mcp_servers]")||e.includes("[mcp_servers.");return r&&n?{check:"MCP registration",status:"pass",message:"context-mode found in [mcp_servers] config"}:n?{check:"MCP registration",status:"fail",message:"[mcp_servers] section exists but context-mode not found",fix:"Add context-mode to [mcp_servers] in ~/.codex/config.toml"}:{check:"MCP registration",status:"fail",message:"No [mcp_servers] section in config.toml",fix:"Add [mcp_servers.context-mode] to ~/.codex/config.toml"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.codex/config.toml"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{$C(e,PC.R_OK);let r=e+".bak";return TC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:_s(Ip(),".codex","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=_s(e,n.projectRelativePath),s=_s(r,"configs","codex",n.fileName);try{let i=gs(s,"utf-8");try{let a=gs(o,"utf-8");return a.includes("context-mode")?null:(Bv(o,a.trimEnd()+`
23
+ `+i,"utf-8"),o)}catch{return Np(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var Xv={};Be(Xv,{CodexAdapter:()=>Dp});import{createHash as Wv}from"node:crypto";import{readFileSync as ys,writeFileSync as Yv,mkdirSync as IC,copyFileSync as zC,accessSync as NC,constants as AC}from"node:fs";import{resolve as vs,join as jp,dirname as jC}from"node:path";import{fileURLToPath as MC}from"node:url";import{homedir as Mp}from"node:os";var Dp,Qv=be(()=>{"use strict";Dp=class{name="Codex CLI";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Codex CLI does not support hooks")}parsePostToolUseInput(e){throw new Error("Codex CLI does not support hooks")}parsePreCompactInput(e){throw new Error("Codex CLI does not support hooks")}parseSessionStartInput(e){throw new Error("Codex CLI does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return vs(Mp(),".codex","config.toml")}getSessionDir(){let e=jp(Mp(),".codex","context-mode","sessions");return IC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Wv("sha256").update(e).digest("hex").slice(0,16);return jp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Wv("sha256").update(e).digest("hex").slice(0,16);return jp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{return{_raw_toml:ys(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Codex CLI does not support hooks (PRs #2904, #9796 closed without merge). Only MCP integration is available."}]}checkPluginRegistration(){try{let e=ys(this.getSettingsPath(),"utf-8"),r=e.includes("context-mode"),n=e.includes("[mcp_servers]")||e.includes("[mcp_servers.");return r&&n?{check:"MCP registration",status:"pass",message:"context-mode found in [mcp_servers] config"}:n?{check:"MCP registration",status:"fail",message:"[mcp_servers] section exists but context-mode not found",fix:"Add context-mode to [mcp_servers] in ~/.codex/config.toml"}:{check:"MCP registration",status:"fail",message:"No [mcp_servers] section in config.toml",fix:"Add [mcp_servers.context-mode] to ~/.codex/config.toml"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.codex/config.toml"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{NC(e,AC.R_OK);let r=e+".bak";return zC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:vs(Mp(),".codex","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=vs(e,n.projectRelativePath),s=vs(r,"configs","codex",n.fileName);try{let i=ys(s,"utf-8");try{let a=ys(o,"utf-8");return a.includes("context-mode")?null:(Yv(o,a.trimEnd()+`
24
24
 
25
- `+i,"utf-8"),o)}catch{return Bv(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=_s(RC(OC(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return gs(e,"utf-8")}catch{return`# context-mode
25
+ `+i,"utf-8"),o)}catch{return Yv(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=vs(jC(MC(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return ys(e,"utf-8")}catch{return`# context-mode
26
26
 
27
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});function Gn(t,e){let r=wa[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/${r}"`:`context-mode hook vscode-copilot ${t.toLowerCase()}`}var se,wa,zL,NL,Jv=be(()=>{"use strict";se={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},wa={[se.PRE_TOOL_USE]:"pretooluse.mjs",[se.POST_TOOL_USE]:"posttooluse.mjs",[se.PRE_COMPACT]:"precompact.mjs",[se.SESSION_START]:"sessionstart.mjs"},zL=[se.PRE_TOOL_USE,se.SESSION_START],NL=[se.POST_TOOL_USE,se.PRE_COMPACT]});var Wv={};Be(Wv,{VSCodeCopilotAdapter:()=>Mp});import{createHash as Gv}from"node:crypto";import{readFileSync as Wn,writeFileSync as Ea,mkdirSync as Ta,copyFileSync as CC,accessSync as Np,existsSync as IC,chmodSync as zC,constants as Ap}from"node:fs";import{resolve as et,join as kr}from"node:path";import{homedir as jp}from"node:os";var Mp,Yv=be(()=>{"use strict";Jv();Mp=class{name="VS Code Copilot";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:se.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:se.PRE_TOOL_USE,additionalContext:e.additionalContext}};if(e.decision==="ask")return{permissionDecision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{hookSpecificOutput:{hookEventName:se.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:se.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return et(".github","hooks","context-mode.json")}getSessionDir(){let e=et(".github","context-mode","sessions"),r=kr(jp(),".vscode","context-mode","sessions"),n=IC(et(".github"))?e:r;return Ta(n,{recursive:!0}),n}getSessionDBPath(e){let r=Gv("sha256").update(e).digest("hex").slice(0,16);return kr(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Gv("sha256").update(e).digest("hex").slice(0,16);return kr(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[se.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Gn(se.PRE_TOOL_USE,e)}]}],[se.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Gn(se.POST_TOOL_USE,e)}]}],[se.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:Gn(se.PRE_COMPACT,e)}]}],[se.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Gn(se.SESSION_START,e)}]}]}}readSettings(){let e=[this.getSettingsPath(),et(".claude","settings.json")];for(let r of e)try{let n=Wn(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath(),n=et(".github","hooks");Ta(n,{recursive:!0}),Ea(r,JSON.stringify(e,null,2)+`
28
- `,"utf-8")}validateHooks(e){let r=[],n=et(".github","hooks");try{Np(n,Ap.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=et(n,"context-mode.json");try{let s=Wn(o,"utf-8"),a=JSON.parse(s).hooks;a?.[se.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in context-mode.json",fix:"context-mode upgrade"}),a?.[se.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in context-mode.json",fix:"context-mode upgrade"})}catch{r.push({check:"Hook configuration",status:"fail",message:"Could not read .github/hooks/context-mode.json",fix:"context-mode upgrade"})}return r.push({check:"API stability",status:"warn",message:"VS Code Copilot hooks are in preview \u2014 API may change without notice"}),r.push({check:"Matcher support",status:"warn",message:"Matchers are parsed but IGNORED \u2014 all hooks fire on all tools"}),r}checkPluginRegistration(){try{let e=et(".vscode","mcp.json"),r=Wn(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=[kr(jp(),".vscode","extensions"),kr(jp(),".vscode-insiders","extensions")];for(let r of e)try{let n=Wn(kr(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}configureAllHooks(e){let r=[],n={hooks:{}},o=n.hooks,s=[se.PRE_TOOL_USE,se.POST_TOOL_USE,se.PRE_COMPACT,se.SESSION_START];for(let c of s)wa[c]&&(o[c]=[{matcher:"",hooks:[{type:"command",command:Gn(c,e)}]}],r.push(`Configured ${c} hook`));let i=et(".github","hooks");Ta(i,{recursive:!0});let a=et(i,"context-mode.json");return Ea(a,JSON.stringify(n,null,2)+`
29
- `,"utf-8"),r.push(`Wrote hook config to ${a}`),r}backupSettings(){let e=this.getSettingsPath();try{Np(e,Ap.R_OK);let r=e+".bak";return CC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=kr(e,"hooks","vscode-copilot");for(let o of Object.values(wa)){let s=et(n,o);try{Np(s,Ap.R_OK),zC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"copilot-instructions.md",globalPath:"",projectRelativePath:kr(".github","copilot-instructions.md")}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=et(e,n.projectRelativePath),s=et(r,"configs","vscode-copilot",n.fileName);try{let i=Wn(s,"utf-8");Ta(et(e,".github"),{recursive:!0});try{let a=Wn(o,"utf-8");return a.includes("context-mode")?null:(Ea(o,a.trimEnd()+`
27
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});function Yn(t,e){let r=Ta[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/${r}"`:`context-mode hook vscode-copilot ${t.toLowerCase()}`}var se,Ta,LL,ZL,ex=be(()=>{"use strict";se={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},Ta={[se.PRE_TOOL_USE]:"pretooluse.mjs",[se.POST_TOOL_USE]:"posttooluse.mjs",[se.PRE_COMPACT]:"precompact.mjs",[se.SESSION_START]:"sessionstart.mjs"},LL=[se.PRE_TOOL_USE,se.SESSION_START],ZL=[se.POST_TOOL_USE,se.PRE_COMPACT]});var rx={};Be(rx,{VSCodeCopilotAdapter:()=>Hp});import{createHash as tx}from"node:crypto";import{readFileSync as Xn,writeFileSync as $a,mkdirSync as Pa,copyFileSync as DC,accessSync as Lp,existsSync as LC,chmodSync as ZC,constants as Zp}from"node:fs";import{resolve as et,join as Sr}from"node:path";import{homedir as Up}from"node:os";var Hp,nx=be(()=>{"use strict";ex();Hp=class{name="VS Code Copilot";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:se.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:se.PRE_TOOL_USE,additionalContext:e.additionalContext}};if(e.decision==="ask")return{permissionDecision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{hookSpecificOutput:{hookEventName:se.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:se.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return et(".github","hooks","context-mode.json")}getSessionDir(){let e=et(".github","context-mode","sessions"),r=Sr(Up(),".vscode","context-mode","sessions"),n=LC(et(".github"))?e:r;return Pa(n,{recursive:!0}),n}getSessionDBPath(e){let r=tx("sha256").update(e).digest("hex").slice(0,16);return Sr(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=tx("sha256").update(e).digest("hex").slice(0,16);return Sr(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[se.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Yn(se.PRE_TOOL_USE,e)}]}],[se.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Yn(se.POST_TOOL_USE,e)}]}],[se.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:Yn(se.PRE_COMPACT,e)}]}],[se.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Yn(se.SESSION_START,e)}]}]}}readSettings(){let e=[this.getSettingsPath(),et(".claude","settings.json")];for(let r of e)try{let n=Xn(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath(),n=et(".github","hooks");Pa(n,{recursive:!0}),$a(r,JSON.stringify(e,null,2)+`
28
+ `,"utf-8")}validateHooks(e){let r=[],n=et(".github","hooks");try{Lp(n,Zp.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=et(n,"context-mode.json");try{let s=Xn(o,"utf-8"),a=JSON.parse(s).hooks;a?.[se.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in context-mode.json",fix:"context-mode upgrade"}),a?.[se.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in context-mode.json",fix:"context-mode upgrade"})}catch{r.push({check:"Hook configuration",status:"fail",message:"Could not read .github/hooks/context-mode.json",fix:"context-mode upgrade"})}return r.push({check:"API stability",status:"warn",message:"VS Code Copilot hooks are in preview \u2014 API may change without notice"}),r.push({check:"Matcher support",status:"warn",message:"Matchers are parsed but IGNORED \u2014 all hooks fire on all tools"}),r}checkPluginRegistration(){try{let e=et(".vscode","mcp.json"),r=Xn(e,"utf-8"),o=JSON.parse(r).servers;return o&&Object.keys(o).some(i=>i.includes("context-mode"))?{check:"MCP registration",status:"pass",message:"context-mode found in .vscode/mcp.json"}:{check:"MCP registration",status:"fail",message:"context-mode not found in .vscode/mcp.json",fix:"Add context-mode server to .vscode/mcp.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read .vscode/mcp.json"}}}getInstalledVersion(){let e=[Sr(Up(),".vscode","extensions"),Sr(Up(),".vscode-insiders","extensions")];for(let r of e)try{let n=Xn(Sr(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}configureAllHooks(e){let r=[],n={hooks:{}},o=n.hooks,s=[se.PRE_TOOL_USE,se.POST_TOOL_USE,se.PRE_COMPACT,se.SESSION_START];for(let c of s)Ta[c]&&(o[c]=[{matcher:"",hooks:[{type:"command",command:Yn(c,e)}]}],r.push(`Configured ${c} hook`));let i=et(".github","hooks");Pa(i,{recursive:!0});let a=et(i,"context-mode.json");return $a(a,JSON.stringify(n,null,2)+`
29
+ `,"utf-8"),r.push(`Wrote hook config to ${a}`),r}backupSettings(){let e=this.getSettingsPath();try{Lp(e,Zp.R_OK);let r=e+".bak";return DC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=Sr(e,"hooks","vscode-copilot");for(let o of Object.values(Ta)){let s=et(n,o);try{Lp(s,Zp.R_OK),ZC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"copilot-instructions.md",globalPath:"",projectRelativePath:Sr(".github","copilot-instructions.md")}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=et(e,n.projectRelativePath),s=et(r,"configs","vscode-copilot",n.fileName);try{let i=Xn(s,"utf-8");Pa(et(e,".github"),{recursive:!0});try{let a=Xn(o,"utf-8");return a.includes("context-mode")?null:($a(o,a.trimEnd()+`
30
30
 
31
- `+i,"utf-8"),o)}catch{return Ea(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}}});function $a(t,e){let r=Dp[e],n=Sr(e);return"command"in t?t.command?.includes(r)||t.command?.includes(n)||!1:t.hooks?.some(s=>s.command?.includes(r)||s.command?.includes(n))??!1}function Sr(t){return`context-mode hook cursor ${t.toLowerCase()}`}var Te,Dp,NC,Lp,Xv,Qv,ex=be(()=>{"use strict";Te={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart"},Dp={[Te.PRE_TOOL_USE]:"pretooluse.mjs",[Te.POST_TOOL_USE]:"posttooluse.mjs",[Te.SESSION_START]:"sessionstart.mjs"},NC=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],Lp=NC.join("|"),Xv=[Te.PRE_TOOL_USE],Qv=[Te.POST_TOOL_USE]});var ax={};Be(ax,{CursorAdapter:()=>Up});import{createHash as tx}from"node:crypto";import{readFileSync as Zp,writeFileSync as AC,mkdirSync as rx,copyFileSync as jC,accessSync as nx,chmodSync as MC,constants as ox,existsSync as sx}from"node:fs";import{execSync as DC}from"node:child_process";import{resolve as Yn,join as cn}from"node:path";import{homedir as Pa}from"node:os";var ix,Up,cx=be(()=>{"use strict";ex();ix="/Library/Application Support/Cursor/hooks.json",Up=class{name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}getSettingsPath(){return Yn(".cursor","hooks.json")}getSessionDir(){let e=cn(Pa(),".cursor","context-mode","sessions");return rx(e,{recursive:!0}),e}getSessionDBPath(e){let r=tx("sha256").update(e).digest("hex").slice(0,16);return cn(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=tx("sha256").update(e).digest("hex").slice(0,16);return cn(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[Te.PRE_TOOL_USE]:[{type:"command",command:Sr(Te.PRE_TOOL_USE),matcher:Lp,loop_limit:null,failClosed:!1}],[Te.POST_TOOL_USE]:[{type:"command",command:Sr(Te.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[Te.SESSION_START]:[{type:"command",command:Sr(Te.SESSION_START),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=Zp(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();rx(Yn(".cursor"),{recursive:!0}),AC(r,JSON.stringify(e,null,2)+`
32
- `,"utf-8")}validateHooks(e){let r=[],n=this.loadNativeHookConfig();if(!n)r.push({check:"Native hook config",status:"fail",message:"No readable native Cursor hook config found in .cursor/hooks.json or ~/.cursor/hooks.json",fix:"context-mode upgrade"});else{let o=n.config.hooks??{};r.push({check:"Native hook config",status:"pass",message:`Loaded ${n.path}`});for(let s of Xv){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 Qv){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 sx(ix)&&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=[Yn(".cursor","mcp.json"),cn(Pa(),".cursor","mcp.json")];for(let r of e)try{let n=Zp(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 DC("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,Te.PRE_TOOL_USE,{type:"command",command:Sr(Te.PRE_TOOL_USE),matcher:Lp,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,Te.POST_TOOL_USE,{type:"command",command:Sr(Te.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,Te.SESSION_START,{type:"command",command:Sr(Te.SESSION_START),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}backupSettings(){let e=this.getSettingsPath();try{nx(e,ox.R_OK);let r=e+".bak";return jC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=cn(e,"hooks","cursor");for(let o of Object.values(Dp)){let s=Yn(n,o);try{nx(s,ox.R_OK),MC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:"",projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){return null}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),cn(Pa(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(ix),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=Zp(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[Yn(".claude","settings.json"),Yn(".claude","settings.local.json"),cn(Pa(),".claude","settings.json")].some(r=>sx(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 px={};Be(px,{AntigravityAdapter:()=>Fp});import{createHash as ux}from"node:crypto";import{readFileSync as Xn,writeFileSync as Hp,mkdirSync as lx,copyFileSync as LC,accessSync as ZC,constants as UC}from"node:fs";import{resolve as Qn,join as qp,dirname as dx}from"node:path";import{fileURLToPath as HC}from"node:url";import{homedir as Ra}from"node:os";var Fp,fx=be(()=>{"use strict";Fp=class{name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Qn(Ra(),".gemini","antigravity","mcp_config.json")}getSessionDir(){let e=qp(Ra(),".gemini","context-mode","sessions");return lx(e,{recursive:!0}),e}getSessionDBPath(e){let r=ux("sha256").update(e).digest("hex").slice(0,16);return qp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=ux("sha256").update(e).digest("hex").slice(0,16);return qp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=Xn(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();lx(dx(r),{recursive:!0}),Hp(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=Xn(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=Qn(Ra(),".gemini","extensions","context-mode","package.json");return JSON.parse(Xn(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{ZC(e,UC.R_OK);let r=e+".bak";return LC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:Qn(Ra(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Qn(e,n.projectRelativePath),s=Qn(r,"configs","antigravity",n.fileName);try{let i=Xn(s,"utf-8");try{let a=Xn(o,"utf-8");return a.includes("context-mode")?null:(Hp(o,a.trimEnd()+`
31
+ `+i,"utf-8"),o)}catch{return $a(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}}});function Ra(t,e){let r=qp[e],n=kr(e);return"command"in t?t.command?.includes(r)||t.command?.includes(n)||!1:t.hooks?.some(s=>s.command?.includes(r)||s.command?.includes(n))??!1}function kr(t){return`context-mode hook cursor ${t.toLowerCase()}`}var Te,qp,UC,Fp,ox,sx,ix=be(()=>{"use strict";Te={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart"},qp={[Te.PRE_TOOL_USE]:"pretooluse.mjs",[Te.POST_TOOL_USE]:"posttooluse.mjs",[Te.SESSION_START]:"sessionstart.mjs"},UC=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],Fp=UC.join("|"),ox=[Te.PRE_TOOL_USE],sx=[Te.POST_TOOL_USE]});var fx={};Be(fx,{CursorAdapter:()=>Vp});import{createHash as ax}from"node:crypto";import{readFileSync as Bp,writeFileSync as HC,mkdirSync as cx,copyFileSync as qC,accessSync as ux,chmodSync as FC,constants as lx,existsSync as dx}from"node:fs";import{execSync as BC}from"node:child_process";import{resolve as Qn,join as un}from"node:path";import{homedir as Oa}from"node:os";var px,Vp,mx=be(()=>{"use strict";ix();px="/Library/Application Support/Cursor/hooks.json",Vp=class{name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}getSettingsPath(){return Qn(".cursor","hooks.json")}getSessionDir(){let e=un(Oa(),".cursor","context-mode","sessions");return cx(e,{recursive:!0}),e}getSessionDBPath(e){let r=ax("sha256").update(e).digest("hex").slice(0,16);return un(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=ax("sha256").update(e).digest("hex").slice(0,16);return un(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[Te.PRE_TOOL_USE]:[{type:"command",command:kr(Te.PRE_TOOL_USE),matcher:Fp,loop_limit:null,failClosed:!1}],[Te.POST_TOOL_USE]:[{type:"command",command:kr(Te.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[Te.SESSION_START]:[{type:"command",command:kr(Te.SESSION_START),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=Bp(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();cx(Qn(".cursor"),{recursive:!0}),HC(r,JSON.stringify(e,null,2)+`
32
+ `,"utf-8")}validateHooks(e){let r=[],n=this.loadNativeHookConfig();if(!n)r.push({check:"Native hook config",status:"fail",message:"No readable native Cursor hook config found in .cursor/hooks.json or ~/.cursor/hooks.json",fix:"context-mode upgrade"});else{let o=n.config.hooks??{};r.push({check:"Native hook config",status:"pass",message:`Loaded ${n.path}`});for(let s of ox){let i=o[s],a=Array.isArray(i)&&i.some(c=>Ra(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 sx){let i=o[s],a=Array.isArray(i)&&i.some(c=>Ra(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 dx(px)&&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=[Qn(".cursor","mcp.json"),un(Oa(),".cursor","mcp.json")];for(let r of e)try{let n=Bp(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 BC("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,Te.PRE_TOOL_USE,{type:"command",command:kr(Te.PRE_TOOL_USE),matcher:Fp,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,Te.POST_TOOL_USE,{type:"command",command:kr(Te.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,Te.SESSION_START,{type:"command",command:kr(Te.SESSION_START),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}backupSettings(){let e=this.getSettingsPath();try{ux(e,lx.R_OK);let r=e+".bak";return qC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=un(e,"hooks","cursor");for(let o of Object.values(qp)){let s=Qn(n,o);try{ux(s,lx.R_OK),FC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:"",projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){return null}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),un(Oa(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(px),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=Bp(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[Qn(".claude","settings.json"),Qn(".claude","settings.local.json"),un(Oa(),".claude","settings.json")].some(r=>dx(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>Ra(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 yx={};Be(yx,{AntigravityAdapter:()=>Gp});import{createHash as hx}from"node:crypto";import{readFileSync as eo,writeFileSync as Kp,mkdirSync as gx,copyFileSync as VC,accessSync as KC,constants as JC}from"node:fs";import{resolve as to,join as Jp,dirname as _x}from"node:path";import{fileURLToPath as GC}from"node:url";import{homedir as Ca}from"node:os";var Gp,vx=be(()=>{"use strict";Gp=class{name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return to(Ca(),".gemini","antigravity","mcp_config.json")}getSessionDir(){let e=Jp(Ca(),".gemini","context-mode","sessions");return gx(e,{recursive:!0}),e}getSessionDBPath(e){let r=hx("sha256").update(e).digest("hex").slice(0,16);return Jp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=hx("sha256").update(e).digest("hex").slice(0,16);return Jp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=eo(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();gx(_x(r),{recursive:!0}),Kp(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=eo(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=to(Ca(),".gemini","extensions","context-mode","package.json");return JSON.parse(eo(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{KC(e,JC.R_OK);let r=e+".bak";return VC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:to(Ca(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=to(e,n.projectRelativePath),s=to(r,"configs","antigravity",n.fileName);try{let i=eo(s,"utf-8");try{let a=eo(o,"utf-8");return a.includes("context-mode")?null:(Kp(o,a.trimEnd()+`
33
33
 
34
- `+i,"utf-8"),o)}catch{return Hp(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Qn(dx(HC(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return Xn(e,"utf-8")}catch{return`# context-mode
34
+ `+i,"utf-8"),o)}catch{return Kp(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=to(_x(GC(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return eo(e,"utf-8")}catch{return`# context-mode
35
35
 
36
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});function ys(t,e){let r=mx[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function vs(t,e){let r=mx[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var Se,mx,QL,eZ,hx=be(()=>{"use strict";Se={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},mx={[Se.PRE_TOOL_USE]:"pretooluse.mjs",[Se.POST_TOOL_USE]:"posttooluse.mjs"},QL=[Se.PRE_TOOL_USE],eZ=[Se.POST_TOOL_USE]});var yx={};Be(yx,{KiroAdapter:()=>Kp});import{createHash as gx}from"node:crypto";import{readFileSync as br,writeFileSync as Oa,mkdirSync as Bp,copyFileSync as qC,accessSync as FC,constants as BC}from"node:fs";import{resolve as Yt,join as Vp,dirname as _x}from"node:path";import{fileURLToPath as VC}from"node:url";import{homedir as eo}from"node:os";var Kp,vx=be(()=>{"use strict";hx();Kp=class{name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e,n=r.tool_response;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:typeof n=="string"?n:JSON.stringify(n??""),sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePreCompactInput(e){throw new Error("Kiro does not support PreCompact hooks")}parseSessionStartInput(e){throw new Error("Kiro does not support SessionStart hooks (yet)")}formatPreToolUseResponse(e){switch(e.decision){case"deny":return{exitCode:2,stderr:e.reason??"Blocked by context-mode"};case"context":return{exitCode:0,stdout:e.additionalContext??""};default:return}}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Yt(eo(),".kiro","settings","mcp_config.json")}getSessionDir(){let e=Vp(eo(),".kiro","context-mode","sessions");return Bp(e,{recursive:!0}),e}getSessionDBPath(e){let r=gx("sha256").update(e).digest("hex").slice(0,16);return Vp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=gx("sha256").update(e).digest("hex").slice(0,16);return Vp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[Se.PRE_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:vs(Se.PRE_TOOL_USE,e)}]}],[Se.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:vs(Se.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=br(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Bp(_x(r),{recursive:!0}),Oa(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=Yt(eo(),".kiro","agents","default.json");try{let s=JSON.parse(br(n,"utf-8")).hooks??{};for(let i of[Se.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>ys(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"fail",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured`,...c?{}:{fix:"Run: context-mode upgrade"}})}for(let i of[Se.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>ys(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"warn",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured (optional)`})}}catch{r.push({check:"Hook configuration",status:"warn",message:"Could not read ~/.kiro/agents/default.json",fix:"Run: context-mode upgrade"})}return r}checkPluginRegistration(){try{let e=br(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.kiro/settings/mcp_config.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.kiro/settings/mcp_config.json"}}}getInstalledVersion(){try{let e=Yt(eo(),".kiro","extensions","context-mode","package.json");return JSON.parse(br(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=Yt(eo(),".kiro","agents"),o=Yt(n,"default.json");try{Bp(n,{recursive:!0});let s={};try{s=JSON.parse(br(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[Se.PRE_TOOL_USE]??[];a.some(u=>ys(u,Se.PRE_TOOL_USE))||(a.push({matcher:"*",command:vs(Se.PRE_TOOL_USE,e)}),i[Se.PRE_TOOL_USE]=a,r.push(`Added ${Se.PRE_TOOL_USE} hook to ${o}`));let c=i[Se.POST_TOOL_USE]??[];c.some(u=>ys(u,Se.POST_TOOL_USE))||(c.push({matcher:"*",command:vs(Se.POST_TOOL_USE,e)}),i[Se.POST_TOOL_USE]=c,r.push(`Added ${Se.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,Oa(o,JSON.stringify(s,null,2),"utf-8")}catch(s){r.push(`Failed to configure hooks: ${s.message}`)}return r}backupSettings(){let e=this.getSettingsPath();try{FC(e,BC.R_OK);let r=e+".bak";return qC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"KIRO.md",globalPath:Yt(eo(),".kiro","KIRO.md"),projectRelativePath:"KIRO.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Yt(e,n.projectRelativePath),s=Yt(r,"configs","kiro",n.fileName);try{let i=br(s,"utf-8");try{let a=br(o,"utf-8");return a.includes("context-mode")?null:(Oa(o,a.trimEnd()+`
36
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});function xs(t,e){let r=xx[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function Ss(t,e){let r=xx[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var ke,xx,sZ,iZ,Sx=be(()=>{"use strict";ke={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},xx={[ke.PRE_TOOL_USE]:"pretooluse.mjs",[ke.POST_TOOL_USE]:"posttooluse.mjs"},sZ=[ke.PRE_TOOL_USE],iZ=[ke.POST_TOOL_USE]});var wx={};Be(wx,{KiroAdapter:()=>Xp});import{createHash as kx}from"node:crypto";import{readFileSync as br,writeFileSync as Ia,mkdirSync as Wp,copyFileSync as WC,accessSync as YC,constants as XC}from"node:fs";import{resolve as Yt,join as Yp,dirname as bx}from"node:path";import{fileURLToPath as QC}from"node:url";import{homedir as ro}from"node:os";var Xp,Ex=be(()=>{"use strict";Sx();Xp=class{name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e,n=r.tool_response;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:typeof n=="string"?n:JSON.stringify(n??""),sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePreCompactInput(e){throw new Error("Kiro does not support PreCompact hooks")}parseSessionStartInput(e){throw new Error("Kiro does not support SessionStart hooks (yet)")}formatPreToolUseResponse(e){switch(e.decision){case"deny":return{exitCode:2,stderr:e.reason??"Blocked by context-mode"};case"context":return{exitCode:0,stdout:e.additionalContext??""};default:return}}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Yt(ro(),".kiro","settings","mcp_config.json")}getSessionDir(){let e=Yp(ro(),".kiro","context-mode","sessions");return Wp(e,{recursive:!0}),e}getSessionDBPath(e){let r=kx("sha256").update(e).digest("hex").slice(0,16);return Yp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=kx("sha256").update(e).digest("hex").slice(0,16);return Yp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ke.PRE_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:Ss(ke.PRE_TOOL_USE,e)}]}],[ke.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:Ss(ke.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=br(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Wp(bx(r),{recursive:!0}),Ia(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=Yt(ro(),".kiro","agents","default.json");try{let s=JSON.parse(br(n,"utf-8")).hooks??{};for(let i of[ke.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>xs(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"fail",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured`,...c?{}:{fix:"Run: context-mode upgrade"}})}for(let i of[ke.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>xs(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"warn",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured (optional)`})}}catch{r.push({check:"Hook configuration",status:"warn",message:"Could not read ~/.kiro/agents/default.json",fix:"Run: context-mode upgrade"})}return r}checkPluginRegistration(){try{let e=br(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.kiro/settings/mcp_config.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.kiro/settings/mcp_config.json"}}}getInstalledVersion(){try{let e=Yt(ro(),".kiro","extensions","context-mode","package.json");return JSON.parse(br(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=Yt(ro(),".kiro","agents"),o=Yt(n,"default.json");try{Wp(n,{recursive:!0});let s={};try{s=JSON.parse(br(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[ke.PRE_TOOL_USE]??[];a.some(u=>xs(u,ke.PRE_TOOL_USE))||(a.push({matcher:"*",command:Ss(ke.PRE_TOOL_USE,e)}),i[ke.PRE_TOOL_USE]=a,r.push(`Added ${ke.PRE_TOOL_USE} hook to ${o}`));let c=i[ke.POST_TOOL_USE]??[];c.some(u=>xs(u,ke.POST_TOOL_USE))||(c.push({matcher:"*",command:Ss(ke.POST_TOOL_USE,e)}),i[ke.POST_TOOL_USE]=c,r.push(`Added ${ke.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,Ia(o,JSON.stringify(s,null,2),"utf-8")}catch(s){r.push(`Failed to configure hooks: ${s.message}`)}return r}backupSettings(){let e=this.getSettingsPath();try{YC(e,XC.R_OK);let r=e+".bak";return WC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"KIRO.md",globalPath:Yt(ro(),".kiro","KIRO.md"),projectRelativePath:"KIRO.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Yt(e,n.projectRelativePath),s=Yt(r,"configs","kiro",n.fileName);try{let i=br(s,"utf-8");try{let a=br(o,"utf-8");return a.includes("context-mode")?null:(Ia(o,a.trimEnd()+`
37
37
 
38
- `+i,"utf-8"),o)}catch{return Oa(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Yt(_x(VC(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return br(e,"utf-8")}catch{return`# context-mode
38
+ `+i,"utf-8"),o)}catch{return Ia(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Yt(bx(QC(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return br(e,"utf-8")}catch{return`# context-mode
39
39
 
40
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});var bx={};Be(bx,{ZedAdapter:()=>Yp});import{createHash as xx}from"node:crypto";import{readFileSync as xs,writeFileSync as Jp,mkdirSync as kx,copyFileSync as KC,accessSync as JC,constants as GC}from"node:fs";import{resolve as ks,join as Gp,dirname as Sx}from"node:path";import{fileURLToPath as WC}from"node:url";import{homedir as Wp}from"node:os";var Yp,wx=be(()=>{"use strict";Yp=class{name="Zed";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Zed does not support hooks")}parsePostToolUseInput(e){throw new Error("Zed does not support hooks")}parsePreCompactInput(e){throw new Error("Zed does not support hooks")}parseSessionStartInput(e){throw new Error("Zed does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return ks(Wp(),".config","zed","settings.json")}getSessionDir(){let e=Gp(Wp(),".config","zed","context-mode","sessions");return kx(e,{recursive:!0}),e}getSessionDBPath(e){let r=xx("sha256").update(e).digest("hex").slice(0,16);return Gp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=xx("sha256").update(e).digest("hex").slice(0,16);return Gp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=xs(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();kx(Sx(r),{recursive:!0}),Jp(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Zed does not support hooks. Only MCP integration is available."}]}checkPluginRegistration(){try{let e=xs(this.getSettingsPath(),"utf-8"),n=JSON.parse(e).context_servers!==void 0,o=e.includes("context-mode");return n&&o?{check:"MCP registration",status:"pass",message:"context-mode found in context_servers config"}:n?{check:"MCP registration",status:"fail",message:"context_servers section exists but context-mode not found",fix:"Add context-mode to context_servers in ~/.config/zed/settings.json"}:{check:"MCP registration",status:"fail",message:"No context_servers section in settings.json",fix:"Add context_servers.context-mode to ~/.config/zed/settings.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.config/zed/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{JC(e,GC.R_OK);let r=e+".bak";return KC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:ks(Wp(),".config","zed","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=ks(e,n.projectRelativePath),s=ks(r,"configs","zed",n.fileName);try{let i=xs(s,"utf-8");try{let a=xs(o,"utf-8");return a.includes("context-mode")?null:(Jp(o,a.trimEnd()+`
40
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});var Rx={};Be(Rx,{ZedAdapter:()=>rf});import{createHash as Tx}from"node:crypto";import{readFileSync as ks,writeFileSync as Qp,mkdirSync as $x,copyFileSync as eI,accessSync as tI,constants as rI}from"node:fs";import{resolve as bs,join as ef,dirname as Px}from"node:path";import{fileURLToPath as nI}from"node:url";import{homedir as tf}from"node:os";var rf,Ox=be(()=>{"use strict";rf=class{name="Zed";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Zed does not support hooks")}parsePostToolUseInput(e){throw new Error("Zed does not support hooks")}parsePreCompactInput(e){throw new Error("Zed does not support hooks")}parseSessionStartInput(e){throw new Error("Zed does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return bs(tf(),".config","zed","settings.json")}getSessionDir(){let e=ef(tf(),".config","zed","context-mode","sessions");return $x(e,{recursive:!0}),e}getSessionDBPath(e){let r=Tx("sha256").update(e).digest("hex").slice(0,16);return ef(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Tx("sha256").update(e).digest("hex").slice(0,16);return ef(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=ks(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();$x(Px(r),{recursive:!0}),Qp(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=ks(this.getSettingsPath(),"utf-8"),n=JSON.parse(e).context_servers!==void 0,o=e.includes("context-mode");return n&&o?{check:"MCP registration",status:"pass",message:"context-mode found in context_servers config"}:n?{check:"MCP registration",status:"fail",message:"context_servers section exists but context-mode not found",fix:"Add context-mode to context_servers in ~/.config/zed/settings.json"}:{check:"MCP registration",status:"fail",message:"No context_servers section in settings.json",fix:"Add context_servers.context-mode to ~/.config/zed/settings.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.config/zed/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{tI(e,rI.R_OK);let r=e+".bak";return eI(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:bs(tf(),".config","zed","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=bs(e,n.projectRelativePath),s=bs(r,"configs","zed",n.fileName);try{let i=ks(s,"utf-8");try{let a=ks(o,"utf-8");return a.includes("context-mode")?null:(Qp(o,a.trimEnd()+`
41
41
 
42
- `+i,"utf-8"),o)}catch{return Jp(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=ks(Sx(WC(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return xs(e,"utf-8")}catch{return`# context-mode
42
+ `+i,"utf-8"),o)}catch{return Qp(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=bs(Px(nI(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return ks(e,"utf-8")}catch{return`# context-mode
43
43
 
44
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var Tx={};Be(Tx,{detectPlatform:()=>Ex,getAdapter:()=>XC});import{existsSync as Xt}from"node:fs";import{resolve as Qt}from"node:path";import{homedir as YC}from"node:os";function Ex(t){if(t?.name){let n=Sv[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","opencode","codex","vscode-copilot","cursor","antigravity","kiro","pi","zed"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};if(process.env.CLAUDE_PROJECT_DIR||process.env.CLAUDE_SESSION_ID)return{platform:"claude-code",confidence:"high",reason:"CLAUDE_PROJECT_DIR or CLAUDE_SESSION_ID env var set"};if(process.env.GEMINI_PROJECT_DIR||process.env.GEMINI_CLI)return{platform:"gemini-cli",confidence:"high",reason:"GEMINI_PROJECT_DIR or GEMINI_CLI env var set"};if(process.env.OPENCLAW_HOME||process.env.OPENCLAW_PROJECT_DIR)return{platform:"openclaw",confidence:"high",reason:"OPENCLAW_HOME or OPENCLAW_PROJECT_DIR env var set"};if(process.env.OPENCODE||process.env.OPENCODE_PID)return{platform:"opencode",confidence:"high",reason:"OPENCODE or OPENCODE_PID env var set"};if(process.env.CODEX_CI||process.env.CODEX_THREAD_ID)return{platform:"codex",confidence:"high",reason:"CODEX_CI or CODEX_THREAD_ID env var set"};if(process.env.CURSOR_TRACE_ID||process.env.CURSOR_CLI)return{platform:"cursor",confidence:"high",reason:"CURSOR_TRACE_ID or CURSOR_CLI env var set"};if(process.env.VSCODE_PID||process.env.VSCODE_CWD)return{platform:"vscode-copilot",confidence:"high",reason:"VSCODE_PID or VSCODE_CWD env var set"};let r=YC();return Xt(Qt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Xt(Qt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Xt(Qt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Xt(Qt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Xt(Qt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Xt(Qt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Xt(Qt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Xt(Qt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Xt(Qt(r,".config","zed"))?{platform:"zed",confidence:"medium",reason:"~/.config/zed/ directory exists"}:{platform:"claude-code",confidence:"low",reason:"No platform detected, defaulting to Claude Code"}}async function XC(t){switch(t??Ex().platform){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(wp(),bp));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(Av(),Nv));return new r}case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(Lv(),Dv));return new r}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(qv(),Hv));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(Kv(),Vv));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(Yv(),Wv));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(cx(),ax));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(fx(),px));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(vx(),yx));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(wx(),bx));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(wp(),bp));return new r}}}var $x=be(()=>{"use strict";bv()});var Z={};Be(Z,{BRAND:()=>mk,DIRTY:()=>Er,EMPTY_PATH:()=>Vx,INVALID:()=>A,NEVER:()=>Yk,OK:()=>Ae,ParseStatus:()=>$e,Schema:()=>H,ZodAny:()=>nr,ZodArray:()=>Ft,ZodBigInt:()=>$r,ZodBoolean:()=>Pr,ZodBranded:()=>oo,ZodCatch:()=>Lr,ZodDate:()=>Rr,ZodDefault:()=>Dr,ZodDiscriminatedUnion:()=>$s,ZodEffects:()=>it,ZodEnum:()=>jr,ZodError:()=>Ve,ZodFirstPartyTypeKind:()=>b,ZodFunction:()=>Rs,ZodIntersection:()=>zr,ZodIssueCode:()=>S,ZodLazy:()=>Nr,ZodLiteral:()=>Ar,ZodMap:()=>hn,ZodNaN:()=>_n,ZodNativeEnum:()=>Mr,ZodNever:()=>ht,ZodNull:()=>Cr,ZodNullable:()=>Ot,ZodNumber:()=>Tr,ZodObject:()=>Je,ZodOptional:()=>Ke,ZodParsedType:()=>$,ZodPipeline:()=>so,ZodPromise:()=>or,ZodReadonly:()=>Zr,ZodRecord:()=>Ps,ZodSchema:()=>H,ZodSet:()=>gn,ZodString:()=>rr,ZodSymbol:()=>fn,ZodTransformer:()=>it,ZodTuple:()=>Rt,ZodType:()=>H,ZodUndefined:()=>Or,ZodUnion:()=>Ir,ZodUnknown:()=>qt,ZodVoid:()=>mn,addIssueToContext:()=>E,any:()=>bk,array:()=>$k,bigint:()=>yk,boolean:()=>_f,coerce:()=>Wk,custom:()=>mf,date:()=>vk,datetimeRegex:()=>pf,defaultErrorMap:()=>Ut,discriminatedUnion:()=>Ok,effect:()=>Hk,enum:()=>Lk,function:()=>jk,getErrorMap:()=>ln,getParsedType:()=>Pt,instanceof:()=>gk,intersection:()=>Ck,isAborted:()=>Es,isAsync:()=>dn,isDirty:()=>Ts,isValid:()=>tr,late:()=>hk,lazy:()=>Mk,literal:()=>Dk,makeIssue:()=>no,map:()=>Nk,nan:()=>_k,nativeEnum:()=>Zk,never:()=>Ek,null:()=>Sk,nullable:()=>Fk,number:()=>gf,object:()=>Za,objectUtil:()=>Ma,oboolean:()=>Gk,onumber:()=>Jk,optional:()=>qk,ostring:()=>Kk,pipeline:()=>Vk,preprocess:()=>Bk,promise:()=>Uk,quotelessJson:()=>qx,record:()=>zk,set:()=>Ak,setErrorMap:()=>Bx,strictObject:()=>Pk,string:()=>hf,symbol:()=>xk,transformer:()=>Hk,tuple:()=>Ik,undefined:()=>kk,union:()=>Rk,unknown:()=>wk,util:()=>V,void:()=>Tk});var V;(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(V||(V={}));var Ma;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Ma||(Ma={}));var $=V.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Pt=t=>{switch(typeof t){case"undefined":return $.undefined;case"string":return $.string;case"number":return Number.isNaN(t)?$.nan:$.number;case"boolean":return $.boolean;case"function":return $.function;case"bigint":return $.bigint;case"symbol":return $.symbol;case"object":return Array.isArray(t)?$.array:t===null?$.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?$.promise:typeof Map<"u"&&t instanceof Map?$.map:typeof Set<"u"&&t instanceof Set?$.set:typeof Date<"u"&&t instanceof Date?$.date:$.object;default:return $.unknown}};var S=V.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),qx=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Ve=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,V.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Ve.create=t=>new Ve(t);var Fx=(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,V.jsonStringifyReplacer)}`;break;case S.unrecognized_keys:r=`Unrecognized key(s) in object: ${V.joinValues(t.keys,", ")}`;break;case S.invalid_union:r="Invalid input";break;case S.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${V.joinValues(t.options)}`;break;case S.invalid_enum_value:r=`Invalid enum value. Expected ${V.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}"`:V.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,V.assertNever(t)}return{message:r}},Ut=Fx;var af=Ut;function Bx(t){af=t}function ln(){return af}var no=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}},Vx=[];function E(t,e){let r=ln(),n=no({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Ut?void 0:Ut].filter(o=>!!o)});t.common.issues.push(n)}var $e=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return A;o.status==="dirty"&&e.dirty(),n.push(o.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let o of r){let s=await o.key,i=await o.value;n.push({key:s,value:i})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:i}=o;if(s.status==="aborted"||i.status==="aborted")return A;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||o.alwaysSet)&&(n[s.value]=i.value)}return{status:e.value,value:n}}},A=Object.freeze({status:"aborted"}),Er=t=>({status:"dirty",value:t}),Ae=t=>({status:"valid",value:t}),Es=t=>t.status==="aborted",Ts=t=>t.status==="dirty",tr=t=>t.status==="valid",dn=t=>typeof Promise<"u"&&t instanceof Promise;var O;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(O||(O={}));var st=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},cf=(t,e)=>{if(tr(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Ve(t.common.issues);return this._error=r,this._error}}};function L(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message:c}=t;return i.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:o}}var H=class{get description(){return this._def.description}_getType(e){return Pt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Pt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new $e,ctx:{common:e.parent.common,data:e.data,parsedType:Pt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(dn(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return cf(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return tr(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>tr(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(dn(o)?o:Promise.resolve(o));return cf(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:S.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new it({schema:this,typeName:b.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return Ke.create(this,this._def)}nullable(){return Ot.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ft.create(this)}promise(){return or.create(this,this._def)}or(e){return Ir.create([this,e],this._def)}and(e){return zr.create(this,e,this._def)}transform(e){return new it({...L(this._def),schema:this,typeName:b.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Dr({...L(this._def),innerType:this,defaultValue:r,typeName:b.ZodDefault})}brand(){return new oo({typeName:b.ZodBranded,type:this,...L(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Lr({...L(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 so.create(this,e)}readonly(){return Zr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Kx=/^c[^\s-]{8,}$/i,Jx=/^[0-9a-z]+$/,Gx=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Wx=/^[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,Yx=/^[a-z0-9_-]{21}$/i,Xx=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Qx=/^[-+]?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)?)??$/,ek=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,tk="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Da,rk=/^(?:(?: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])$/,nk=/^(?:(?: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])$/,ok=/^(([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]))$/,sk=/^(([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])$/,ik=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,ak=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,lf="((\\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])))",ck=new RegExp(`^${lf}$`);function df(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 uk(t){return new RegExp(`^${df(t)}$`)}function pf(t){let e=`${lf}T${df(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 lk(t,e){return!!((e==="v4"||!e)&&rk.test(t)||(e==="v6"||!e)&&ok.test(t))}function dk(t,e){if(!Xx.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 pk(t,e){return!!((e==="v4"||!e)&&nk.test(t)||(e==="v6"||!e)&&sk.test(t))}var rr=class t extends H{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==$.string){let s=this._getOrReturnCtx(e);return E(s,{code:S.invalid_type,expected:$.string,received:s.parsedType}),A}let n=new $e,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),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")ek.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")Da||(Da=new RegExp(tk,"u")),Da.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")Wx.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")Yx.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")Kx.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")Jx.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")Gx.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"?pf(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"?ck.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:S.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?uk(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"?Qx.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"duration",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?lk(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"?dk(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"?pk(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"?ik.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?ak.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64url",code:S.invalid_string,message:s.message}),n.dirty()):V.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:S.invalid_string,...O.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...O.errToObj(e)})}url(e){return this._addCheck({kind:"url",...O.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...O.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...O.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...O.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...O.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...O.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...O.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...O.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...O.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...O.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...O.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...O.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...O.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...O.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...O.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...O.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...O.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...O.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...O.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...O.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...O.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...O.errToObj(r)})}nonempty(e){return this.min(1,O.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};rr.create=t=>new rr({checks:[],typeName:b.ZodString,coerce:t?.coerce??!1,...L(t)});function fk(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}var Tr=class t extends H{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==$.number){let s=this._getOrReturnCtx(e);return E(s,{code:S.invalid_type,expected:$.number,received:s.parsedType}),A}let n,o=new $e;for(let s of this._def.checks)s.kind==="int"?V.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"?fk(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()):V.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,O.toString(r))}gt(e,r){return this.setLimit("min",e,!1,O.toString(r))}lte(e,r){return this.setLimit("max",e,!0,O.toString(r))}lt(e,r){return this.setLimit("max",e,!1,O.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:O.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:O.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:O.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:O.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:O.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:O.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:O.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:O.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:O.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:O.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&V.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};Tr.create=t=>new Tr({checks:[],typeName:b.ZodNumber,coerce:t?.coerce||!1,...L(t)});var $r=class t extends H{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==$.bigint)return this._getInvalidInput(e);let n,o=new $e;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),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()):V.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,O.toString(r))}gt(e,r){return this.setLimit("min",e,!1,O.toString(r))}lte(e,r){return this.setLimit("max",e,!0,O.toString(r))}lt(e,r){return this.setLimit("max",e,!1,O.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:O.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:O.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:O.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:O.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:O.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:O.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};$r.create=t=>new $r({checks:[],typeName:b.ZodBigInt,coerce:t?.coerce??!1,...L(t)});var Pr=class extends H{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==$.boolean){let n=this._getOrReturnCtx(e);return E(n,{code:S.invalid_type,expected:$.boolean,received:n.parsedType}),A}return Ae(e.data)}};Pr.create=t=>new Pr({typeName:b.ZodBoolean,coerce:t?.coerce||!1,...L(t)});var Rr=class t extends H{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==$.date){let s=this._getOrReturnCtx(e);return E(s,{code: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 $e,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()):V.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:O.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:O.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};Rr.create=t=>new Rr({checks:[],coerce:t?.coerce||!1,typeName:b.ZodDate,...L(t)});var fn=class extends H{_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 Ae(e.data)}};fn.create=t=>new fn({typeName:b.ZodSymbol,...L(t)});var Or=class extends H{_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 Ae(e.data)}};Or.create=t=>new Or({typeName:b.ZodUndefined,...L(t)});var Cr=class extends H{_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 Ae(e.data)}};Cr.create=t=>new Cr({typeName:b.ZodNull,...L(t)});var nr=class extends H{constructor(){super(...arguments),this._any=!0}_parse(e){return Ae(e.data)}};nr.create=t=>new nr({typeName:b.ZodAny,...L(t)});var qt=class extends H{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ae(e.data)}};qt.create=t=>new qt({typeName:b.ZodUnknown,...L(t)});var ht=class extends H{_parse(e){let r=this._getOrReturnCtx(e);return E(r,{code:S.invalid_type,expected:$.never,received:r.parsedType}),A}};ht.create=t=>new ht({typeName:b.ZodNever,...L(t)});var mn=class extends H{_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 Ae(e.data)}};mn.create=t=>new mn({typeName:b.ZodVoid,...L(t)});var Ft=class t extends H{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==$.array)return E(r,{code: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 st(r,i,r.path,a)))).then(i=>$e.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new st(r,i,r.path,a)));return $e.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:O.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:O.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:O.toString(r)}})}nonempty(e){return this.min(1,e)}};Ft.create=(t,e)=>new Ft({type:t,minLength:null,maxLength:null,exactLength:null,typeName:b.ZodArray,...L(e)});function pn(t){if(t instanceof Je){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Ke.create(pn(n))}return new Je({...t._def,shape:()=>e})}else return t instanceof Ft?new Ft({...t._def,type:pn(t.element)}):t instanceof Ke?Ke.create(pn(t.unwrap())):t instanceof Ot?Ot.create(pn(t.unwrap())):t instanceof Rt?Rt.create(t.items.map(e=>pn(e))):t}var Je=class t extends H{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=V.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==$.object){let u=this._getOrReturnCtx(e);return E(u,{code:S.invalid_type,expected:$.object,received:u.parsedType}),A}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof ht&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new st(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof ht){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(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 st(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,f=await l.value;u.push({key:d,value:f,alwaysSet:l.alwaysSet})}return u}).then(u=>$e.mergeObjectSync(n,u)):$e.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return O.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:O.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:b.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of V.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of V.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return pn(this)}partial(e){let r={};for(let n of V.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of V.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Ke;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return ff(V.objectKeys(this.shape))}};Je.create=(t,e)=>new Je({shape:()=>t,unknownKeys:"strip",catchall:ht.create(),typeName:b.ZodObject,...L(e)});Je.strictCreate=(t,e)=>new Je({shape:()=>t,unknownKeys:"strict",catchall:ht.create(),typeName:b.ZodObject,...L(e)});Je.lazycreate=(t,e)=>new Je({shape:t,unknownKeys:"strip",catchall:ht.create(),typeName:b.ZodObject,...L(e)});var Ir=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function o(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let i=s.map(a=>new Ve(a.ctx.common.issues));return E(r,{code: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 Ve(c));return E(r,{code:S.invalid_union,unionErrors:a}),A}}get options(){return this._def.options}};Ir.create=(t,e)=>new Ir({options:t,typeName:b.ZodUnion,...L(e)});var Ht=t=>t instanceof Nr?Ht(t.schema):t instanceof it?Ht(t.innerType()):t instanceof Ar?[t.value]:t instanceof jr?t.options:t instanceof Mr?V.objectValues(t.enum):t instanceof Dr?Ht(t._def.innerType):t instanceof Or?[void 0]:t instanceof Cr?[null]:t instanceof Ke?[void 0,...Ht(t.unwrap())]:t instanceof Ot?[null,...Ht(t.unwrap())]:t instanceof oo||t instanceof Zr?Ht(t.unwrap()):t instanceof Lr?Ht(t._def.innerType):[],$s=class t extends H{_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=Ht(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:b.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...L(n)})}};function La(t,e){let r=Pt(t),n=Pt(e);if(t===e)return{valid:!0,data:t};if(r===$.object&&n===$.object){let o=V.objectKeys(e),s=V.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=La(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===$.array&&n===$.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let i=t[s],a=e[s],c=La(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===$.date&&n===$.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var zr=class extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Es(s)||Es(i))return A;let a=La(s.value,i.value);return a.valid?((Ts(s)||Ts(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}))}};zr.create=(t,e,r)=>new zr({left:t,right:e,typeName:b.ZodIntersection,...L(r)});var Rt=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.array)return E(n,{code: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 st(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>$e.mergeArray(r,i)):$e.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Rt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Rt({items:t,typeName:b.ZodTuple,rest:null,...L(e)})};var Ps=class t extends H{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.object)return E(n,{code:S.invalid_type,expected:$.object,received:n.parsedType}),A;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new st(n,a,n.path,a)),value:i._parse(new st(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?$e.mergeObjectAsync(r,o):$e.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof H?new t({keyType:e,valueType:r,typeName:b.ZodRecord,...L(n)}):new t({keyType:rr.create(),valueType:e,typeName:b.ZodRecord,...L(r)})}},hn=class extends H{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.map)return E(n,{code:S.invalid_type,expected:$.map,received:n.parsedType}),A;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new st(n,a,n.path,[u,"key"])),value:s._parse(new st(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return A;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of i){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return A;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};hn.create=(t,e,r)=>new hn({valueType:e,keyType:t,typeName:b.ZodMap,...L(r)});var gn=class t extends H{_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 st(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:O.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:O.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};gn.create=(t,e)=>new gn({valueType:t,minSize:null,maxSize:null,typeName:b.ZodSet,...L(e)});var Rs=class t extends H{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.function)return E(r,{code:S.invalid_type,expected:$.function,received:r.parsedType}),A;function n(a,c){return no({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,ln(),Ut].filter(u=>!!u),issueData:{code:S.invalid_arguments,argumentsError:c}})}function o(a,c){return no({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,ln(),Ut].filter(u=>!!u),issueData:{code:S.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof or){let a=this;return Ae(async function(...c){let u=new Ve([]),l=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(m=>{throw u.addIssue(o(d,m)),u})})}else{let a=this;return Ae(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Ve([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Ve([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Rt.create(e).rest(qt.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Rt.create([]).rest(qt.create()),returns:r||qt.create(),typeName:b.ZodFunction,...L(n)})}},Nr=class extends H{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Nr.create=(t,e)=>new Nr({getter:t,typeName:b.ZodLazy,...L(e)});var Ar=class extends H{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return E(r,{received:r.data,code:S.invalid_literal,expected:this._def.value}),A}return{status:"valid",value:e.data}}get value(){return this._def.value}};Ar.create=(t,e)=>new Ar({value:t,typeName:b.ZodLiteral,...L(e)});function ff(t,e){return new jr({values:t,typeName:b.ZodEnum,...L(e)})}var jr=class t extends H{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return E(r,{expected:V.joinValues(n),received:r.parsedType,code: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 Ae(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};jr.create=ff;var Mr=class extends H{_parse(e){let r=V.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==$.string&&n.parsedType!==$.number){let o=V.objectValues(r);return E(n,{expected:V.joinValues(o),received:n.parsedType,code:S.invalid_type}),A}if(this._cache||(this._cache=new Set(V.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=V.objectValues(r);return E(n,{received:n.data,code:S.invalid_enum_value,options:o}),A}return Ae(e.data)}get enum(){return this._def.values}};Mr.create=(t,e)=>new Mr({values:t,typeName:b.ZodNativeEnum,...L(e)});var or=class extends H{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.promise&&r.common.async===!1)return E(r,{code:S.invalid_type,expected:$.promise,received:r.parsedType}),A;let n=r.parsedType===$.promise?r.data:Promise.resolve(r.data);return Ae(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};or.create=(t,e)=>new or({type:t,typeName:b.ZodPromise,...L(e)});var it=class extends H{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===b.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{E(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return A;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?A:c.status==="dirty"?Er(c.value):r.value==="dirty"?Er(c.value):c});{if(r.value==="aborted")return A;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?A:a.status==="dirty"?Er(a.value):r.value==="dirty"?Er(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?A:(a.status==="dirty"&&r.dirty(),i(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?A:(a.status==="dirty"&&r.dirty(),i(a.value).then(()=>({status:r.value,value:a.value}))))}if(o.type==="transform")if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!tr(i))return A;let a=o.transform(i.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>tr(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):A);V.assertNever(o)}};it.create=(t,e,r)=>new it({schema:t,typeName:b.ZodEffects,effect:e,...L(r)});it.createWithPreprocess=(t,e,r)=>new it({schema:e,effect:{type:"preprocess",transform:t},typeName:b.ZodEffects,...L(r)});var Ke=class extends H{_parse(e){return this._getType(e)===$.undefined?Ae(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ke.create=(t,e)=>new Ke({innerType:t,typeName:b.ZodOptional,...L(e)});var Ot=class extends H{_parse(e){return this._getType(e)===$.null?Ae(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ot.create=(t,e)=>new Ot({innerType:t,typeName:b.ZodNullable,...L(e)});var Dr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===$.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Dr.create=(t,e)=>new Dr({innerType:t,typeName:b.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...L(e)});var Lr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return dn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Ve(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Ve(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Lr.create=(t,e)=>new Lr({innerType:t,typeName:b.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...L(e)});var _n=class extends H{_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}}};_n.create=t=>new _n({typeName:b.ZodNaN,...L(t)});var mk=Symbol("zod_brand"),oo=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},so=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?A:s.status==="dirty"?(r.dirty(),Er(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?A:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:b.ZodPipeline})}},Zr=class extends H{_parse(e){let r=this._def.innerType._parse(e),n=o=>(tr(o)&&(o.value=Object.freeze(o.value)),o);return dn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Zr.create=(t,e)=>new Zr({innerType:t,typeName:b.ZodReadonly,...L(e)});function uf(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function mf(t,e={},r){return t?nr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=uf(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=uf(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):nr.create()}var hk={object:Je.lazycreate},b;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(b||(b={}));var gk=(t,e={message:`Input not instance of ${t.name}`})=>mf(r=>r instanceof t,e),hf=rr.create,gf=Tr.create,_k=_n.create,yk=$r.create,_f=Pr.create,vk=Rr.create,xk=fn.create,kk=Or.create,Sk=Cr.create,bk=nr.create,wk=qt.create,Ek=ht.create,Tk=mn.create,$k=Ft.create,Za=Je.create,Pk=Je.strictCreate,Rk=Ir.create,Ok=$s.create,Ck=zr.create,Ik=Rt.create,zk=Ps.create,Nk=hn.create,Ak=gn.create,jk=Rs.create,Mk=Nr.create,Dk=Ar.create,Lk=jr.create,Zk=Mr.create,Uk=or.create,Hk=it.create,qk=Ke.create,Fk=Ot.create,Bk=it.createWithPreprocess,Vk=so.create,Kk=()=>hf().optional(),Jk=()=>gf().optional(),Gk=()=>_f().optional(),Wk={string:(t=>rr.create({...t,coerce:!0})),number:(t=>Tr.create({...t,coerce:!0})),boolean:(t=>Pr.create({...t,coerce:!0})),bigint:(t=>$r.create({...t,coerce:!0})),date:(t=>Rr.create({...t,coerce:!0}))};var Yk=A;var Xk=Object.freeze({status:"aborted"});function v(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var Bt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Os={};function rt(t){return t&&Object.assign(Os,t),Os}var K={};Be(K,{BIGINT_FORMAT_RANGES:()=>vf,Class:()=>Ha,NUMBER_FORMAT_RANGES:()=>Ga,aborted:()=>Hr,allowsEval:()=>Va,assert:()=>nS,assertEqual:()=>Qk,assertIs:()=>tS,assertNever:()=>rS,assertNotEqual:()=>eS,assignProp:()=>Ba,cached:()=>co,captureStackTrace:()=>Is,cleanEnum:()=>gS,cleanRegex:()=>lo,clone:()=>nt,createTransparentProxy:()=>uS,defineLazy:()=>ce,esc:()=>Ur,escapeRegex:()=>sr,extend:()=>pS,finalizeIssue:()=>gt,floatSafeRemainder:()=>Fa,getElementAtPath:()=>oS,getEnumValues:()=>ao,getLengthableOrigin:()=>po,getParsedType:()=>cS,getSizableOrigin:()=>xf,isObject:()=>yn,isPlainObject:()=>vn,issue:()=>Wa,joinValues:()=>Cs,jsonStringifyReplacer:()=>qa,merge:()=>fS,normalizeParams:()=>j,nullish:()=>uo,numKeys:()=>aS,omit:()=>dS,optionalKeys:()=>Ja,partial:()=>mS,pick:()=>lS,prefixIssues:()=>Ct,primitiveTypes:()=>yf,promiseAllObject:()=>sS,propertyKeyTypes:()=>Ka,randomString:()=>iS,required:()=>hS,stringifyPrimitive:()=>zs,unwrapMessage:()=>io});function Qk(t){return t}function eS(t){return t}function tS(t){}function rS(t){throw new Error}function nS(t){}function ao(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,o])=>e.indexOf(+n)===-1).map(([n,o])=>o)}function Cs(t,e="|"){return t.map(r=>zs(r)).join(e)}function qa(t,e){return typeof e=="bigint"?e.toString():e}function co(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function uo(t){return t==null}function lo(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Fa(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function 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 Ba(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function oS(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function sS(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 iS(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Ur(t){return JSON.stringify(t)}var Is=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function yn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Va=co(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function vn(t){if(yn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(yn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function aS(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var cS=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},Ka=new Set(["string","number","symbol"]),yf=new Set(["string","number","bigint","boolean","symbol","undefined"]);function sr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function nt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function j(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function uS(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,s){return e??(e=t()),Reflect.set(e,n,o,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function zs(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ja(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Ga={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},vf={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function lS(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return nt(t,{...t._zod.def,shape:r,checks:[]})}function dS(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete r[o]}return nt(t,{...t._zod.def,shape:r,checks:[]})}function pS(t,e){if(!vn(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return Ba(this,"shape",n),n},checks:[]};return nt(t,r)}function fS(t,e){return nt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Ba(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function mS(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return nt(e,{...e._zod.def,shape:o,checks:[]})}function hS(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)o[s]=new t({type:"nonoptional",innerType:n[s]});return nt(e,{...e._zod.def,shape:o,checks:[]})}function Hr(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Ct(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function io(t){return typeof t=="string"?t:t?.message}function gt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=io(t.inst?._zod.def?.error?.(t))??io(e?.error?.(t))??io(r.customError?.(t))??io(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function xf(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function po(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Wa(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function gS(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Ha=class{constructor(...e){}};var kf=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),Object.defineProperty(t,"message",{get(){return JSON.stringify(e,qa,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Ns=v("$ZodError",kf),fo=v("$ZodError",kf,{Parent:Error});function Ya(t,e=r=>r.message){let r={},n=[];for(let o of t.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(e(o))):n.push(e(o));return{formErrors:n,fieldErrors:r}}function Xa(t,e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>o({issues:a}));else if(i.code==="invalid_key")o({issues:i.issues});else if(i.code==="invalid_element")o({issues:i.issues});else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(t),n}var Qa=t=>(e,r,n,o)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new Bt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>gt(c,s,rt())));throw Is(a,o?.callee),a}return i.value},ec=Qa(fo),tc=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>gt(c,s,rt())));throw Is(a,o?.callee),a}return i.value},rc=tc(fo),nc=t=>(e,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new Bt;return s.issues.length?{success:!1,error:new(t??Ns)(s.issues.map(i=>gt(i,o,rt())))}:{success:!0,data:s.value}},qr=nc(fo),oc=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>gt(i,o,rt())))}:{success:!0,data:s.value}},Fr=oc(fo);var Sf=/^[cC][^\s-]{8,}$/,bf=/^[0-9a-z]+$/,wf=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Ef=/^[0-9a-vA-V]{20}$/,Tf=/^[A-Za-z0-9]{27}$/,$f=/^[a-zA-Z0-9_-]{21}$/,Pf=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Rf=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,sc=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/;var Of=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var yS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Cf(){return new RegExp(yS,"u")}var If=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,zf=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,Nf=/^((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])$/,Af=/^(([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])$/,jf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,ic=/^[A-Za-z0-9_-]*$/,Mf=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Df=/^\+(?:[0-9]){6,14}[0-9]$/,Lf="(?:(?:\\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])))",Zf=new RegExp(`^${Lf}$`);function Uf(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 Hf(t){return new RegExp(`^${Uf(t)}$`)}function qf(t){let e=Uf({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(`^${Lf}T(?:${n})$`)}var Ff=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Bf=/^\d+$/,Vf=/^-?\d+(?:\.\d+)?/i,Kf=/true|false/i,Jf=/null/i;var Gf=/^[^A-Z]*$/,Wf=/^[^a-z]*$/;var Pe=v("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Yf={number:"number",bigint:"bigint",object:"date"},ac=v("$ZodCheckLessThan",(t,e)=>{Pe.init(t,e);let r=Yf[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<s&&(e.inclusive?o.maximum=e.value:o.exclusiveMaximum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value<=e.value:n.value<e.value)||n.issues.push({origin:r,code:"too_big",maximum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),cc=v("$ZodCheckGreaterThan",(t,e)=>{Pe.init(t,e);let r=Yf[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})}}),Xf=v("$ZodCheckMultipleOf",(t,e)=>{Pe.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):Fa(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),Qf=v("$ZodCheckNumberFormat",(t,e)=>{Pe.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Ga[e.format];t._zod.onattach.push(i=>{let a=i._zod.bag;a.format=e.format,a.minimum=o,a.maximum=s,r&&(a.pattern=Bf)}),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 em=v("$ZodCheckMaxLength",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!uo(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=po(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),tm=v("$ZodCheckMinLength",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!uo(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=po(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),rm=v("$ZodCheckLengthEquals",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!uo(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=po(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})}}),mo=v("$ZodCheckStringFormat",(t,e)=>{var r,n;Pe.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=()=>{})}),nm=v("$ZodCheckRegex",(t,e)=>{mo.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})}}),om=v("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Gf),mo.init(t,e)}),sm=v("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Wf),mo.init(t,e)}),im=v("$ZodCheckIncludes",(t,e)=>{Pe.init(t,e);let r=sr(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(o=>{let s=o._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=o=>{o.value.includes(e.includes,e.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:o.value,inst:t,continue:!e.abort})}}),am=v("$ZodCheckStartsWith",(t,e)=>{Pe.init(t,e);let r=new RegExp(`^${sr(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),cm=v("$ZodCheckEndsWith",(t,e)=>{Pe.init(t,e);let r=new RegExp(`.*${sr(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});var um=v("$ZodCheckOverwrite",(t,e)=>{Pe.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var js=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
44
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var Ix={};Be(Ix,{detectPlatform:()=>Cx,getAdapter:()=>sI});import{existsSync as Xt}from"node:fs";import{resolve as Qt}from"node:path";import{homedir as oI}from"node:os";function Cx(t){if(t?.name){let n=Pv[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","opencode","codex","vscode-copilot","cursor","antigravity","kiro","pi","zed"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};if(process.env.CLAUDE_PROJECT_DIR||process.env.CLAUDE_SESSION_ID)return{platform:"claude-code",confidence:"high",reason:"CLAUDE_PROJECT_DIR or CLAUDE_SESSION_ID env var set"};if(process.env.GEMINI_PROJECT_DIR||process.env.GEMINI_CLI)return{platform:"gemini-cli",confidence:"high",reason:"GEMINI_PROJECT_DIR or GEMINI_CLI env var set"};if(process.env.OPENCLAW_HOME||process.env.OPENCLAW_PROJECT_DIR)return{platform:"openclaw",confidence:"high",reason:"OPENCLAW_HOME or OPENCLAW_PROJECT_DIR env var set"};if(process.env.OPENCODE||process.env.OPENCODE_PID)return{platform:"opencode",confidence:"high",reason:"OPENCODE or OPENCODE_PID env var set"};if(process.env.CODEX_CI||process.env.CODEX_THREAD_ID)return{platform:"codex",confidence:"high",reason:"CODEX_CI or CODEX_THREAD_ID env var set"};if(process.env.CURSOR_TRACE_ID||process.env.CURSOR_CLI)return{platform:"cursor",confidence:"high",reason:"CURSOR_TRACE_ID or CURSOR_CLI env var set"};if(process.env.VSCODE_PID||process.env.VSCODE_CWD)return{platform:"vscode-copilot",confidence:"high",reason:"VSCODE_PID or VSCODE_CWD env var set"};let r=oI();return Xt(Qt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Xt(Qt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Xt(Qt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Xt(Qt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Xt(Qt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Xt(Qt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Xt(Qt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Xt(Qt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Xt(Qt(r,".config","zed"))?{platform:"zed",confidence:"medium",reason:"~/.config/zed/ directory exists"}:{platform:"claude-code",confidence:"low",reason:"No platform detected, defaulting to Claude Code"}}async function sI(t){switch(t??Cx().platform){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Rp(),Pp));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(Uv(),Zv));return new r}case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(Bv(),Fv));return new r}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(Gv(),Jv));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(Qv(),Xv));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(nx(),rx));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(mx(),fx));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(vx(),yx));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(Ex(),wx));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(Ox(),Rx));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Rp(),Pp));return new r}}}var zx=be(()=>{"use strict";Rv()});var L={};Be(L,{BRAND:()=>SS,DIRTY:()=>Tr,EMPTY_PATH:()=>Qx,INVALID:()=>A,NEVER:()=>ok,OK:()=>Ae,ParseStatus:()=>$e,Schema:()=>H,ZodAny:()=>nr,ZodArray:()=>Ft,ZodBigInt:()=>Pr,ZodBoolean:()=>Rr,ZodBranded:()=>io,ZodCatch:()=>Zr,ZodDate:()=>Or,ZodDefault:()=>Lr,ZodDiscriminatedUnion:()=>Rs,ZodEffects:()=>it,ZodEnum:()=>Mr,ZodError:()=>Ve,ZodFirstPartyTypeKind:()=>b,ZodFunction:()=>Cs,ZodIntersection:()=>Nr,ZodIssueCode:()=>k,ZodLazy:()=>Ar,ZodLiteral:()=>jr,ZodMap:()=>_n,ZodNaN:()=>vn,ZodNativeEnum:()=>Dr,ZodNever:()=>ht,ZodNull:()=>Ir,ZodNullable:()=>Ot,ZodNumber:()=>$r,ZodObject:()=>Je,ZodOptional:()=>Ke,ZodParsedType:()=>$,ZodPipeline:()=>ao,ZodPromise:()=>or,ZodReadonly:()=>Ur,ZodRecord:()=>Os,ZodSchema:()=>H,ZodSet:()=>yn,ZodString:()=>rr,ZodSymbol:()=>hn,ZodTransformer:()=>it,ZodTuple:()=>Rt,ZodType:()=>H,ZodUndefined:()=>Cr,ZodUnion:()=>zr,ZodUnknown:()=>qt,ZodVoid:()=>gn,addIssueToContext:()=>E,any:()=>OS,array:()=>NS,bigint:()=>ES,boolean:()=>kf,coerce:()=>nk,custom:()=>vf,date:()=>TS,datetimeRegex:()=>_f,defaultErrorMap:()=>Ut,discriminatedUnion:()=>MS,effect:()=>GS,enum:()=>VS,function:()=>qS,getErrorMap:()=>pn,getParsedType:()=>Pt,instanceof:()=>bS,intersection:()=>DS,isAborted:()=>$s,isAsync:()=>fn,isDirty:()=>Ps,isValid:()=>tr,late:()=>kS,lazy:()=>FS,literal:()=>BS,makeIssue:()=>so,map:()=>US,nan:()=>wS,nativeEnum:()=>KS,never:()=>IS,null:()=>RS,nullable:()=>YS,number:()=>Sf,object:()=>Ha,objectUtil:()=>La,oboolean:()=>rk,onumber:()=>tk,optional:()=>WS,ostring:()=>ek,pipeline:()=>QS,preprocess:()=>XS,promise:()=>JS,quotelessJson:()=>Wx,record:()=>ZS,set:()=>HS,setErrorMap:()=>Xx,strictObject:()=>AS,string:()=>xf,symbol:()=>$S,transformer:()=>GS,tuple:()=>LS,undefined:()=>PS,union:()=>jS,unknown:()=>CS,util:()=>V,void:()=>zS});var V;(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(V||(V={}));var La;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(La||(La={}));var $=V.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Pt=t=>{switch(typeof t){case"undefined":return $.undefined;case"string":return $.string;case"number":return Number.isNaN(t)?$.nan:$.number;case"boolean":return $.boolean;case"function":return $.function;case"bigint":return $.bigint;case"symbol":return $.symbol;case"object":return Array.isArray(t)?$.array:t===null?$.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?$.promise:typeof Map<"u"&&t instanceof Map?$.map:typeof Set<"u"&&t instanceof Set?$.set:typeof Date<"u"&&t instanceof Date?$.date:$.object;default:return $.unknown}};var k=V.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Wx=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Ve=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,V.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Ve.create=t=>new Ve(t);var Yx=(t,e)=>{let r;switch(t.code){case k.invalid_type:t.received===$.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case k.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,V.jsonStringifyReplacer)}`;break;case k.unrecognized_keys:r=`Unrecognized key(s) in object: ${V.joinValues(t.keys,", ")}`;break;case k.invalid_union:r="Invalid input";break;case k.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${V.joinValues(t.options)}`;break;case k.invalid_enum_value:r=`Invalid enum value. Expected ${V.joinValues(t.options)}, received '${t.received}'`;break;case k.invalid_arguments:r="Invalid function arguments";break;case k.invalid_return_type:r="Invalid function return type";break;case k.invalid_date:r="Invalid date";break;case k.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:V.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case k.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case k.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case k.custom:r="Invalid input";break;case k.invalid_intersection_types:r="Intersection results could not be merged";break;case k.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case k.not_finite:r="Number must be finite";break;default:r=e.defaultError,V.assertNever(t)}return{message:r}},Ut=Yx;var pf=Ut;function Xx(t){pf=t}function pn(){return pf}var so=t=>{let{data:e,path:r,errorMaps:n,issueData:o}=t,s=[...r,...o.path||[]],i={...o,path:s};if(o.message!==void 0)return{...o,path:s,message:o.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(i,{data:e,defaultError:a}).message;return{...o,path:s,message:a}},Qx=[];function E(t,e){let r=pn(),n=so({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Ut?void 0:Ut].filter(o=>!!o)});t.common.issues.push(n)}var $e=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return A;o.status==="dirty"&&e.dirty(),n.push(o.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let o of r){let s=await o.key,i=await o.value;n.push({key:s,value:i})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:i}=o;if(s.status==="aborted"||i.status==="aborted")return A;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||o.alwaysSet)&&(n[s.value]=i.value)}return{status:e.value,value:n}}},A=Object.freeze({status:"aborted"}),Tr=t=>({status:"dirty",value:t}),Ae=t=>({status:"valid",value:t}),$s=t=>t.status==="aborted",Ps=t=>t.status==="dirty",tr=t=>t.status==="valid",fn=t=>typeof Promise<"u"&&t instanceof Promise;var O;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(O||(O={}));var st=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},ff=(t,e)=>{if(tr(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Ve(t.common.issues);return this._error=r,this._error}}};function Z(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message:c}=t;return i.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:o}}var H=class{get description(){return this._def.description}_getType(e){return Pt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Pt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new $e,ctx:{common:e.parent.common,data:e.data,parsedType:Pt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(fn(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return ff(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return tr(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>tr(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(fn(o)?o:Promise.resolve(o));return ff(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:k.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new it({schema:this,typeName:b.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return Ke.create(this,this._def)}nullable(){return Ot.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ft.create(this)}promise(){return or.create(this,this._def)}or(e){return zr.create([this,e],this._def)}and(e){return Nr.create(this,e,this._def)}transform(e){return new it({...Z(this._def),schema:this,typeName:b.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Lr({...Z(this._def),innerType:this,defaultValue:r,typeName:b.ZodDefault})}brand(){return new io({typeName:b.ZodBranded,type:this,...Z(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Zr({...Z(this._def),innerType:this,catchValue:r,typeName:b.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return ao.create(this,e)}readonly(){return Ur.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},eS=/^c[^\s-]{8,}$/i,tS=/^[0-9a-z]+$/,rS=/^[0-9A-HJKMNP-TV-Z]{26}$/i,nS=/^[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,oS=/^[a-z0-9_-]{21}$/i,sS=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,iS=/^[-+]?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)?)??$/,aS=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,cS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Za,uS=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,lS=/^(?:(?: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])$/,dS=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,pS=/^(([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])$/,fS=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,mS=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,hf="((\\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])))",hS=new RegExp(`^${hf}$`);function gf(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 gS(t){return new RegExp(`^${gf(t)}$`)}function _f(t){let e=`${hf}T${gf(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function _S(t,e){return!!((e==="v4"||!e)&&uS.test(t)||(e==="v6"||!e)&&dS.test(t))}function yS(t,e){if(!sS.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 vS(t,e){return!!((e==="v4"||!e)&&lS.test(t)||(e==="v6"||!e)&&pS.test(t))}var rr=class t extends H{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==$.string){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:$.string,received:s.parsedType}),A}let n=new $e,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),E(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),E(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?E(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&E(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")aS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"email",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Za||(Za=new RegExp(cS,"u")),Za.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"emoji",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")nS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"uuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")oS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"nanoid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")eS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")tS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cuid2",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")rS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"ulid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),E(o,{validation:"url",code:k.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"regex",code:k.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?_f(s).test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?hS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?gS(s).test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?iS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"duration",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?_S(e.data,s.version)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"ip",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?yS(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"jwt",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?vS(e.data,s.version)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cidr",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?fS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?mS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64url",code:k.invalid_string,message:s.message}),n.dirty()):V.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:k.invalid_string,...O.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...O.errToObj(e)})}url(e){return this._addCheck({kind:"url",...O.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...O.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...O.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...O.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...O.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...O.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...O.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...O.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...O.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...O.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...O.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...O.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...O.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...O.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...O.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...O.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...O.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...O.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...O.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...O.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...O.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...O.errToObj(r)})}nonempty(e){return this.min(1,O.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};rr.create=t=>new rr({checks:[],typeName:b.ZodString,coerce:t?.coerce??!1,...Z(t)});function xS(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}var $r=class t extends H{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==$.number){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:$.number,received:s.parsedType}),A}let n,o=new $e;for(let s of this._def.checks)s.kind==="int"?V.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),E(n,{code:k.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?xS(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),E(n,{code:k.not_finite,message:s.message}),o.dirty()):V.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,O.toString(r))}gt(e,r){return this.setLimit("min",e,!1,O.toString(r))}lte(e,r){return this.setLimit("max",e,!0,O.toString(r))}lt(e,r){return this.setLimit("max",e,!1,O.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:O.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:O.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:O.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:O.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:O.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:O.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:O.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:O.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:O.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:O.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&V.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};$r.create=t=>new $r({checks:[],typeName:b.ZodNumber,coerce:t?.coerce||!1,...Z(t)});var Pr=class t extends H{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==$.bigint)return this._getInvalidInput(e);let n,o=new $e;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):V.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return E(r,{code:k.invalid_type,expected:$.bigint,received:r.parsedType}),A}gte(e,r){return this.setLimit("min",e,!0,O.toString(r))}gt(e,r){return this.setLimit("min",e,!1,O.toString(r))}lte(e,r){return this.setLimit("max",e,!0,O.toString(r))}lt(e,r){return this.setLimit("max",e,!1,O.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:O.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:O.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:O.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:O.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:O.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:O.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};Pr.create=t=>new Pr({checks:[],typeName:b.ZodBigInt,coerce:t?.coerce??!1,...Z(t)});var Rr=class extends H{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==$.boolean){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.boolean,received:n.parsedType}),A}return Ae(e.data)}};Rr.create=t=>new Rr({typeName:b.ZodBoolean,coerce:t?.coerce||!1,...Z(t)});var Or=class t extends H{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==$.date){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:$.date,received:s.parsedType}),A}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_date}),A}let n=new $e,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),E(o,{code:k.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),E(o,{code:k.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):V.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:O.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:O.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};Or.create=t=>new Or({checks:[],coerce:t?.coerce||!1,typeName:b.ZodDate,...Z(t)});var hn=class extends H{_parse(e){if(this._getType(e)!==$.symbol){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.symbol,received:n.parsedType}),A}return Ae(e.data)}};hn.create=t=>new hn({typeName:b.ZodSymbol,...Z(t)});var Cr=class extends H{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.undefined,received:n.parsedType}),A}return Ae(e.data)}};Cr.create=t=>new Cr({typeName:b.ZodUndefined,...Z(t)});var Ir=class extends H{_parse(e){if(this._getType(e)!==$.null){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.null,received:n.parsedType}),A}return Ae(e.data)}};Ir.create=t=>new Ir({typeName:b.ZodNull,...Z(t)});var nr=class extends H{constructor(){super(...arguments),this._any=!0}_parse(e){return Ae(e.data)}};nr.create=t=>new nr({typeName:b.ZodAny,...Z(t)});var qt=class extends H{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ae(e.data)}};qt.create=t=>new qt({typeName:b.ZodUnknown,...Z(t)});var ht=class extends H{_parse(e){let r=this._getOrReturnCtx(e);return E(r,{code:k.invalid_type,expected:$.never,received:r.parsedType}),A}};ht.create=t=>new ht({typeName:b.ZodNever,...Z(t)});var gn=class extends H{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.void,received:n.parsedType}),A}return Ae(e.data)}};gn.create=t=>new gn({typeName:b.ZodVoid,...Z(t)});var Ft=class t extends H{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==$.array)return E(r,{code:k.invalid_type,expected:$.array,received:r.parsedType}),A;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(E(r,{code:i?k.too_big:k.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(E(r,{code:k.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(E(r,{code:k.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((i,a)=>o.type._parseAsync(new st(r,i,r.path,a)))).then(i=>$e.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new st(r,i,r.path,a)));return $e.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:O.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:O.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:O.toString(r)}})}nonempty(e){return this.min(1,e)}};Ft.create=(t,e)=>new Ft({type:t,minLength:null,maxLength:null,exactLength:null,typeName:b.ZodArray,...Z(e)});function mn(t){if(t instanceof Je){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Ke.create(mn(n))}return new Je({...t._def,shape:()=>e})}else return t instanceof Ft?new Ft({...t._def,type:mn(t.element)}):t instanceof Ke?Ke.create(mn(t.unwrap())):t instanceof Ot?Ot.create(mn(t.unwrap())):t instanceof Rt?Rt.create(t.items.map(e=>mn(e))):t}var Je=class t extends H{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=V.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==$.object){let u=this._getOrReturnCtx(e);return E(u,{code:k.invalid_type,expected:$.object,received:u.parsedType}),A}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof ht&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new st(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof ht){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(E(o,{code:k.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new st(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,f=await l.value;u.push({key:d,value:f,alwaysSet:l.alwaysSet})}return u}).then(u=>$e.mergeObjectSync(n,u)):$e.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return O.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:O.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:b.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of V.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of V.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return mn(this)}partial(e){let r={};for(let n of V.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of V.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Ke;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return yf(V.objectKeys(this.shape))}};Je.create=(t,e)=>new Je({shape:()=>t,unknownKeys:"strip",catchall:ht.create(),typeName:b.ZodObject,...Z(e)});Je.strictCreate=(t,e)=>new Je({shape:()=>t,unknownKeys:"strict",catchall:ht.create(),typeName:b.ZodObject,...Z(e)});Je.lazycreate=(t,e)=>new Je({shape:t,unknownKeys:"strip",catchall:ht.create(),typeName:b.ZodObject,...Z(e)});var zr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function o(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let i=s.map(a=>new Ve(a.ctx.common.issues));return E(r,{code:k.invalid_union,unionErrors:i}),A}if(r.common.async)return Promise.all(n.map(async s=>{let i={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:i}),ctx:i}})).then(o);{let s,i=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=i.map(c=>new Ve(c));return E(r,{code:k.invalid_union,unionErrors:a}),A}}get options(){return this._def.options}};zr.create=(t,e)=>new zr({options:t,typeName:b.ZodUnion,...Z(e)});var Ht=t=>t instanceof Ar?Ht(t.schema):t instanceof it?Ht(t.innerType()):t instanceof jr?[t.value]:t instanceof Mr?t.options:t instanceof Dr?V.objectValues(t.enum):t instanceof Lr?Ht(t._def.innerType):t instanceof Cr?[void 0]:t instanceof Ir?[null]:t instanceof Ke?[void 0,...Ht(t.unwrap())]:t instanceof Ot?[null,...Ht(t.unwrap())]:t instanceof io||t instanceof Ur?Ht(t.unwrap()):t instanceof Zr?Ht(t._def.innerType):[],Rs=class t extends H{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.object)return E(r,{code:k.invalid_type,expected:$.object,received:r.parsedType}),A;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(E(r,{code:k.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),A)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let o=new Map;for(let s of r){let i=Ht(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:b.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...Z(n)})}};function Ua(t,e){let r=Pt(t),n=Pt(e);if(t===e)return{valid:!0,data:t};if(r===$.object&&n===$.object){let o=V.objectKeys(e),s=V.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=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 Nr=class extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if($s(s)||$s(i))return A;let a=Ua(s.value,i.value);return a.valid?((Ps(s)||Ps(i))&&r.dirty(),{status:r.value,value:a.data}):(E(n,{code:k.invalid_intersection_types}),A)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Nr.create=(t,e,r)=>new Nr({left:t,right:e,typeName:b.ZodIntersection,...Z(r)});var Rt=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.array)return E(n,{code:k.invalid_type,expected:$.array,received:n.parsedType}),A;if(n.data.length<this._def.items.length)return E(n,{code:k.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),A;!this._def.rest&&n.data.length>this._def.items.length&&(E(n,{code:k.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new st(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>$e.mergeArray(r,i)):$e.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Rt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Rt({items:t,typeName:b.ZodTuple,rest:null,...Z(e)})};var Os=class t extends H{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.object)return E(n,{code:k.invalid_type,expected:$.object,received:n.parsedType}),A;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new st(n,a,n.path,a)),value:i._parse(new st(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?$e.mergeObjectAsync(r,o):$e.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof H?new t({keyType:e,valueType:r,typeName:b.ZodRecord,...Z(n)}):new t({keyType:rr.create(),valueType:e,typeName:b.ZodRecord,...Z(r)})}},_n=class extends H{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.map)return E(n,{code:k.invalid_type,expected:$.map,received:n.parsedType}),A;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new st(n,a,n.path,[u,"key"])),value:s._parse(new st(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return A;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of i){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return A;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};_n.create=(t,e,r)=>new _n({valueType:e,keyType:t,typeName:b.ZodMap,...Z(r)});var yn=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.set)return E(n,{code:k.invalid_type,expected:$.set,received:n.parsedType}),A;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(E(n,{code:k.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(E(n,{code:k.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function i(c){let u=new Set;for(let l of c){if(l.status==="aborted")return A;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new st(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:O.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:O.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};yn.create=(t,e)=>new yn({valueType:t,minSize:null,maxSize:null,typeName:b.ZodSet,...Z(e)});var Cs=class t extends H{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.function)return E(r,{code:k.invalid_type,expected:$.function,received:r.parsedType}),A;function n(a,c){return so({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,pn(),Ut].filter(u=>!!u),issueData:{code:k.invalid_arguments,argumentsError:c}})}function o(a,c){return so({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,pn(),Ut].filter(u=>!!u),issueData:{code:k.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof or){let a=this;return Ae(async function(...c){let u=new Ve([]),l=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(m=>{throw u.addIssue(o(d,m)),u})})}else{let a=this;return Ae(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Ve([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Ve([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Rt.create(e).rest(qt.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Rt.create([]).rest(qt.create()),returns:r||qt.create(),typeName:b.ZodFunction,...Z(n)})}},Ar=class extends H{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Ar.create=(t,e)=>new Ar({getter:t,typeName:b.ZodLazy,...Z(e)});var jr=class extends H{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return E(r,{received:r.data,code:k.invalid_literal,expected:this._def.value}),A}return{status:"valid",value:e.data}}get value(){return this._def.value}};jr.create=(t,e)=>new jr({value:t,typeName:b.ZodLiteral,...Z(e)});function yf(t,e){return new Mr({values:t,typeName:b.ZodEnum,...Z(e)})}var Mr=class t extends H{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return E(r,{expected:V.joinValues(n),received:r.parsedType,code:k.invalid_type}),A}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return E(r,{received:r.data,code:k.invalid_enum_value,options:n}),A}return Ae(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};Mr.create=yf;var Dr=class extends H{_parse(e){let r=V.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==$.string&&n.parsedType!==$.number){let o=V.objectValues(r);return E(n,{expected:V.joinValues(o),received:n.parsedType,code:k.invalid_type}),A}if(this._cache||(this._cache=new Set(V.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=V.objectValues(r);return E(n,{received:n.data,code:k.invalid_enum_value,options:o}),A}return Ae(e.data)}get enum(){return this._def.values}};Dr.create=(t,e)=>new Dr({values:t,typeName:b.ZodNativeEnum,...Z(e)});var or=class extends H{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.promise&&r.common.async===!1)return E(r,{code:k.invalid_type,expected:$.promise,received:r.parsedType}),A;let n=r.parsedType===$.promise?r.data:Promise.resolve(r.data);return Ae(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};or.create=(t,e)=>new or({type:t,typeName:b.ZodPromise,...Z(e)});var it=class extends H{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===b.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{E(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return A;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?A:c.status==="dirty"?Tr(c.value):r.value==="dirty"?Tr(c.value):c});{if(r.value==="aborted")return A;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?A:a.status==="dirty"?Tr(a.value):r.value==="dirty"?Tr(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?A:(a.status==="dirty"&&r.dirty(),i(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?A:(a.status==="dirty"&&r.dirty(),i(a.value).then(()=>({status:r.value,value:a.value}))))}if(o.type==="transform")if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!tr(i))return A;let a=o.transform(i.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>tr(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):A);V.assertNever(o)}};it.create=(t,e,r)=>new it({schema:t,typeName:b.ZodEffects,effect:e,...Z(r)});it.createWithPreprocess=(t,e,r)=>new it({schema:e,effect:{type:"preprocess",transform:t},typeName:b.ZodEffects,...Z(r)});var Ke=class extends H{_parse(e){return this._getType(e)===$.undefined?Ae(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ke.create=(t,e)=>new Ke({innerType:t,typeName:b.ZodOptional,...Z(e)});var Ot=class extends H{_parse(e){return this._getType(e)===$.null?Ae(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ot.create=(t,e)=>new Ot({innerType:t,typeName:b.ZodNullable,...Z(e)});var Lr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===$.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Lr.create=(t,e)=>new Lr({innerType:t,typeName:b.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Z(e)});var Zr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return fn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Ve(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Ve(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Zr.create=(t,e)=>new Zr({innerType:t,typeName:b.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Z(e)});var vn=class extends H{_parse(e){if(this._getType(e)!==$.nan){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.nan,received:n.parsedType}),A}return{status:"valid",value:e.data}}};vn.create=t=>new vn({typeName:b.ZodNaN,...Z(t)});var SS=Symbol("zod_brand"),io=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},ao=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?A:s.status==="dirty"?(r.dirty(),Tr(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?A:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:b.ZodPipeline})}},Ur=class extends H{_parse(e){let r=this._def.innerType._parse(e),n=o=>(tr(o)&&(o.value=Object.freeze(o.value)),o);return fn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Ur.create=(t,e)=>new Ur({innerType:t,typeName:b.ZodReadonly,...Z(e)});function mf(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function vf(t,e={},r){return t?nr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=mf(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=mf(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):nr.create()}var kS={object:Je.lazycreate},b;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(b||(b={}));var bS=(t,e={message:`Input not instance of ${t.name}`})=>vf(r=>r instanceof t,e),xf=rr.create,Sf=$r.create,wS=vn.create,ES=Pr.create,kf=Rr.create,TS=Or.create,$S=hn.create,PS=Cr.create,RS=Ir.create,OS=nr.create,CS=qt.create,IS=ht.create,zS=gn.create,NS=Ft.create,Ha=Je.create,AS=Je.strictCreate,jS=zr.create,MS=Rs.create,DS=Nr.create,LS=Rt.create,ZS=Os.create,US=_n.create,HS=yn.create,qS=Cs.create,FS=Ar.create,BS=jr.create,VS=Mr.create,KS=Dr.create,JS=or.create,GS=it.create,WS=Ke.create,YS=Ot.create,XS=it.createWithPreprocess,QS=ao.create,ek=()=>xf().optional(),tk=()=>Sf().optional(),rk=()=>kf().optional(),nk={string:(t=>rr.create({...t,coerce:!0})),number:(t=>$r.create({...t,coerce:!0})),boolean:(t=>Rr.create({...t,coerce:!0})),bigint:(t=>Pr.create({...t,coerce:!0})),date:(t=>Or.create({...t,coerce:!0}))};var ok=A;var sk=Object.freeze({status:"aborted"});function v(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var Bt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Is={};function rt(t){return t&&Object.assign(Is,t),Is}var J={};Be(J,{BIGINT_FORMAT_RANGES:()=>wf,Class:()=>Fa,NUMBER_FORMAT_RANGES:()=>Ya,aborted:()=>qr,allowsEval:()=>Ja,assert:()=>lk,assertEqual:()=>ik,assertIs:()=>ck,assertNever:()=>uk,assertNotEqual:()=>ak,assignProp:()=>Ka,cached:()=>lo,captureStackTrace:()=>Ns,cleanEnum:()=>bk,cleanRegex:()=>fo,clone:()=>nt,createTransparentProxy:()=>gk,defineLazy:()=>ce,esc:()=>Hr,escapeRegex:()=>sr,extend:()=>vk,finalizeIssue:()=>gt,floatSafeRemainder:()=>Va,getElementAtPath:()=>dk,getEnumValues:()=>uo,getLengthableOrigin:()=>mo,getParsedType:()=>hk,getSizableOrigin:()=>Ef,isObject:()=>xn,isPlainObject:()=>Sn,issue:()=>Xa,joinValues:()=>zs,jsonStringifyReplacer:()=>Ba,merge:()=>xk,normalizeParams:()=>j,nullish:()=>po,numKeys:()=>mk,omit:()=>yk,optionalKeys:()=>Wa,partial:()=>Sk,pick:()=>_k,prefixIssues:()=>Ct,primitiveTypes:()=>bf,promiseAllObject:()=>pk,propertyKeyTypes:()=>Ga,randomString:()=>fk,required:()=>kk,stringifyPrimitive:()=>As,unwrapMessage:()=>co});function ik(t){return t}function ak(t){return t}function ck(t){}function uk(t){throw new Error}function lk(t){}function uo(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,o])=>e.indexOf(+n)===-1).map(([n,o])=>o)}function zs(t,e="|"){return t.map(r=>As(r)).join(e)}function Ba(t,e){return typeof e=="bigint"?e.toString():e}function lo(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function po(t){return t==null}function fo(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function 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 dk(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function pk(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 fk(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Hr(t){return JSON.stringify(t)}var Ns=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function xn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Ja=lo(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Sn(t){if(xn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(xn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function mk(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var hk=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"]),bf=new Set(["string","number","bigint","boolean","symbol","undefined"]);function sr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function nt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function j(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function gk(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 As(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Wa(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]},wf={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function _k(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return nt(t,{...t._zod.def,shape:r,checks:[]})}function yk(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete r[o]}return nt(t,{...t._zod.def,shape:r,checks:[]})}function vk(t,e){if(!Sn(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return Ka(this,"shape",n),n},checks:[]};return nt(t,r)}function xk(t,e){return nt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Ka(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function Sk(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return nt(e,{...e._zod.def,shape:o,checks:[]})}function kk(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)o[s]=new t({type:"nonoptional",innerType:n[s]});return nt(e,{...e._zod.def,shape:o,checks:[]})}function qr(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Ct(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function co(t){return typeof t=="string"?t:t?.message}function gt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=co(t.inst?._zod.def?.error?.(t))??co(e?.error?.(t))??co(r.customError?.(t))??co(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Ef(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function mo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Xa(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function bk(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Fa=class{constructor(...e){}};var Tf=(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})},js=v("$ZodError",Tf),ho=v("$ZodError",Tf,{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 Bt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>gt(c,s,rt())));throw Ns(a,o?.callee),a}return i.value},rc=tc(ho),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=>gt(c,s,rt())));throw Ns(a,o?.callee),a}return i.value},oc=nc(ho),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 Bt;return s.issues.length?{success:!1,error:new(t??js)(s.issues.map(i=>gt(i,o,rt())))}:{success:!0,data:s.value}},Fr=sc(ho),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=>gt(i,o,rt())))}:{success:!0,data:s.value}},Br=ic(ho);var $f=/^[cC][^\s-]{8,}$/,Pf=/^[0-9a-z]+$/,Rf=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Of=/^[0-9a-vA-V]{20}$/,Cf=/^[A-Za-z0-9]{27}$/,If=/^[a-zA-Z0-9_-]{21}$/,zf=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Nf=/^([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 Af=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Ek="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function jf(){return new RegExp(Ek,"u")}var Mf=/^(?:(?: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])$/,Df=/^(([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})$/,Lf=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Zf=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Uf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,cc=/^[A-Za-z0-9_-]*$/,Hf=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var qf=/^\+(?:[0-9]){6,14}[0-9]$/,Ff="(?:(?:\\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])))",Bf=new RegExp(`^${Ff}$`);function Vf(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 Kf(t){return new RegExp(`^${Vf(t)}$`)}function Jf(t){let e=Vf({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(`^${Ff}T(?:${n})$`)}var Gf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Wf=/^\d+$/,Yf=/^-?\d+(?:\.\d+)?/i,Xf=/true|false/i,Qf=/null/i;var em=/^[^A-Z]*$/,tm=/^[^a-z]*$/;var Pe=v("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),rm={number:"number",bigint:"bigint",object:"date"},uc=v("$ZodCheckLessThan",(t,e)=>{Pe.init(t,e);let r=rm[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)=>{Pe.init(t,e);let r=rm[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})}}),nm=v("$ZodCheckMultipleOf",(t,e)=>{Pe.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})}}),om=v("$ZodCheckNumberFormat",(t,e)=>{Pe.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=Wf)}),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 sm=v("$ZodCheckMaxLength",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!po(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<o&&(n._zod.bag.maximum=e.maximum)}),t._zod.check=n=>{let o=n.value;if(o.length<=e.maximum)return;let i=mo(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),im=v("$ZodCheckMinLength",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!po(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>o&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let o=n.value;if(o.length>=e.minimum)return;let i=mo(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),am=v("$ZodCheckLengthEquals",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!po(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=e.length,o.maximum=e.length,o.length=e.length}),t._zod.check=n=>{let o=n.value,s=o.length;if(s===e.length)return;let i=mo(o),a=s>e.length;n.issues.push({origin:i,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),go=v("$ZodCheckStringFormat",(t,e)=>{var r,n;Pe.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=()=>{})}),cm=v("$ZodCheckRegex",(t,e)=>{go.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),um=v("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=em),go.init(t,e)}),lm=v("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=tm),go.init(t,e)}),dm=v("$ZodCheckIncludes",(t,e)=>{Pe.init(t,e);let r=sr(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(o=>{let s=o._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=o=>{o.value.includes(e.includes,e.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:o.value,inst:t,continue:!e.abort})}}),pm=v("$ZodCheckStartsWith",(t,e)=>{Pe.init(t,e);let r=new RegExp(`^${sr(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),fm=v("$ZodCheckEndsWith",(t,e)=>{Pe.init(t,e);let r=new RegExp(`.*${sr(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});var mm=v("$ZodCheckOverwrite",(t,e)=>{Pe.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Ds=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
45
45
  `).filter(i=>i),o=Math.min(...n.map(i=>i.length-i.trimStart().length)),s=n.map(i=>i.slice(o)).map(i=>" ".repeat(this.indent*2)+i);for(let i of s)this.content.push(i)}compile(){let e=Function,r=this?.args,o=[...(this?.content??[""]).map(s=>` ${s}`)];return new e(...r,o.join(`
46
- `))}};var dm={major:4,minor:0,patch:0};var re=v("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=dm;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let o of n)for(let s of o._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let o=(s,i,a)=>{let c=Hr(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,f=l._zod.check(s);if(f instanceof Promise&&a?.async===!1)throw new Bt;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await f,s.issues.length!==d&&(c||(c=Hr(s,d)))});else{if(s.issues.length===d)continue;c||(c=Hr(s,d))}}return u?u.then(()=>s):s};t._zod.run=(s,i)=>{let a=t._zod.parse(s,i);if(a instanceof Promise){if(i.async===!1)throw new Bt;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=qr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Fr(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),ho=v("$ZodString",(t,e)=>{re.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Ff(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)=>{mo.init(t,e),ho.init(t,e)}),lc=v("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Rf),ue.init(t,e)}),dc=v("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=sc(n))}else e.pattern??(e.pattern=sc());ue.init(t,e)}),pc=v("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Of),ue.init(t,e)}),fc=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:Mf.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),!n.endsWith("/")&&s.endsWith("/")?r.value=s.slice(0,-1):r.value=s;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),mc=v("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Cf()),ue.init(t,e)}),hc=v("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=$f),ue.init(t,e)}),gc=v("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Sf),ue.init(t,e)}),_c=v("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=bf),ue.init(t,e)}),yc=v("$ZodULID",(t,e)=>{e.pattern??(e.pattern=wf),ue.init(t,e)}),vc=v("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Ef),ue.init(t,e)}),xc=v("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Tf),ue.init(t,e)}),km=v("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=qf(e)),ue.init(t,e)}),Sm=v("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Zf),ue.init(t,e)}),bm=v("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Hf(e)),ue.init(t,e)}),wm=v("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Pf),ue.init(t,e)}),kc=v("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=If),ue.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),Sc=v("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=zf),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})}}}),bc=v("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Nf),ue.init(t,e)}),wc=v("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Af),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 Em(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var Ec=v("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=jf),ue.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Em(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function vS(t){if(!ic.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Em(r)}var Tc=v("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=ic),ue.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{vS(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),$c=v("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Df),ue.init(t,e)});function xS(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||e&&(!("alg"in o)||o.alg!==e))}catch{return!1}}var Pc=v("$ZodJWT",(t,e)=>{ue.init(t,e),t._zod.check=r=>{xS(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Ds=v("$ZodNumber",(t,e)=>{re.init(t,e),t._zod.pattern=t._zod.bag.pattern??Vf,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let o=r.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let s=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:t,...s?{received:s}:{}}),r}}),Rc=v("$ZodNumber",(t,e)=>{Qf.init(t,e),Ds.init(t,e)}),Oc=v("$ZodBoolean",(t,e)=>{re.init(t,e),t._zod.pattern=Kf,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let o=r.value;return typeof o=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:t}),r}});var Cc=v("$ZodNull",(t,e)=>{re.init(t,e),t._zod.pattern=Jf,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let o=r.value;return o===null||r.issues.push({expected:"null",code:"invalid_type",input:o,inst:t}),r}});var Ic=v("$ZodUnknown",(t,e)=>{re.init(t,e),t._zod.parse=r=>r}),zc=v("$ZodNever",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function pm(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}var Nc=v("$ZodArray",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let s=[];for(let i=0;i<o.length;i++){let a=o[i],c=e.element._zod.run({value:a,issues:[]},n);c instanceof Promise?s.push(c.then(u=>pm(u,r,i))):pm(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Ms(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}function fm(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...Ct(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Ls=v("$ZodObject",(t,e)=>{re.init(t,e);let r=co(()=>{let d=Object.keys(e.shape);for(let m of d)if(!(e.shape[m]instanceof re))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let f=Ja(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});ce(t._zod,"propValues",()=>{let d=e.shape,f={};for(let m in d){let p=d[m]._zod;if(p.values){f[m]??(f[m]=new Set);for(let h of p.values)f[m].add(h)}}return f});let n=d=>{let f=new js(["shape","payload","ctx"]),m=r.value,p=x=>{let k=Ur(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=Ur(x);f.write(`
47
- if (${k}.issues.length) {
46
+ `))}};var gm={major:4,minor:0,patch:0};var re=v("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=gm;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let o of n)for(let s of o._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let o=(s,i,a)=>{let c=qr(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,f=l._zod.check(s);if(f instanceof Promise&&a?.async===!1)throw new Bt;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await f,s.issues.length!==d&&(c||(c=qr(s,d)))});else{if(s.issues.length===d)continue;c||(c=qr(s,d))}}return u?u.then(()=>s):s};t._zod.run=(s,i)=>{let a=t._zod.parse(s,i);if(a instanceof Promise){if(i.async===!1)throw new Bt;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=Fr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Br(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),_o=v("$ZodString",(t,e)=>{re.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Gf(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)=>{go.init(t,e),_o.init(t,e)}),pc=v("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Nf),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=Af),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:Hf.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=jf()),ue.init(t,e)}),_c=v("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=If),ue.init(t,e)}),yc=v("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=$f),ue.init(t,e)}),vc=v("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Pf),ue.init(t,e)}),xc=v("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Rf),ue.init(t,e)}),Sc=v("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Of),ue.init(t,e)}),kc=v("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Cf),ue.init(t,e)}),Tm=v("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Jf(e)),ue.init(t,e)}),$m=v("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Bf),ue.init(t,e)}),Pm=v("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Kf(e)),ue.init(t,e)}),Rm=v("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=zf),ue.init(t,e)}),bc=v("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Mf),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=Df),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=Lf),ue.init(t,e)}),Tc=v("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Zf),ue.init(t,e),t._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let s=Number(o);if(`${s}`!==o)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function Om(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=Uf),ue.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Om(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function Tk(t){if(!cc.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Om(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=>{Tk(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=qf),ue.init(t,e)});function $k(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=>{$k(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Zs=v("$ZodNumber",(t,e)=>{re.init(t,e),t._zod.pattern=t._zod.bag.pattern??Yf,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)=>{om.init(t,e),Zs.init(t,e)}),Ic=v("$ZodBoolean",(t,e)=>{re.init(t,e),t._zod.pattern=Xf,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)=>{re.init(t,e),t._zod.pattern=Qf,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let o=r.value;return o===null||r.issues.push({expected:"null",code:"invalid_type",input:o,inst:t}),r}});var Nc=v("$ZodUnknown",(t,e)=>{re.init(t,e),t._zod.parse=r=>r}),Ac=v("$ZodNever",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function _m(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}var jc=v("$ZodArray",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let s=[];for(let i=0;i<o.length;i++){let a=o[i],c=e.element._zod.run({value:a,issues:[]},n);c instanceof Promise?s.push(c.then(u=>_m(u,r,i))):_m(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Ls(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}function ym(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...Ct(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Us=v("$ZodObject",(t,e)=>{re.init(t,e);let r=lo(()=>{let d=Object.keys(e.shape);for(let m of d)if(!(e.shape[m]instanceof re))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let f=Wa(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 Ds(["shape","payload","ctx"]),m=r.value,p=x=>{let S=Hr(x);return`shape[${S}]._zod.run({ value: input[${S}], issues: [] }, ctx)`};f.write("const input = payload.value;");let h=Object.create(null),g=0;for(let x of m.keys)h[x]=`key_${g++}`;f.write("const newResult = {}");for(let x of m.keys)if(m.optionalKeys.has(x)){let S=h[x];f.write(`const ${S} = ${p(x)};`);let w=Hr(x);f.write(`
47
+ if (${S}.issues.length) {
48
48
  if (input[${w}] === undefined) {
49
49
  if (${w} in input) {
50
50
  newResult[${w}] = undefined;
51
51
  }
52
52
  } else {
53
53
  payload.issues = payload.issues.concat(
54
- ${k}.issues.map((iss) => ({
54
+ ${S}.issues.map((iss) => ({
55
55
  ...iss,
56
56
  path: iss.path ? [${w}, ...iss.path] : [${w}],
57
57
  }))
58
58
  );
59
59
  }
60
- } else if (${k}.value === undefined) {
60
+ } else if (${S}.value === undefined) {
61
61
  if (${w} in input) newResult[${w}] = undefined;
62
62
  } else {
63
- newResult[${w}] = ${k}.value;
63
+ newResult[${w}] = ${S}.value;
64
64
  }
65
- `)}else{let k=h[x];f.write(`const ${k} = ${p(x)};`),f.write(`
66
- if (${k}.issues.length) payload.issues = payload.issues.concat(${k}.issues.map(iss => ({
65
+ `)}else{let S=h[x];f.write(`const ${S} = ${p(x)};`),f.write(`
66
+ if (${S}.issues.length) payload.issues = payload.issues.concat(${S}.issues.map(iss => ({
67
67
  ...iss,
68
- path: iss.path ? [${Ur(x)}, ...iss.path] : [${Ur(x)}]
69
- })));`),f.write(`newResult[${Ur(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=yn,i=!Os.jitless,c=i&&Va.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 R=k[w],ie=R._zod.run({value:m[w],issues:[]},f),ae=R._zod.optin==="optional"&&R._zod.optout==="optional";ie instanceof Promise?p.push(ie.then(tt=>ae?fm(tt,d,w,m):Ms(tt,d,w))):ae?fm(ie,d,w,m):Ms(ie,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(R=>Ms(R,d,k))):Ms(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 mm(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>gt(s,n,rt())))}),e}var Zs=v("$ZodUnion",(t,e)=>{re.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=>lo(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=>mm(i,r,t,n)):mm(s,r,t,n)}}),Ac=v("$ZodDiscriminatedUnion",(t,e)=>{Zs.init(t,e);let r=t._zod.parse;ce(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=co(()=>{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(!yn(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:t}),o;let a=n.value.get(i?.[e.discriminator]);return a?a._zod.run(o,s):e.unionFallback?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[e.discriminator],inst:t}),o)}}),jc=v("$ZodIntersection",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>hm(r,c,u)):hm(r,s,i)}});function uc(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(vn(t)&&vn(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),o={...t,...e};for(let s of n){let i=uc(t[s],e[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<t.length;n++){let o=t[n],s=e[n],i=uc(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function hm(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Hr(t))return t;let n=uc(e.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return t.value=n.data,t}var Mc=v("$ZodRecord",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!vn(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:o[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...Ct(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Ct(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>gt(u,n,rt())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Ct(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Ct(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Dc=v("$ZodEnum",(t,e)=>{re.init(t,e);let r=ao(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ka.has(typeof n)).map(n=>typeof n=="string"?sr(n):n.toString()).join("|")})$`),t._zod.parse=(n,o)=>{let s=n.value;return t._zod.values.has(s)||n.issues.push({code:"invalid_value",values:r,input:s,inst:t}),n}}),Lc=v("$ZodLiteral",(t,e)=>{re.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?sr(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let o=r.value;return t._zod.values.has(o)||r.issues.push({code:"invalid_value",values:e.values,input:o,inst:t}),r}});var Zc=v("$ZodTransform",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r));if(o instanceof Promise)throw new Bt;return r.value=o,r}}),Uc=v("$ZodOptional",(t,e)=>{re.init(t,e),t._zod.optin="optional",t._zod.optout="optional",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(`^(${lo(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>e.innerType._zod.optin==="optional"?e.innerType._zod.run(r,n):r.value===void 0?r:e.innerType._zod.run(r,n)}),Hc=v("$ZodNullable",(t,e)=>{re.init(t,e),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(`^(${lo(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)}),qc=v("$ZodDefault",(t,e)=>{re.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=>gm(s,e)):gm(o,e)}});function gm(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Fc=v("$ZodPrefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",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))}),Bc=v("$ZodNonOptional",(t,e)=>{re.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=>_m(s,t)):_m(o,t)}});function _m(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var Vc=v("$ZodCatch",(t,e)=>{re.init(t,e),t._zod.optin="optional",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=>gt(i,n,rt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>gt(s,n,rt()))},input:r.value}),r.issues=[]),r)}});var Kc=v("$ZodPipe",(t,e)=>{re.init(t,e),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=>ym(s,e,n)):ym(o,e,n)}});function ym(t,e,r){return Hr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Jc=v("$ZodReadonly",(t,e)=>{re.init(t,e),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(vm):vm(o)}});function vm(t){return t.value=Object.freeze(t.value),t}var Gc=v("$ZodCustom",(t,e)=>{Pe.init(t,e),re.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,o=e.fn(n);if(o instanceof Promise)return o.then(s=>xm(s,r,n,t));xm(o,r,n,t)}});function xm(t,e,r,n){if(!t){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(o.params=n._zod.def.params),e.issues.push(Wa(o))}}var kS=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},SS=()=>{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 ${kS(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${zs(n.values[0])}`:`Invalid option: expected one of ${Cs(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",s=e(n.origin);return s?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${s.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",s=e(n.origin);return s?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${s.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${Cs(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function Tm(){return{localeError:SS()}}var go=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 $m(){return new go}var ir=$m();function Wc(t,e){return new t({type:"string",...j(e)})}function Yc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...j(e)})}function Us(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...j(e)})}function Xc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...j(e)})}function Qc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...j(e)})}function eu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...j(e)})}function tu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...j(e)})}function ru(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...j(e)})}function nu(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...j(e)})}function ou(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...j(e)})}function su(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...j(e)})}function iu(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...j(e)})}function au(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...j(e)})}function cu(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...j(e)})}function uu(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...j(e)})}function lu(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...j(e)})}function du(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...j(e)})}function pu(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...j(e)})}function fu(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...j(e)})}function mu(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...j(e)})}function hu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...j(e)})}function gu(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...j(e)})}function _u(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...j(e)})}function Pm(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...j(e)})}function Rm(t,e){return new t({type:"string",format:"date",check:"string_format",...j(e)})}function Om(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...j(e)})}function Cm(t,e){return new t({type:"string",format:"duration",check:"string_format",...j(e)})}function yu(t,e){return new t({type:"number",checks:[],...j(e)})}function vu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...j(e)})}function xu(t,e){return new t({type:"boolean",...j(e)})}function ku(t,e){return new t({type:"null",...j(e)})}function Su(t){return new t({type:"unknown"})}function bu(t,e){return new t({type:"never",...j(e)})}function Hs(t,e){return new ac({check:"less_than",...j(e),value:t,inclusive:!1})}function _o(t,e){return new ac({check:"less_than",...j(e),value:t,inclusive:!0})}function qs(t,e){return new cc({check:"greater_than",...j(e),value:t,inclusive:!1})}function yo(t,e){return new cc({check:"greater_than",...j(e),value:t,inclusive:!0})}function Fs(t,e){return new Xf({check:"multiple_of",...j(e),value:t})}function Bs(t,e){return new em({check:"max_length",...j(e),maximum:t})}function xn(t,e){return new tm({check:"min_length",...j(e),minimum:t})}function Vs(t,e){return new rm({check:"length_equals",...j(e),length:t})}function wu(t,e){return new nm({check:"string_format",format:"regex",...j(e),pattern:t})}function Eu(t){return new om({check:"string_format",format:"lowercase",...j(t)})}function Tu(t){return new sm({check:"string_format",format:"uppercase",...j(t)})}function $u(t,e){return new im({check:"string_format",format:"includes",...j(e),includes:t})}function Pu(t,e){return new am({check:"string_format",format:"starts_with",...j(e),prefix:t})}function Ru(t,e){return new cm({check:"string_format",format:"ends_with",...j(e),suffix:t})}function Br(t){return new um({check:"overwrite",tx:t})}function Ou(t){return Br(e=>e.normalize(t))}function Cu(){return Br(t=>t.trim())}function Iu(){return Br(t=>t.toLowerCase())}function zu(){return Br(t=>t.toUpperCase())}function Im(t,e,r){return new t({type:"array",element:e,...j(r)})}function Nu(t,e,r){let n=j(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Au(t,e,r){return new t({type:"custom",check:"custom",fn:e,...j(r)})}var Ks=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??ir,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},f=e._zod.parent;if(f)a.ref=f,this.process(f,d),this.seen.get(f).isParent=!0;else{let m=a.schema;switch(o.type){case"string":{let p=m;p.type="string";let{minimum:h,maximum:g,format: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(R=>({...this.target==="draft-7"?{type:"string"}:{},pattern:R.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=ao(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"&&we(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(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>
68
+ path: iss.path ? [${Hr(x)}, ...iss.path] : [${Hr(x)}]
69
+ })));`),f.write(`newResult[${Hr(x)}] = ${S}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let y=f.compile();return(x,S)=>y(d,x,S)},o,s=xn,i=!Is.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 S=l.shape;for(let w of l.keys){let R=S[w],ie=R._zod.run({value:m[w],issues:[]},f),ae=R._zod.optin==="optional"&&R._zod.optout==="optional";ie instanceof Promise?p.push(ie.then(tt=>ae?ym(tt,d,w,m):Ls(tt,d,w))):ae?ym(ie,d,w,m):Ls(ie,d,w)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,y=u._zod,x=y.def.type;for(let S of Object.keys(m)){if(g.has(S))continue;if(x==="never"){h.push(S);continue}let w=y.run({value:m[S],issues:[]},f);w instanceof Promise?p.push(w.then(R=>Ls(R,d,S))):Ls(w,d,S)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:m,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function vm(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>gt(s,n,rt())))}),e}var Hs=v("$ZodUnion",(t,e)=>{re.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=>fo(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let o=!1,s=[];for(let i of e.options){let a=i._zod.run({value:r.value,issues:[]},n);if(a instanceof Promise)s.push(a),o=!0;else{if(a.issues.length===0)return a;s.push(a)}}return o?Promise.all(s).then(i=>vm(i,r,t,n)):vm(s,r,t,n)}}),Mc=v("$ZodDiscriminatedUnion",(t,e)=>{Hs.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=lo(()=>{let o=e.options,s=new Map;for(let i of o){let a=i._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});t._zod.parse=(o,s)=>{let i=o.value;if(!xn(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:t}),o;let a=n.value.get(i?.[e.discriminator]);return a?a._zod.run(o,s):e.unionFallback?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[e.discriminator],inst:t}),o)}}),Dc=v("$ZodIntersection",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>xm(r,c,u)):xm(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(Sn(t)&&Sn(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),o={...t,...e};for(let s of n){let i=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 xm(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),qr(t))return t;let n=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)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Sn(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:o[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...Ct(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Ct(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>gt(u,n,rt())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Ct(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Ct(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Zc=v("$ZodEnum",(t,e)=>{re.init(t,e);let r=uo(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"?sr(n):n.toString()).join("|")})$`),t._zod.parse=(n,o)=>{let s=n.value;return t._zod.values.has(s)||n.issues.push({code:"invalid_value",values:r,input:s,inst:t}),n}}),Uc=v("$ZodLiteral",(t,e)=>{re.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?sr(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let o=r.value;return t._zod.values.has(o)||r.issues.push({code:"invalid_value",values:e.values,input:o,inst:t}),r}});var Hc=v("$ZodTransform",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r));if(o instanceof Promise)throw new Bt;return r.value=o,r}}),qc=v("$ZodOptional",(t,e)=>{re.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(`^(${fo(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>e.innerType._zod.optin==="optional"?e.innerType._zod.run(r,n):r.value===void 0?r:e.innerType._zod.run(r,n)}),Fc=v("$ZodNullable",(t,e)=>{re.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(`^(${fo(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)=>{re.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=>Sm(s,e)):Sm(o,e)}});function Sm(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Vc=v("$ZodPrefault",(t,e)=>{re.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)=>{re.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=>km(s,t)):km(o,t)}});function km(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)=>{re.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=>gt(i,n,rt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>gt(s,n,rt()))},input:r.value}),r.issues=[]),r)}});var Gc=v("$ZodPipe",(t,e)=>{re.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=>bm(s,e,n)):bm(o,e,n)}});function bm(t,e,r){return qr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Wc=v("$ZodReadonly",(t,e)=>{re.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(wm):wm(o)}});function wm(t){return t.value=Object.freeze(t.value),t}var Yc=v("$ZodCustom",(t,e)=>{Pe.init(t,e),re.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,o=e.fn(n);if(o instanceof Promise)return o.then(s=>Em(s,r,n,t));Em(o,r,n,t)}});function Em(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 Pk=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},Rk=()=>{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 ${Pk(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${As(n.values[0])}`:`Invalid option: expected one of ${zs(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":""}: ${zs(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 Cm(){return{localeError:Rk()}}var yo=class{constructor(){this._map=new Map,this._idmap=new Map}add(e,...r){let n=r[0];if(this._map.set(e,n),n&&typeof n=="object"&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){let r=this._map.get(e);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let n={...this.get(r)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Im(){return new yo}var ir=Im();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 qs(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 vu(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...j(e)})}function zm(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...j(e)})}function Nm(t,e){return new t({type:"string",format:"date",check:"string_format",...j(e)})}function Am(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...j(e)})}function jm(t,e){return new t({type:"string",format:"duration",check:"string_format",...j(e)})}function xu(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 ku(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 Fs(t,e){return new uc({check:"less_than",...j(e),value:t,inclusive:!1})}function vo(t,e){return new uc({check:"less_than",...j(e),value:t,inclusive:!0})}function Bs(t,e){return new lc({check:"greater_than",...j(e),value:t,inclusive:!1})}function xo(t,e){return new lc({check:"greater_than",...j(e),value:t,inclusive:!0})}function Vs(t,e){return new nm({check:"multiple_of",...j(e),value:t})}function Ks(t,e){return new sm({check:"max_length",...j(e),maximum:t})}function kn(t,e){return new im({check:"min_length",...j(e),minimum:t})}function Js(t,e){return new am({check:"length_equals",...j(e),length:t})}function Tu(t,e){return new cm({check:"string_format",format:"regex",...j(e),pattern:t})}function $u(t){return new um({check:"string_format",format:"lowercase",...j(t)})}function Pu(t){return new lm({check:"string_format",format:"uppercase",...j(t)})}function Ru(t,e){return new dm({check:"string_format",format:"includes",...j(e),includes:t})}function Ou(t,e){return new pm({check:"string_format",format:"starts_with",...j(e),prefix:t})}function Cu(t,e){return new fm({check:"string_format",format:"ends_with",...j(e),suffix:t})}function Vr(t){return new mm({check:"overwrite",tx:t})}function Iu(t){return Vr(e=>e.normalize(t))}function zu(){return Vr(t=>t.trim())}function Nu(){return Vr(t=>t.toLowerCase())}function Au(){return Vr(t=>t.toUpperCase())}function Mm(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 Gs=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??ir,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},f=e._zod.parent;if(f)a.ref=f,this.process(f,d),this.seen.get(f).isParent=!0;else{let m=a.schema;switch(o.type){case"string":{let p=m;p.type="string";let{minimum:h,maximum:g,format:y,patterns:x,contentEncoding:S}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),y&&(p.format=s[y]??y,p.format===""&&delete p.format),S&&(p.contentEncoding=S),x&&x.size>0){let w=[...x];w.length===1?p.pattern=w[0].source:w.length>1&&(a.schema.allOf=[...w.map(R=>({...this.target==="draft-7"?{type:"string"}:{},pattern:R.source}))])}break}case"number":{let p=m,{minimum:h,maximum:g,format:y,multipleOf:x,exclusiveMaximum:S,exclusiveMinimum:w}=e._zod.bag;typeof y=="string"&&y.includes("int")?p.type="integer":p.type="number",typeof w=="number"&&(p.exclusiveMinimum=w),typeof h=="number"&&(p.minimum=h,typeof w=="number"&&(w>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof S=="number"&&(p.exclusiveMaximum=S),typeof g=="number"&&(p.maximum=g,typeof S=="number"&&(S<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof x=="number"&&(p.multipleOf=x);break}case"boolean":{let p=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 S=o.shape[x]._zod;return this.io==="input"?S.optin===void 0:S.optout===void 0}));y.size>0&&(p.required=Array.from(y)),o.catchall?._zod.def.type==="never"?p.additionalProperties=!1:o.catchall?o.catchall&&(p.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=m;p.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=m,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),y=S=>"allOf"in S&&Object.keys(S).length===1,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,S)=>this.process(x,{...d,path:[...d.path,"prefixItems",S]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let x=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=x:p.additionalItems=x}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:y}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof y=="number"&&(p.maxItems=y);break}case"record":{let p=m;p.type="object",p.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let p=m,h=uo(o.entries);h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),p.enum=h;break}case"literal":{let p=m,h=[];for(let g of o.values)if(g===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof g=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(g))}else h.push(g);if(h.length!==0)if(h.length===1){let g=h[0];p.type=g===null?"null":typeof g,p.const=g}else h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),h.every(g=>typeof g=="boolean")&&(p.type="string"),h.every(g=>g===null)&&(p.type="null"),p.enum=h;break}case"file":{let p=m,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:y,mime:x}=e._zod.bag;g!==void 0&&(h.minLength=g),y!==void 0&&(h.maxLength=y),x?x.length===1?(h.contentMediaType=x[0],Object.assign(p,h)):p.anyOf=x.map(S=>({...h,contentMediaType:S})):Object.assign(p,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);m.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=m;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,m.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(m._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}m.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let p=m,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=h.source;break}case"pipe":{let p=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,m.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,d),a.ref=p;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&we(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(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>
70
70
 
71
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let 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 ju(t,e){if(t instanceof go){let n=new Ks(e),o={};for(let a of t._idmap.entries()){let[c,u]=a;n.process(u)}let s={},i={registry:t,uri:e?.uri,defs:o};for(let a of t._idmap.entries()){let[c,u]=a;s[c]=n.emit(u,{...e,external:i})}if(Object.keys(o).length>0){let a=n.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[a]:o}}return{schemas:s}}let r=new Ks(e);return r.process(t),r.emit(t,e)}function we(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let o=t._zod.def;switch(o.type){case"string":case"number":case"bigint":case"boolean":case"date":case"symbol":case"undefined":case"null":case"any":case"unknown":case"never":case"void":case"literal":case"enum":case"nan":case"file":case"template_literal":return!1;case"array":return we(o.element,r);case"object":{for(let s in o.shape)if(we(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(we(s,r))return!0;return!1}case"intersection":return we(o.left,r)||we(o.right,r);case"tuple":{for(let s of o.items)if(we(s,r))return!0;return!!(o.rest&&we(o.rest,r))}case"record":return we(o.keyType,r)||we(o.valueType,r);case"map":return we(o.keyType,r)||we(o.valueType,r);case"set":return we(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return we(o.innerType,r);case"lazy":return we(o.getter(),r);case"default":return we(o.innerType,r);case"prefault":return we(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return we(o.in,r)||we(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var nb=v("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");re.init(t,e),t.def=e,t.parse=(r,n)=>ec(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>qr(t,r,n),t.parseAsync=async(r,n)=>rc(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Fr(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>nt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var ob=v("ZodMiniObject",(t,e)=>{Ls.init(t,e),nb.init(t,e),K.defineLazy(t,"shape",()=>e.shape)});function Mu(t,e){let r={type:"object",get shape(){return K.assignProp(this,"shape",{...t}),this.shape},...K.normalizeParams(e)};return new ob(r)}function at(t){return!!t._zod}function Kr(t){let e=Object.values(t);if(e.length===0)return Mu({});let r=e.every(at),n=e.every(o=>!at(o));if(r)return Mu(t);if(n)return Za(t);throw new Error("Mixed Zod versions detected in object shape.")}function ar(t,e){return at(t)?qr(t,e):t.safeParse(e)}async function Js(t,e){return at(t)?await Fr(t,e):await t.safeParseAsync(e)}function cr(t){if(!t)return;let e;if(at(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function kn(t){if(t){if(typeof t=="object"){let e=t,r=t;if(!e._def&&!r._zod){let n=Object.values(t);if(n.length>0&&n.every(o=>typeof o=="object"&&o!==null&&(o._def!==void 0||o._zod!==void 0||typeof o.parse=="function")))return Kr(t)}}if(at(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function Gs(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 Nm(t){return t.description}function Am(t){if(at(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Ws(t){if(at(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var vo={};Be(vo,{ZodISODate:()=>Mm,ZodISODateTime:()=>jm,ZodISODuration:()=>Lm,ZodISOTime:()=>Dm,date:()=>Lu,datetime:()=>Du,duration:()=>Uu,time:()=>Zu});var jm=v("ZodISODateTime",(t,e)=>{km.init(t,e),me.init(t,e)});function Du(t){return Pm(jm,t)}var Mm=v("ZodISODate",(t,e)=>{Sm.init(t,e),me.init(t,e)});function Lu(t){return Rm(Mm,t)}var Dm=v("ZodISOTime",(t,e)=>{bm.init(t,e),me.init(t,e)});function Zu(t){return Om(Dm,t)}var Lm=v("ZodISODuration",(t,e)=>{wm.init(t,e),me.init(t,e)});function Uu(t){return Cm(Lm,t)}var Zm=(t,e)=>{Ns.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Xa(t,r)},flatten:{value:r=>Ya(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},Yz=v("ZodError",Zm),xo=v("ZodError",Zm,{Parent:Error});var Um=Qa(xo),Hm=tc(xo),qm=nc(xo),Fm=oc(xo);var ve=v("ZodType",(t,e)=>(re.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>nt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>Um(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>qm(t,r,n),t.parseAsync=async(r,n)=>Hm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Fm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(tw(r,n)),t.superRefine=r=>t.check(rw(r)),t.overwrite=r=>t.check(Br(r)),t.optional=()=>ye(t),t.nullable=()=>Km(t),t.nullish=()=>ye(Km(t)),t.nonoptional=r=>Jb(t,r),t.array=()=>G(t),t.or=r=>le([t,r]),t.and=r=>Xs(t,r),t.transform=r=>qu(t,Xm(r)),t.default=r=>Bb(t,r),t.prefault=r=>Kb(t,r),t.catch=r=>Wb(t,r),t.pipe=r=>qu(t,r),t.readonly=()=>Qb(t),t.describe=r=>{let n=t.clone();return ir.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return ir.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return ir.get(t);let n=t.clone();return ir.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),Jm=v("_ZodString",(t,e)=>{ho.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(wu(...n)),t.includes=(...n)=>t.check($u(...n)),t.startsWith=(...n)=>t.check(Pu(...n)),t.endsWith=(...n)=>t.check(Ru(...n)),t.min=(...n)=>t.check(xn(...n)),t.max=(...n)=>t.check(Bs(...n)),t.length=(...n)=>t.check(Vs(...n)),t.nonempty=(...n)=>t.check(xn(1,...n)),t.lowercase=n=>t.check(Eu(n)),t.uppercase=n=>t.check(Tu(n)),t.trim=()=>t.check(Cu()),t.normalize=(...n)=>t.check(Ou(...n)),t.toLowerCase=()=>t.check(Iu()),t.toUpperCase=()=>t.check(zu())}),fb=v("ZodString",(t,e)=>{ho.init(t,e),Jm.init(t,e),t.email=r=>t.check(Yc(mb,r)),t.url=r=>t.check(ru(hb,r)),t.jwt=r=>t.check(_u(Ob,r)),t.emoji=r=>t.check(nu(gb,r)),t.guid=r=>t.check(Us(Bm,r)),t.uuid=r=>t.check(Xc(Ys,r)),t.uuidv4=r=>t.check(Qc(Ys,r)),t.uuidv6=r=>t.check(eu(Ys,r)),t.uuidv7=r=>t.check(tu(Ys,r)),t.nanoid=r=>t.check(ou(_b,r)),t.guid=r=>t.check(Us(Bm,r)),t.cuid=r=>t.check(su(yb,r)),t.cuid2=r=>t.check(iu(vb,r)),t.ulid=r=>t.check(au(xb,r)),t.base64=r=>t.check(mu($b,r)),t.base64url=r=>t.check(hu(Pb,r)),t.xid=r=>t.check(cu(kb,r)),t.ksuid=r=>t.check(uu(Sb,r)),t.ipv4=r=>t.check(lu(bb,r)),t.ipv6=r=>t.check(du(wb,r)),t.cidrv4=r=>t.check(pu(Eb,r)),t.cidrv6=r=>t.check(fu(Tb,r)),t.e164=r=>t.check(gu(Rb,r)),t.datetime=r=>t.check(Du(r)),t.date=r=>t.check(Lu(r)),t.time=r=>t.check(Zu(r)),t.duration=r=>t.check(Uu(r))});function _(t){return Wc(fb,t)}var me=v("ZodStringFormat",(t,e)=>{ue.init(t,e),Jm.init(t,e)}),mb=v("ZodEmail",(t,e)=>{pc.init(t,e),me.init(t,e)});var Bm=v("ZodGUID",(t,e)=>{lc.init(t,e),me.init(t,e)});var Ys=v("ZodUUID",(t,e)=>{dc.init(t,e),me.init(t,e)});var hb=v("ZodURL",(t,e)=>{fc.init(t,e),me.init(t,e)});var gb=v("ZodEmoji",(t,e)=>{mc.init(t,e),me.init(t,e)});var _b=v("ZodNanoID",(t,e)=>{hc.init(t,e),me.init(t,e)});var yb=v("ZodCUID",(t,e)=>{gc.init(t,e),me.init(t,e)});var vb=v("ZodCUID2",(t,e)=>{_c.init(t,e),me.init(t,e)});var xb=v("ZodULID",(t,e)=>{yc.init(t,e),me.init(t,e)});var kb=v("ZodXID",(t,e)=>{vc.init(t,e),me.init(t,e)});var Sb=v("ZodKSUID",(t,e)=>{xc.init(t,e),me.init(t,e)});var bb=v("ZodIPv4",(t,e)=>{kc.init(t,e),me.init(t,e)});var wb=v("ZodIPv6",(t,e)=>{Sc.init(t,e),me.init(t,e)});var Eb=v("ZodCIDRv4",(t,e)=>{bc.init(t,e),me.init(t,e)});var Tb=v("ZodCIDRv6",(t,e)=>{wc.init(t,e),me.init(t,e)});var $b=v("ZodBase64",(t,e)=>{Ec.init(t,e),me.init(t,e)});var Pb=v("ZodBase64URL",(t,e)=>{Tc.init(t,e),me.init(t,e)});var Rb=v("ZodE164",(t,e)=>{$c.init(t,e),me.init(t,e)});var Ob=v("ZodJWT",(t,e)=>{Pc.init(t,e),me.init(t,e)});var Gm=v("ZodNumber",(t,e)=>{Ds.init(t,e),ve.init(t,e),t.gt=(n,o)=>t.check(qs(n,o)),t.gte=(n,o)=>t.check(yo(n,o)),t.min=(n,o)=>t.check(yo(n,o)),t.lt=(n,o)=>t.check(Hs(n,o)),t.lte=(n,o)=>t.check(_o(n,o)),t.max=(n,o)=>t.check(_o(n,o)),t.int=n=>t.check(Vm(n)),t.safe=n=>t.check(Vm(n)),t.positive=n=>t.check(qs(0,n)),t.nonnegative=n=>t.check(yo(0,n)),t.negative=n=>t.check(Hs(0,n)),t.nonpositive=n=>t.check(_o(0,n)),t.multipleOf=(n,o)=>t.check(Fs(n,o)),t.step=(n,o)=>t.check(Fs(n,o)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function te(t){return yu(Gm,t)}var Cb=v("ZodNumberFormat",(t,e)=>{Rc.init(t,e),Gm.init(t,e)});function Vm(t){return vu(Cb,t)}var Ib=v("ZodBoolean",(t,e)=>{Oc.init(t,e),ve.init(t,e)});function Ee(t){return xu(Ib,t)}var zb=v("ZodNull",(t,e)=>{Cc.init(t,e),ve.init(t,e)});function Fu(t){return ku(zb,t)}var Nb=v("ZodUnknown",(t,e)=>{Ic.init(t,e),ve.init(t,e)});function he(){return Su(Nb)}var Ab=v("ZodNever",(t,e)=>{zc.init(t,e),ve.init(t,e)});function jb(t){return bu(Ab,t)}var Mb=v("ZodArray",(t,e)=>{Nc.init(t,e),ve.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(xn(r,n)),t.nonempty=r=>t.check(xn(1,r)),t.max=(r,n)=>t.check(Bs(r,n)),t.length=(r,n)=>t.check(Vs(r,n)),t.unwrap=()=>t.element});function G(t,e){return Im(Mb,t,e)}var Wm=v("ZodObject",(t,e)=>{Ls.init(t,e),ve.init(t,e),K.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Ge(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:he()}),t.loose=()=>t.clone({...t._zod.def,catchall:he()}),t.strict=()=>t.clone({...t._zod.def,catchall:jb()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>K.extend(t,r),t.merge=r=>K.merge(t,r),t.pick=r=>K.pick(t,r),t.omit=r=>K.omit(t,r),t.partial=(...r)=>K.partial(Qm,t,r[0]),t.required=(...r)=>K.required(eh,t,r[0])});function P(t,e){let r={type:"object",get shape(){return K.assignProp(this,"shape",{...t}),this.shape},...K.normalizeParams(e)};return new Wm(r)}function Ze(t,e){return new Wm({type:"object",get shape(){return K.assignProp(this,"shape",{...t}),this.shape},catchall:he(),...K.normalizeParams(e)})}var Ym=v("ZodUnion",(t,e)=>{Zs.init(t,e),ve.init(t,e),t.options=e.options});function le(t,e){return new Ym({type:"union",options:t,...K.normalizeParams(e)})}var Db=v("ZodDiscriminatedUnion",(t,e)=>{Ym.init(t,e),Ac.init(t,e)});function Bu(t,e,r){return new Db({type:"union",options:e,discriminator:t,...K.normalizeParams(r)})}var Lb=v("ZodIntersection",(t,e)=>{jc.init(t,e),ve.init(t,e)});function Xs(t,e){return new Lb({type:"intersection",left:t,right:e})}var Zb=v("ZodRecord",(t,e)=>{Mc.init(t,e),ve.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function ge(t,e,r){return new Zb({type:"record",keyType:t,valueType:e,...K.normalizeParams(r)})}var Hu=v("ZodEnum",(t,e)=>{Dc.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 Hu({...e,checks:[],...K.normalizeParams(o),entries:s})},t.exclude=(n,o)=>{let s={...e.entries};for(let i of n)if(r.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new Hu({...e,checks:[],...K.normalizeParams(o),entries:s})}});function Ge(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Hu({type:"enum",entries:r,...K.normalizeParams(e)})}var Ub=v("ZodLiteral",(t,e)=>{Lc.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 Ub({type:"literal",values:Array.isArray(t)?t:[t],...K.normalizeParams(e)})}var Hb=v("ZodTransform",(t,e)=>{Zc.init(t,e),ve.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(K.issue(s,r.value,e));else{let i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=t),i.continue??(i.continue=!0),r.issues.push(K.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});function Xm(t){return new Hb({type:"transform",transform:t})}var Qm=v("ZodOptional",(t,e)=>{Uc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ye(t){return new Qm({type:"optional",innerType:t})}var qb=v("ZodNullable",(t,e)=>{Hc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Km(t){return new qb({type:"nullable",innerType:t})}var Fb=v("ZodDefault",(t,e)=>{qc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Bb(t,e){return new Fb({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Vb=v("ZodPrefault",(t,e)=>{Fc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Kb(t,e){return new Vb({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var eh=v("ZodNonOptional",(t,e)=>{Bc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Jb(t,e){return new eh({type:"nonoptional",innerType:t,...K.normalizeParams(e)})}var Gb=v("ZodCatch",(t,e)=>{Vc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function Wb(t,e){return new Gb({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Yb=v("ZodPipe",(t,e)=>{Kc.init(t,e),ve.init(t,e),t.in=e.in,t.out=e.out});function qu(t,e){return new Yb({type:"pipe",in:t,out:e})}var Xb=v("ZodReadonly",(t,e)=>{Jc.init(t,e),ve.init(t,e)});function Qb(t){return new Xb({type:"readonly",innerType:t})}var th=v("ZodCustom",(t,e)=>{Gc.init(t,e),ve.init(t,e)});function ew(t){let e=new Pe({check:"custom"});return e._zod.check=t,e}function rh(t,e){return Nu(th,t??(()=>!0),e)}function tw(t,e={}){return Au(th,t,e)}function rw(t){let e=ew(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(K.issue(n,r.value,e._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=e),o.continue??(o.continue=!e._zod.def.abort),r.issues.push(K.issue(o))}},t(r.value,r)));return e}function Vu(t,e){return qu(Xm(t),e)}rt(Tm());var Ju="2025-11-25";var nh=[Ju,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],ur="io.modelcontextprotocol/related-task",ei="2.0",Re=rh(t=>t!==null&&(typeof t=="object"||typeof t=="function")),oh=le([_(),te().int()]),sh=_(),dN=Ze({ttl:le([te(),Fu()]).optional(),pollInterval:te().optional()}),nw=P({ttl:te().optional()}),ow=P({taskId:_()}),Gu=Ze({progressToken:oh.optional(),[ur]:ow.optional()}),ot=P({_meta:Gu.optional()}),ko=ot.extend({task:nw.optional()}),ih=t=>ko.safeParse(t).success,Oe=P({method:_(),params:ot.loose().optional()}),ct=P({_meta:Gu.optional()}),ut=P({method:_(),params:ct.loose().optional()}),Ce=Ze({_meta:Gu.optional()}),ti=le([_(),te().int()]),ah=P({jsonrpc:I(ei),id:ti,...Oe.shape}).strict(),Wu=t=>ah.safeParse(t).success,ch=P({jsonrpc:I(ei),...ut.shape}).strict(),uh=t=>ch.safeParse(t).success,Yu=P({jsonrpc:I(ei),id:ti,result:Ce}).strict(),So=t=>Yu.safeParse(t).success;var N;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(N||(N={}));var Xu=P({jsonrpc:I(ei),id:ti.optional(),error:P({code:te().int(),message:_(),data:he().optional()})}).strict();var lh=t=>Xu.safeParse(t).success;var dh=le([ah,ch,Yu,Xu]),pN=le([Yu,Xu]),ri=Ce.strict(),sw=ct.extend({requestId:ti.optional(),reason:_().optional()}),ni=ut.extend({method:I("notifications/cancelled"),params:sw}),iw=P({src:_(),mimeType:_().optional(),sizes:G(_()).optional(),theme:Ge(["light","dark"]).optional()}),bo=P({icons:G(iw).optional()}),Sn=P({name:_(),title:_().optional()}),ph=Sn.extend({...Sn.shape,...bo.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),aw=Xs(P({applyDefaults:Ee().optional()}),ge(_(),he())),cw=Vu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Xs(P({form:aw.optional(),url:Re.optional()}),ge(_(),he()).optional())),uw=Ze({list:Re.optional(),cancel:Re.optional(),requests:Ze({sampling:Ze({createMessage:Re.optional()}).optional(),elicitation:Ze({create:Re.optional()}).optional()}).optional()}),lw=Ze({list:Re.optional(),cancel:Re.optional(),requests:Ze({tools:Ze({call:Re.optional()}).optional()}).optional()}),dw=P({experimental:ge(_(),Re).optional(),sampling:P({context:Re.optional(),tools:Re.optional()}).optional(),elicitation:cw.optional(),roots:P({listChanged:Ee().optional()}).optional(),tasks:uw.optional()}),pw=ot.extend({protocolVersion:_(),capabilities:dw,clientInfo:ph}),Qu=Oe.extend({method:I("initialize"),params:pw});var fw=P({experimental:ge(_(),Re).optional(),logging:Re.optional(),completions:Re.optional(),prompts:P({listChanged:Ee().optional()}).optional(),resources:P({subscribe:Ee().optional(),listChanged:Ee().optional()}).optional(),tools:P({listChanged:Ee().optional()}).optional(),tasks:lw.optional()}),mw=Ce.extend({protocolVersion:_(),capabilities:fw,serverInfo:ph,instructions:_().optional()}),el=ut.extend({method:I("notifications/initialized"),params:ct.optional()});var oi=Oe.extend({method:I("ping"),params:ot.optional()}),hw=P({progress:te(),total:ye(te()),message:ye(_())}),gw=P({...ct.shape,...hw.shape,progressToken:oh}),si=ut.extend({method:I("notifications/progress"),params:gw}),_w=ot.extend({cursor:sh.optional()}),wo=Oe.extend({params:_w.optional()}),Eo=Ce.extend({nextCursor:sh.optional()}),yw=Ge(["working","input_required","completed","failed","cancelled"]),To=P({taskId:_(),status:yw,ttl:le([te(),Fu()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:ye(te()),statusMessage:ye(_())}),bn=Ce.extend({task:To}),vw=ct.merge(To),$o=ut.extend({method:I("notifications/tasks/status"),params:vw}),ii=Oe.extend({method:I("tasks/get"),params:ot.extend({taskId:_()})}),ai=Ce.merge(To),ci=Oe.extend({method:I("tasks/result"),params:ot.extend({taskId:_()})}),fN=Ce.loose(),ui=wo.extend({method:I("tasks/list")}),li=Eo.extend({tasks:G(To)}),di=Oe.extend({method:I("tasks/cancel"),params:ot.extend({taskId:_()})}),fh=Ce.merge(To),mh=P({uri:_(),mimeType:ye(_()),_meta:ge(_(),he()).optional()}),hh=mh.extend({text:_()}),tl=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),gh=mh.extend({blob:tl}),Po=Ge(["user","assistant"]),wn=P({audience:G(Po).optional(),priority:te().min(0).max(1).optional(),lastModified:vo.datetime({offset:!0}).optional()}),_h=P({...Sn.shape,...bo.shape,uri:_(),description:ye(_()),mimeType:ye(_()),annotations:wn.optional(),_meta:ye(Ze({}))}),xw=P({...Sn.shape,...bo.shape,uriTemplate:_(),description:ye(_()),mimeType:ye(_()),annotations:wn.optional(),_meta:ye(Ze({}))}),pi=wo.extend({method:I("resources/list")}),kw=Eo.extend({resources:G(_h)}),fi=wo.extend({method:I("resources/templates/list")}),Sw=Eo.extend({resourceTemplates:G(xw)}),rl=ot.extend({uri:_()}),bw=rl,mi=Oe.extend({method:I("resources/read"),params:bw}),ww=Ce.extend({contents:G(le([hh,gh]))}),Ew=ut.extend({method:I("notifications/resources/list_changed"),params:ct.optional()}),Tw=rl,$w=Oe.extend({method:I("resources/subscribe"),params:Tw}),Pw=rl,Rw=Oe.extend({method:I("resources/unsubscribe"),params:Pw}),Ow=ct.extend({uri:_()}),Cw=ut.extend({method:I("notifications/resources/updated"),params:Ow}),Iw=P({name:_(),description:ye(_()),required:ye(Ee())}),zw=P({...Sn.shape,...bo.shape,description:ye(_()),arguments:ye(G(Iw)),_meta:ye(Ze({}))}),hi=wo.extend({method:I("prompts/list")}),Nw=Eo.extend({prompts:G(zw)}),Aw=ot.extend({name:_(),arguments:ge(_(),_()).optional()}),gi=Oe.extend({method:I("prompts/get"),params:Aw}),nl=P({type:I("text"),text:_(),annotations:wn.optional(),_meta:ge(_(),he()).optional()}),ol=P({type:I("image"),data:tl,mimeType:_(),annotations:wn.optional(),_meta:ge(_(),he()).optional()}),sl=P({type:I("audio"),data:tl,mimeType:_(),annotations:wn.optional(),_meta:ge(_(),he()).optional()}),jw=P({type:I("tool_use"),name:_(),id:_(),input:ge(_(),he()),_meta:ge(_(),he()).optional()}),Mw=P({type:I("resource"),resource:le([hh,gh]),annotations:wn.optional(),_meta:ge(_(),he()).optional()}),Dw=_h.extend({type:I("resource_link")}),il=le([nl,ol,sl,Dw,Mw]),Lw=P({role:Po,content:il}),Zw=Ce.extend({description:_().optional(),messages:G(Lw)}),Uw=ut.extend({method:I("notifications/prompts/list_changed"),params:ct.optional()}),Hw=P({title:_().optional(),readOnlyHint:Ee().optional(),destructiveHint:Ee().optional(),idempotentHint:Ee().optional(),openWorldHint:Ee().optional()}),qw=P({taskSupport:Ge(["required","optional","forbidden"]).optional()}),yh=P({...Sn.shape,...bo.shape,description:_().optional(),inputSchema:P({type:I("object"),properties:ge(_(),Re).optional(),required:G(_()).optional()}).catchall(he()),outputSchema:P({type:I("object"),properties:ge(_(),Re).optional(),required:G(_()).optional()}).catchall(he()).optional(),annotations:Hw.optional(),execution:qw.optional(),_meta:ge(_(),he()).optional()}),_i=wo.extend({method:I("tools/list")}),Fw=Eo.extend({tools:G(yh)}),yi=Ce.extend({content:G(il).default([]),structuredContent:ge(_(),he()).optional(),isError:Ee().optional()}),mN=yi.or(Ce.extend({toolResult:he()})),Bw=ko.extend({name:_(),arguments:ge(_(),he()).optional()}),En=Oe.extend({method:I("tools/call"),params:Bw}),Vw=ut.extend({method:I("notifications/tools/list_changed"),params:ct.optional()}),hN=P({autoRefresh:Ee().default(!0),debounceMs:te().int().nonnegative().default(300)}),Ro=Ge(["debug","info","notice","warning","error","critical","alert","emergency"]),Kw=ot.extend({level:Ro}),al=Oe.extend({method:I("logging/setLevel"),params:Kw}),Jw=ct.extend({level:Ro,logger:_().optional(),data:he()}),Gw=ut.extend({method:I("notifications/message"),params:Jw}),Ww=P({name:_().optional()}),Yw=P({hints:G(Ww).optional(),costPriority:te().min(0).max(1).optional(),speedPriority:te().min(0).max(1).optional(),intelligencePriority:te().min(0).max(1).optional()}),Xw=P({mode:Ge(["auto","required","none"]).optional()}),Qw=P({type:I("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:G(il).default([]),structuredContent:P({}).loose().optional(),isError:Ee().optional(),_meta:ge(_(),he()).optional()}),eE=Bu("type",[nl,ol,sl]),Qs=Bu("type",[nl,ol,sl,jw,Qw]),tE=P({role:Po,content:le([Qs,G(Qs)]),_meta:ge(_(),he()).optional()}),rE=ko.extend({messages:G(tE),modelPreferences:Yw.optional(),systemPrompt:_().optional(),includeContext:Ge(["none","thisServer","allServers"]).optional(),temperature:te().optional(),maxTokens:te().int(),stopSequences:G(_()).optional(),metadata:Re.optional(),tools:G(yh).optional(),toolChoice:Xw.optional()}),nE=Oe.extend({method:I("sampling/createMessage"),params:rE}),Oo=Ce.extend({model:_(),stopReason:ye(Ge(["endTurn","stopSequence","maxTokens"]).or(_())),role:Po,content:eE}),cl=Ce.extend({model:_(),stopReason:ye(Ge(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:Po,content:le([Qs,G(Qs)])}),oE=P({type:I("boolean"),title:_().optional(),description:_().optional(),default:Ee().optional()}),sE=P({type:I("string"),title:_().optional(),description:_().optional(),minLength:te().optional(),maxLength:te().optional(),format:Ge(["email","uri","date","date-time"]).optional(),default:_().optional()}),iE=P({type:Ge(["number","integer"]),title:_().optional(),description:_().optional(),minimum:te().optional(),maximum:te().optional(),default:te().optional()}),aE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:G(_()),default:_().optional()}),cE=P({type:I("string"),title:_().optional(),description:_().optional(),oneOf:G(P({const:_(),title:_()})),default:_().optional()}),uE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:G(_()),enumNames:G(_()).optional(),default:_().optional()}),lE=le([aE,cE]),dE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({type:I("string"),enum:G(_())}),default:G(_()).optional()}),pE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({anyOf:G(P({const:_(),title:_()}))}),default:G(_()).optional()}),fE=le([dE,pE]),mE=le([uE,lE,fE]),hE=le([mE,oE,sE,iE]),gE=ko.extend({mode:I("form").optional(),message:_(),requestedSchema:P({type:I("object"),properties:ge(_(),hE),required:G(_()).optional()})}),_E=ko.extend({mode:I("url"),message:_(),elicitationId:_(),url:_().url()}),yE=le([gE,_E]),vE=Oe.extend({method:I("elicitation/create"),params:yE}),xE=ct.extend({elicitationId:_()}),kE=ut.extend({method:I("notifications/elicitation/complete"),params:xE}),Tn=Ce.extend({action:Ge(["accept","decline","cancel"]),content:Vu(t=>t===null?void 0:t,ge(_(),le([_(),te(),Ee(),G(_())])).optional())}),SE=P({type:I("ref/resource"),uri:_()});var bE=P({type:I("ref/prompt"),name:_()}),wE=ot.extend({ref:le([bE,SE]),argument:P({name:_(),value:_()}),context:P({arguments:ge(_(),_()).optional()}).optional()}),vi=Oe.extend({method:I("completion/complete"),params:wE});function vh(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function xh(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var EE=Ce.extend({completion:Ze({values:G(_()).max(100),total:ye(te().int()),hasMore:ye(Ee())})}),TE=P({uri:_().startsWith("file://"),name:_().optional(),_meta:ge(_(),he()).optional()}),$E=Oe.extend({method:I("roots/list"),params:ot.optional()}),ul=Ce.extend({roots:G(TE)}),PE=ut.extend({method:I("notifications/roots/list_changed"),params:ct.optional()}),gN=le([oi,Qu,vi,al,gi,hi,pi,fi,mi,$w,Rw,En,_i,ii,ci,ui,di]),_N=le([ni,si,el,PE,$o]),yN=le([ri,Oo,cl,Tn,ul,ai,li,bn]),vN=le([oi,nE,vE,$E,ii,ci,ui,di]),xN=le([ni,si,Gw,Cw,Ew,Vw,Uw,$o,kE]),kN=le([ri,mw,EE,Zw,Nw,kw,Sw,ww,yi,Fw,ai,li,bn]),C=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===N.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Ku(o.elicitations,r)}return new t(e,r,n)}},Ku=class extends C{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(N.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function lr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Sh=Symbol("Let zodToJsonSchema decide on which parser to use");var kh={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"},bh=t=>typeof t=="string"?{...kh,name:t}:{...kh,...t};var wh=t=>{let e=bh(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 ll(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function W(t,e,r,n,o){t[e]=r,ll(t,e,n,o)}var xi=(t,e)=>{let r=0;for(;r<t.length&&r<e.length&&t[r]===e[r];r++);return[(t.length-r).toString(),...e.slice(r)].join("/")};function _e(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?xi(e,t.currentPath):e.join("/")}}function Eh(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==b.ZodAny&&(r.items=M(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&W(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&W(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(W(r,"minItems",t.exactLength.value,t.exactLength.message,e),W(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Th(t,e){let r={type:"integer",format:"int64"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"min":e.target==="jsonSchema7"?n.inclusive?W(r,"minimum",n.value,n.message,e):W(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),W(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?W(r,"maximum",n.value,n.message,e):W(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),W(r,"maximum",n.value,n.message,e));break;case"multipleOf":W(r,"multipleOf",n.value,n.message,e);break}return r}function $h(){return{type:"boolean"}}function ki(t,e){return M(t.type._def,e)}var Ph=(t,e)=>M(t.innerType._def,e);function dl(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>dl(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 RE(t,e)}}var RE=(t,e)=>{let r={type:"integer",format:"unix-time"};if(e.target==="openApi3")return r;for(let n of t.checks)switch(n.kind){case"min":W(r,"minimum",n.value,n.message,e);break;case"max":W(r,"maximum",n.value,n.message,e);break}return r};function Rh(t,e){return{...M(t.innerType._def,e),default:t.defaultValue()}}function Oh(t,e){return e.effectStrategy==="input"?M(t.schema._def,e):_e(e)}function Ch(t){return{type:"string",enum:Array.from(t.values)}}var OE=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Ih(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(OE(s))o.push(...s.allOf),s.unevaluatedProperties===void 0&&(n=void 0);else{let i=s;if("additionalProperties"in s&&s.additionalProperties===!1){let{additionalProperties:a,...c}=s;i=c}else n=void 0;o.push(i)}}),o.length?{allOf:o,...n}:void 0}function zh(t,e){let r=typeof t.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(t.value)?"array":"object"}:e.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[t.value]}:{type:r==="bigint"?"integer":r,const:t.value}}var pl,_t={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(pl===void 0&&(pl=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),pl),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 Si(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":W(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":W(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":yt(r,"email",n.message,e);break;case"format:idn-email":yt(r,"idn-email",n.message,e);break;case"pattern:zod":Ue(r,_t.email,n.message,e);break}break;case"url":yt(r,"uri",n.message,e);break;case"uuid":yt(r,"uuid",n.message,e);break;case"regex":Ue(r,n.regex,n.message,e);break;case"cuid":Ue(r,_t.cuid,n.message,e);break;case"cuid2":Ue(r,_t.cuid2,n.message,e);break;case"startsWith":Ue(r,RegExp(`^${fl(n.value,e)}`),n.message,e);break;case"endsWith":Ue(r,RegExp(`${fl(n.value,e)}$`),n.message,e);break;case"datetime":yt(r,"date-time",n.message,e);break;case"date":yt(r,"date",n.message,e);break;case"time":yt(r,"time",n.message,e);break;case"duration":yt(r,"duration",n.message,e);break;case"length":W(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),W(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{Ue(r,RegExp(fl(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&yt(r,"ipv4",n.message,e),n.version!=="v4"&&yt(r,"ipv6",n.message,e);break}case"base64url":Ue(r,_t.base64url,n.message,e);break;case"jwt":Ue(r,_t.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Ue(r,_t.ipv4Cidr,n.message,e),n.version!=="v4"&&Ue(r,_t.ipv6Cidr,n.message,e);break}case"emoji":Ue(r,_t.emoji(),n.message,e);break;case"ulid":{Ue(r,_t.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{yt(r,"binary",n.message,e);break}case"contentEncoding:base64":{W(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Ue(r,_t.base64,n.message,e);break}}break}case"nanoid":Ue(r,_t.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function fl(t,e){return e.patternStrategy==="escape"?IE(t):t}var CE=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function IE(t){let e="";for(let r=0;r<t.length;r++)CE.has(t[r])||(e+="\\"),e+=t[r];return e}function yt(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):W(t,"format",e,r,n)}function Ue(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:Nh(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):W(t,"pattern",Nh(e,n),r,n)}function Nh(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},n=r.i?t.source.toLowerCase():t.source,o="",s=!1,i=!1,a=!1;for(let c=0;c<n.length;c++){if(s){o+=n[c],s=!1;continue}if(r.i){if(i){if(n[c].match(/[a-z]/)){a?(o+=n[c],o+=`${n[c-2]}-${n[c]}`.toUpperCase(),a=!1):n[c+1]==="-"&&n[c+2]?.match(/[a-z]/)?(o+=n[c],a=!0):o+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){o+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(r.m){if(n[c]==="^"){o+=`(^|(?<=[\r
71
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let m=n.external.registry.get(l[0])?.id;if(e!==l[0]&&m){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let f=this.seen.get(l),m=f.def??f.schema,p={...m};if(f.ref===null)return;let h=f.ref;if(f.ref=null,h){a(h,d);let g=this.seen.get(h).schema;g.$ref&&d.target==="draft-7"?(m.allOf=m.allOf??[],m.allOf.push(g)):(Object.assign(m,g),Object.assign(m,p))}f.isParent||this.override({zodSchema:l,jsonSchema:m,path:f.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}};function Du(t,e){if(t instanceof yo){let n=new Gs(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 Gs(e);return r.process(t),r.emit(t,e)}function we(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let o=t._zod.def;switch(o.type){case"string":case"number":case"bigint":case"boolean":case"date":case"symbol":case"undefined":case"null":case"any":case"unknown":case"never":case"void":case"literal":case"enum":case"nan":case"file":case"template_literal":return!1;case"array":return we(o.element,r);case"object":{for(let s in o.shape)if(we(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(we(s,r))return!0;return!1}case"intersection":return we(o.left,r)||we(o.right,r);case"tuple":{for(let s of o.items)if(we(s,r))return!0;return!!(o.rest&&we(o.rest,r))}case"record":return we(o.keyType,r)||we(o.valueType,r);case"map":return we(o.keyType,r)||we(o.valueType,r);case"set":return we(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return we(o.innerType,r);case"lazy":return we(o.getter(),r);case"default":return we(o.innerType,r);case"prefault":return we(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return we(o.in,r)||we(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var lb=v("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");re.init(t,e),t.def=e,t.parse=(r,n)=>rc(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Fr(t,r,n),t.parseAsync=async(r,n)=>oc(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Br(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>nt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var db=v("ZodMiniObject",(t,e)=>{Us.init(t,e),lb.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 db(r)}function at(t){return!!t._zod}function Jr(t){let e=Object.values(t);if(e.length===0)return Lu({});let r=e.every(at),n=e.every(o=>!at(o));if(r)return Lu(t);if(n)return Ha(t);throw new Error("Mixed Zod versions detected in object shape.")}function ar(t,e){return at(t)?Fr(t,e):t.safeParse(e)}async function Ws(t,e){return at(t)?await Br(t,e):await t.safeParseAsync(e)}function cr(t){if(!t)return;let e;if(at(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function bn(t){if(t){if(typeof t=="object"){let e=t,r=t;if(!e._def&&!r._zod){let n=Object.values(t);if(n.length>0&&n.every(o=>typeof o=="object"&&o!==null&&(o._def!==void 0||o._zod!==void 0||typeof o.parse=="function")))return Jr(t)}}if(at(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function Ys(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 Lm(t){return t.description}function Zm(t){if(at(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Xs(t){if(at(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var So={};Be(So,{ZodISODate:()=>Hm,ZodISODateTime:()=>Um,ZodISODuration:()=>Fm,ZodISOTime:()=>qm,date:()=>Uu,datetime:()=>Zu,duration:()=>qu,time:()=>Hu});var Um=v("ZodISODateTime",(t,e)=>{Tm.init(t,e),me.init(t,e)});function Zu(t){return zm(Um,t)}var Hm=v("ZodISODate",(t,e)=>{$m.init(t,e),me.init(t,e)});function Uu(t){return Nm(Hm,t)}var qm=v("ZodISOTime",(t,e)=>{Pm.init(t,e),me.init(t,e)});function Hu(t){return Am(qm,t)}var Fm=v("ZodISODuration",(t,e)=>{Rm.init(t,e),me.init(t,e)});function qu(t){return jm(Fm,t)}var Bm=(t,e)=>{js.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}}})},oN=v("ZodError",Bm),ko=v("ZodError",Bm,{Parent:Error});var Vm=tc(ko),Km=nc(ko),Jm=sc(ko),Gm=ic(ko);var ve=v("ZodType",(t,e)=>(re.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>nt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>Vm(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Jm(t,r,n),t.parseAsync=async(r,n)=>Km(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Gm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(cw(r,n)),t.superRefine=r=>t.check(uw(r)),t.overwrite=r=>t.check(Vr(r)),t.optional=()=>ye(t),t.nullable=()=>Xm(t),t.nullish=()=>ye(Xm(t)),t.nonoptional=r=>tw(t,r),t.array=()=>G(t),t.or=r=>le([t,r]),t.and=r=>ei(t,r),t.transform=r=>Bu(t,nh(r)),t.default=r=>Xb(t,r),t.prefault=r=>ew(t,r),t.catch=r=>nw(t,r),t.pipe=r=>Bu(t,r),t.readonly=()=>iw(t),t.describe=r=>{let n=t.clone();return ir.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return ir.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return ir.get(t);let n=t.clone();return ir.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),Qm=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(kn(...n)),t.max=(...n)=>t.check(Ks(...n)),t.length=(...n)=>t.check(Js(...n)),t.nonempty=(...n)=>t.check(kn(1,...n)),t.lowercase=n=>t.check($u(n)),t.uppercase=n=>t.check(Pu(n)),t.trim=()=>t.check(zu()),t.normalize=(...n)=>t.check(Iu(...n)),t.toLowerCase=()=>t.check(Nu()),t.toUpperCase=()=>t.check(Au())}),xb=v("ZodString",(t,e)=>{_o.init(t,e),Qm.init(t,e),t.email=r=>t.check(Qc(Sb,r)),t.url=r=>t.check(ou(kb,r)),t.jwt=r=>t.check(vu(Mb,r)),t.emoji=r=>t.check(su(bb,r)),t.guid=r=>t.check(qs(Wm,r)),t.uuid=r=>t.check(eu(Qs,r)),t.uuidv4=r=>t.check(tu(Qs,r)),t.uuidv6=r=>t.check(ru(Qs,r)),t.uuidv7=r=>t.check(nu(Qs,r)),t.nanoid=r=>t.check(iu(wb,r)),t.guid=r=>t.check(qs(Wm,r)),t.cuid=r=>t.check(au(Eb,r)),t.cuid2=r=>t.check(cu(Tb,r)),t.ulid=r=>t.check(uu($b,r)),t.base64=r=>t.check(gu(Nb,r)),t.base64url=r=>t.check(_u(Ab,r)),t.xid=r=>t.check(lu(Pb,r)),t.ksuid=r=>t.check(du(Rb,r)),t.ipv4=r=>t.check(pu(Ob,r)),t.ipv6=r=>t.check(fu(Cb,r)),t.cidrv4=r=>t.check(mu(Ib,r)),t.cidrv6=r=>t.check(hu(zb,r)),t.e164=r=>t.check(yu(jb,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(xb,t)}var me=v("ZodStringFormat",(t,e)=>{ue.init(t,e),Qm.init(t,e)}),Sb=v("ZodEmail",(t,e)=>{mc.init(t,e),me.init(t,e)});var Wm=v("ZodGUID",(t,e)=>{pc.init(t,e),me.init(t,e)});var Qs=v("ZodUUID",(t,e)=>{fc.init(t,e),me.init(t,e)});var kb=v("ZodURL",(t,e)=>{hc.init(t,e),me.init(t,e)});var bb=v("ZodEmoji",(t,e)=>{gc.init(t,e),me.init(t,e)});var wb=v("ZodNanoID",(t,e)=>{_c.init(t,e),me.init(t,e)});var Eb=v("ZodCUID",(t,e)=>{yc.init(t,e),me.init(t,e)});var Tb=v("ZodCUID2",(t,e)=>{vc.init(t,e),me.init(t,e)});var $b=v("ZodULID",(t,e)=>{xc.init(t,e),me.init(t,e)});var Pb=v("ZodXID",(t,e)=>{Sc.init(t,e),me.init(t,e)});var Rb=v("ZodKSUID",(t,e)=>{kc.init(t,e),me.init(t,e)});var Ob=v("ZodIPv4",(t,e)=>{bc.init(t,e),me.init(t,e)});var Cb=v("ZodIPv6",(t,e)=>{wc.init(t,e),me.init(t,e)});var Ib=v("ZodCIDRv4",(t,e)=>{Ec.init(t,e),me.init(t,e)});var zb=v("ZodCIDRv6",(t,e)=>{Tc.init(t,e),me.init(t,e)});var Nb=v("ZodBase64",(t,e)=>{$c.init(t,e),me.init(t,e)});var Ab=v("ZodBase64URL",(t,e)=>{Pc.init(t,e),me.init(t,e)});var jb=v("ZodE164",(t,e)=>{Rc.init(t,e),me.init(t,e)});var Mb=v("ZodJWT",(t,e)=>{Oc.init(t,e),me.init(t,e)});var eh=v("ZodNumber",(t,e)=>{Zs.init(t,e),ve.init(t,e),t.gt=(n,o)=>t.check(Bs(n,o)),t.gte=(n,o)=>t.check(xo(n,o)),t.min=(n,o)=>t.check(xo(n,o)),t.lt=(n,o)=>t.check(Fs(n,o)),t.lte=(n,o)=>t.check(vo(n,o)),t.max=(n,o)=>t.check(vo(n,o)),t.int=n=>t.check(Ym(n)),t.safe=n=>t.check(Ym(n)),t.positive=n=>t.check(Bs(0,n)),t.nonnegative=n=>t.check(xo(0,n)),t.negative=n=>t.check(Fs(0,n)),t.nonpositive=n=>t.check(vo(0,n)),t.multipleOf=(n,o)=>t.check(Vs(n,o)),t.step=(n,o)=>t.check(Vs(n,o)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function te(t){return xu(eh,t)}var Db=v("ZodNumberFormat",(t,e)=>{Cc.init(t,e),eh.init(t,e)});function Ym(t){return Su(Db,t)}var Lb=v("ZodBoolean",(t,e)=>{Ic.init(t,e),ve.init(t,e)});function Ee(t){return ku(Lb,t)}var Zb=v("ZodNull",(t,e)=>{zc.init(t,e),ve.init(t,e)});function Vu(t){return bu(Zb,t)}var Ub=v("ZodUnknown",(t,e)=>{Nc.init(t,e),ve.init(t,e)});function he(){return wu(Ub)}var Hb=v("ZodNever",(t,e)=>{Ac.init(t,e),ve.init(t,e)});function qb(t){return Eu(Hb,t)}var Fb=v("ZodArray",(t,e)=>{jc.init(t,e),ve.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(kn(r,n)),t.nonempty=r=>t.check(kn(1,r)),t.max=(r,n)=>t.check(Ks(r,n)),t.length=(r,n)=>t.check(Js(r,n)),t.unwrap=()=>t.element});function G(t,e){return Mm(Fb,t,e)}var th=v("ZodObject",(t,e)=>{Us.init(t,e),ve.init(t,e),J.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Ge(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:he()}),t.loose=()=>t.clone({...t._zod.def,catchall:he()}),t.strict=()=>t.clone({...t._zod.def,catchall:qb()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>J.extend(t,r),t.merge=r=>J.merge(t,r),t.pick=r=>J.pick(t,r),t.omit=r=>J.omit(t,r),t.partial=(...r)=>J.partial(oh,t,r[0]),t.required=(...r)=>J.required(sh,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 th(r)}function Ze(t,e){return new th({type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},catchall:he(),...J.normalizeParams(e)})}var rh=v("ZodUnion",(t,e)=>{Hs.init(t,e),ve.init(t,e),t.options=e.options});function le(t,e){return new rh({type:"union",options:t,...J.normalizeParams(e)})}var Bb=v("ZodDiscriminatedUnion",(t,e)=>{rh.init(t,e),Mc.init(t,e)});function Ku(t,e,r){return new Bb({type:"union",options:e,discriminator:t,...J.normalizeParams(r)})}var Vb=v("ZodIntersection",(t,e)=>{Dc.init(t,e),ve.init(t,e)});function ei(t,e){return new Vb({type:"intersection",left:t,right:e})}var Kb=v("ZodRecord",(t,e)=>{Lc.init(t,e),ve.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function ge(t,e,r){return new Kb({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 Ge(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 Jb=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 Jb({type:"literal",values:Array.isArray(t)?t:[t],...J.normalizeParams(e)})}var Gb=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 nh(t){return new Gb({type:"transform",transform:t})}var oh=v("ZodOptional",(t,e)=>{qc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ye(t){return new oh({type:"optional",innerType:t})}var Wb=v("ZodNullable",(t,e)=>{Fc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Xm(t){return new Wb({type:"nullable",innerType:t})}var Yb=v("ZodDefault",(t,e)=>{Bc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Xb(t,e){return new Yb({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Qb=v("ZodPrefault",(t,e)=>{Vc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ew(t,e){return new Qb({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var sh=v("ZodNonOptional",(t,e)=>{Kc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function tw(t,e){return new sh({type:"nonoptional",innerType:t,...J.normalizeParams(e)})}var rw=v("ZodCatch",(t,e)=>{Jc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function nw(t,e){return new rw({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var ow=v("ZodPipe",(t,e)=>{Gc.init(t,e),ve.init(t,e),t.in=e.in,t.out=e.out});function Bu(t,e){return new ow({type:"pipe",in:t,out:e})}var sw=v("ZodReadonly",(t,e)=>{Wc.init(t,e),ve.init(t,e)});function iw(t){return new sw({type:"readonly",innerType:t})}var ih=v("ZodCustom",(t,e)=>{Yc.init(t,e),ve.init(t,e)});function aw(t){let e=new Pe({check:"custom"});return e._zod.check=t,e}function ah(t,e){return ju(ih,t??(()=>!0),e)}function cw(t,e={}){return Mu(ih,t,e)}function uw(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 Bu(nh(t),e)}rt(Cm());var Wu="2025-11-25";var ch=[Wu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],ur="io.modelcontextprotocol/related-task",ri="2.0",Re=ah(t=>t!==null&&(typeof t=="object"||typeof t=="function")),uh=le([_(),te().int()]),lh=_(),yN=Ze({ttl:le([te(),Vu()]).optional(),pollInterval:te().optional()}),lw=P({ttl:te().optional()}),dw=P({taskId:_()}),Yu=Ze({progressToken:uh.optional(),[ur]:dw.optional()}),ot=P({_meta:Yu.optional()}),bo=ot.extend({task:lw.optional()}),dh=t=>bo.safeParse(t).success,Oe=P({method:_(),params:ot.loose().optional()}),ct=P({_meta:Yu.optional()}),ut=P({method:_(),params:ct.loose().optional()}),Ce=Ze({_meta:Yu.optional()}),ni=le([_(),te().int()]),ph=P({jsonrpc:I(ri),id:ni,...Oe.shape}).strict(),Xu=t=>ph.safeParse(t).success,fh=P({jsonrpc:I(ri),...ut.shape}).strict(),mh=t=>fh.safeParse(t).success,Qu=P({jsonrpc:I(ri),id:ni,result:Ce}).strict(),wo=t=>Qu.safeParse(t).success;var N;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(N||(N={}));var el=P({jsonrpc:I(ri),id:ni.optional(),error:P({code:te().int(),message:_(),data:he().optional()})}).strict();var hh=t=>el.safeParse(t).success;var gh=le([ph,fh,Qu,el]),vN=le([Qu,el]),oi=Ce.strict(),pw=ct.extend({requestId:ni.optional(),reason:_().optional()}),si=ut.extend({method:I("notifications/cancelled"),params:pw}),fw=P({src:_(),mimeType:_().optional(),sizes:G(_()).optional(),theme:Ge(["light","dark"]).optional()}),Eo=P({icons:G(fw).optional()}),wn=P({name:_(),title:_().optional()}),_h=wn.extend({...wn.shape,...Eo.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),mw=ei(P({applyDefaults:Ee().optional()}),ge(_(),he())),hw=Ju(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ei(P({form:mw.optional(),url:Re.optional()}),ge(_(),he()).optional())),gw=Ze({list:Re.optional(),cancel:Re.optional(),requests:Ze({sampling:Ze({createMessage:Re.optional()}).optional(),elicitation:Ze({create:Re.optional()}).optional()}).optional()}),_w=Ze({list:Re.optional(),cancel:Re.optional(),requests:Ze({tools:Ze({call:Re.optional()}).optional()}).optional()}),yw=P({experimental:ge(_(),Re).optional(),sampling:P({context:Re.optional(),tools:Re.optional()}).optional(),elicitation:hw.optional(),roots:P({listChanged:Ee().optional()}).optional(),tasks:gw.optional()}),vw=ot.extend({protocolVersion:_(),capabilities:yw,clientInfo:_h}),tl=Oe.extend({method:I("initialize"),params:vw});var xw=P({experimental:ge(_(),Re).optional(),logging:Re.optional(),completions:Re.optional(),prompts:P({listChanged:Ee().optional()}).optional(),resources:P({subscribe:Ee().optional(),listChanged:Ee().optional()}).optional(),tools:P({listChanged:Ee().optional()}).optional(),tasks:_w.optional()}),Sw=Ce.extend({protocolVersion:_(),capabilities:xw,serverInfo:_h,instructions:_().optional()}),rl=ut.extend({method:I("notifications/initialized"),params:ct.optional()});var ii=Oe.extend({method:I("ping"),params:ot.optional()}),kw=P({progress:te(),total:ye(te()),message:ye(_())}),bw=P({...ct.shape,...kw.shape,progressToken:uh}),ai=ut.extend({method:I("notifications/progress"),params:bw}),ww=ot.extend({cursor:lh.optional()}),To=Oe.extend({params:ww.optional()}),$o=Ce.extend({nextCursor:lh.optional()}),Ew=Ge(["working","input_required","completed","failed","cancelled"]),Po=P({taskId:_(),status:Ew,ttl:le([te(),Vu()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:ye(te()),statusMessage:ye(_())}),En=Ce.extend({task:Po}),Tw=ct.merge(Po),Ro=ut.extend({method:I("notifications/tasks/status"),params:Tw}),ci=Oe.extend({method:I("tasks/get"),params:ot.extend({taskId:_()})}),ui=Ce.merge(Po),li=Oe.extend({method:I("tasks/result"),params:ot.extend({taskId:_()})}),xN=Ce.loose(),di=To.extend({method:I("tasks/list")}),pi=$o.extend({tasks:G(Po)}),fi=Oe.extend({method:I("tasks/cancel"),params:ot.extend({taskId:_()})}),yh=Ce.merge(Po),vh=P({uri:_(),mimeType:ye(_()),_meta:ge(_(),he()).optional()}),xh=vh.extend({text:_()}),nl=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Sh=vh.extend({blob:nl}),Oo=Ge(["user","assistant"]),Tn=P({audience:G(Oo).optional(),priority:te().min(0).max(1).optional(),lastModified:So.datetime({offset:!0}).optional()}),kh=P({...wn.shape,...Eo.shape,uri:_(),description:ye(_()),mimeType:ye(_()),annotations:Tn.optional(),_meta:ye(Ze({}))}),$w=P({...wn.shape,...Eo.shape,uriTemplate:_(),description:ye(_()),mimeType:ye(_()),annotations:Tn.optional(),_meta:ye(Ze({}))}),mi=To.extend({method:I("resources/list")}),Pw=$o.extend({resources:G(kh)}),hi=To.extend({method:I("resources/templates/list")}),Rw=$o.extend({resourceTemplates:G($w)}),ol=ot.extend({uri:_()}),Ow=ol,gi=Oe.extend({method:I("resources/read"),params:Ow}),Cw=Ce.extend({contents:G(le([xh,Sh]))}),Iw=ut.extend({method:I("notifications/resources/list_changed"),params:ct.optional()}),zw=ol,Nw=Oe.extend({method:I("resources/subscribe"),params:zw}),Aw=ol,jw=Oe.extend({method:I("resources/unsubscribe"),params:Aw}),Mw=ct.extend({uri:_()}),Dw=ut.extend({method:I("notifications/resources/updated"),params:Mw}),Lw=P({name:_(),description:ye(_()),required:ye(Ee())}),Zw=P({...wn.shape,...Eo.shape,description:ye(_()),arguments:ye(G(Lw)),_meta:ye(Ze({}))}),_i=To.extend({method:I("prompts/list")}),Uw=$o.extend({prompts:G(Zw)}),Hw=ot.extend({name:_(),arguments:ge(_(),_()).optional()}),yi=Oe.extend({method:I("prompts/get"),params:Hw}),sl=P({type:I("text"),text:_(),annotations:Tn.optional(),_meta:ge(_(),he()).optional()}),il=P({type:I("image"),data:nl,mimeType:_(),annotations:Tn.optional(),_meta:ge(_(),he()).optional()}),al=P({type:I("audio"),data:nl,mimeType:_(),annotations:Tn.optional(),_meta:ge(_(),he()).optional()}),qw=P({type:I("tool_use"),name:_(),id:_(),input:ge(_(),he()),_meta:ge(_(),he()).optional()}),Fw=P({type:I("resource"),resource:le([xh,Sh]),annotations:Tn.optional(),_meta:ge(_(),he()).optional()}),Bw=kh.extend({type:I("resource_link")}),cl=le([sl,il,al,Bw,Fw]),Vw=P({role:Oo,content:cl}),Kw=Ce.extend({description:_().optional(),messages:G(Vw)}),Jw=ut.extend({method:I("notifications/prompts/list_changed"),params:ct.optional()}),Gw=P({title:_().optional(),readOnlyHint:Ee().optional(),destructiveHint:Ee().optional(),idempotentHint:Ee().optional(),openWorldHint:Ee().optional()}),Ww=P({taskSupport:Ge(["required","optional","forbidden"]).optional()}),bh=P({...wn.shape,...Eo.shape,description:_().optional(),inputSchema:P({type:I("object"),properties:ge(_(),Re).optional(),required:G(_()).optional()}).catchall(he()),outputSchema:P({type:I("object"),properties:ge(_(),Re).optional(),required:G(_()).optional()}).catchall(he()).optional(),annotations:Gw.optional(),execution:Ww.optional(),_meta:ge(_(),he()).optional()}),vi=To.extend({method:I("tools/list")}),Yw=$o.extend({tools:G(bh)}),xi=Ce.extend({content:G(cl).default([]),structuredContent:ge(_(),he()).optional(),isError:Ee().optional()}),SN=xi.or(Ce.extend({toolResult:he()})),Xw=bo.extend({name:_(),arguments:ge(_(),he()).optional()}),$n=Oe.extend({method:I("tools/call"),params:Xw}),Qw=ut.extend({method:I("notifications/tools/list_changed"),params:ct.optional()}),kN=P({autoRefresh:Ee().default(!0),debounceMs:te().int().nonnegative().default(300)}),Co=Ge(["debug","info","notice","warning","error","critical","alert","emergency"]),eE=ot.extend({level:Co}),ul=Oe.extend({method:I("logging/setLevel"),params:eE}),tE=ct.extend({level:Co,logger:_().optional(),data:he()}),rE=ut.extend({method:I("notifications/message"),params:tE}),nE=P({name:_().optional()}),oE=P({hints:G(nE).optional(),costPriority:te().min(0).max(1).optional(),speedPriority:te().min(0).max(1).optional(),intelligencePriority:te().min(0).max(1).optional()}),sE=P({mode:Ge(["auto","required","none"]).optional()}),iE=P({type:I("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:G(cl).default([]),structuredContent:P({}).loose().optional(),isError:Ee().optional(),_meta:ge(_(),he()).optional()}),aE=Ku("type",[sl,il,al]),ti=Ku("type",[sl,il,al,qw,iE]),cE=P({role:Oo,content:le([ti,G(ti)]),_meta:ge(_(),he()).optional()}),uE=bo.extend({messages:G(cE),modelPreferences:oE.optional(),systemPrompt:_().optional(),includeContext:Ge(["none","thisServer","allServers"]).optional(),temperature:te().optional(),maxTokens:te().int(),stopSequences:G(_()).optional(),metadata:Re.optional(),tools:G(bh).optional(),toolChoice:sE.optional()}),lE=Oe.extend({method:I("sampling/createMessage"),params:uE}),Io=Ce.extend({model:_(),stopReason:ye(Ge(["endTurn","stopSequence","maxTokens"]).or(_())),role:Oo,content:aE}),ll=Ce.extend({model:_(),stopReason:ye(Ge(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:Oo,content:le([ti,G(ti)])}),dE=P({type:I("boolean"),title:_().optional(),description:_().optional(),default:Ee().optional()}),pE=P({type:I("string"),title:_().optional(),description:_().optional(),minLength:te().optional(),maxLength:te().optional(),format:Ge(["email","uri","date","date-time"]).optional(),default:_().optional()}),fE=P({type:Ge(["number","integer"]),title:_().optional(),description:_().optional(),minimum:te().optional(),maximum:te().optional(),default:te().optional()}),mE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:G(_()),default:_().optional()}),hE=P({type:I("string"),title:_().optional(),description:_().optional(),oneOf:G(P({const:_(),title:_()})),default:_().optional()}),gE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:G(_()),enumNames:G(_()).optional(),default:_().optional()}),_E=le([mE,hE]),yE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({type:I("string"),enum:G(_())}),default:G(_()).optional()}),vE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({anyOf:G(P({const:_(),title:_()}))}),default:G(_()).optional()}),xE=le([yE,vE]),SE=le([gE,_E,xE]),kE=le([SE,dE,pE,fE]),bE=bo.extend({mode:I("form").optional(),message:_(),requestedSchema:P({type:I("object"),properties:ge(_(),kE),required:G(_()).optional()})}),wE=bo.extend({mode:I("url"),message:_(),elicitationId:_(),url:_().url()}),EE=le([bE,wE]),TE=Oe.extend({method:I("elicitation/create"),params:EE}),$E=ct.extend({elicitationId:_()}),PE=ut.extend({method:I("notifications/elicitation/complete"),params:$E}),Pn=Ce.extend({action:Ge(["accept","decline","cancel"]),content:Ju(t=>t===null?void 0:t,ge(_(),le([_(),te(),Ee(),G(_())])).optional())}),RE=P({type:I("ref/resource"),uri:_()});var OE=P({type:I("ref/prompt"),name:_()}),CE=ot.extend({ref:le([OE,RE]),argument:P({name:_(),value:_()}),context:P({arguments:ge(_(),_()).optional()}).optional()}),Si=Oe.extend({method:I("completion/complete"),params:CE});function wh(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Eh(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var IE=Ce.extend({completion:Ze({values:G(_()).max(100),total:ye(te().int()),hasMore:ye(Ee())})}),zE=P({uri:_().startsWith("file://"),name:_().optional(),_meta:ge(_(),he()).optional()}),NE=Oe.extend({method:I("roots/list"),params:ot.optional()}),dl=Ce.extend({roots:G(zE)}),AE=ut.extend({method:I("notifications/roots/list_changed"),params:ct.optional()}),bN=le([ii,tl,Si,ul,yi,_i,mi,hi,gi,Nw,jw,$n,vi,ci,li,di,fi]),wN=le([si,ai,rl,AE,Ro]),EN=le([oi,Io,ll,Pn,dl,ui,pi,En]),TN=le([ii,lE,TE,NE,ci,li,di,fi]),$N=le([si,ai,rE,Dw,Iw,Qw,Jw,Ro,PE]),PN=le([oi,Sw,IE,Kw,Uw,Pw,Rw,Cw,xi,Yw,ui,pi,En]),C=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===N.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new 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(N.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function lr(t){return t==="completed"||t==="failed"||t==="cancelled"}var $h=Symbol("Let zodToJsonSchema decide on which parser to use");var Th={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"},Ph=t=>typeof t=="string"?{...Th,name:t}:{...Th,...t};var Rh=t=>{let e=Ph(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 pl(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function W(t,e,r,n,o){t[e]=r,pl(t,e,n,o)}var ki=(t,e)=>{let r=0;for(;r<t.length&&r<e.length&&t[r]===e[r];r++);return[(t.length-r).toString(),...e.slice(r)].join("/")};function _e(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?ki(e,t.currentPath):e.join("/")}}function Oh(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==b.ZodAny&&(r.items=M(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&W(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&W(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(W(r,"minItems",t.exactLength.value,t.exactLength.message,e),W(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Ch(t,e){let r={type:"integer",format:"int64"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"min":e.target==="jsonSchema7"?n.inclusive?W(r,"minimum",n.value,n.message,e):W(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),W(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?W(r,"maximum",n.value,n.message,e):W(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),W(r,"maximum",n.value,n.message,e));break;case"multipleOf":W(r,"multipleOf",n.value,n.message,e);break}return r}function Ih(){return{type:"boolean"}}function bi(t,e){return M(t.type._def,e)}var zh=(t,e)=>M(t.innerType._def,e);function fl(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>fl(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 jE(t,e)}}var jE=(t,e)=>{let r={type:"integer",format:"unix-time"};if(e.target==="openApi3")return r;for(let n of t.checks)switch(n.kind){case"min":W(r,"minimum",n.value,n.message,e);break;case"max":W(r,"maximum",n.value,n.message,e);break}return r};function Nh(t,e){return{...M(t.innerType._def,e),default:t.defaultValue()}}function Ah(t,e){return e.effectStrategy==="input"?M(t.schema._def,e):_e(e)}function jh(t){return{type:"string",enum:Array.from(t.values)}}var ME=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Mh(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(ME(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 Dh(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 ml,_t={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(ml===void 0&&(ml=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),ml),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function wi(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":W(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":W(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":yt(r,"email",n.message,e);break;case"format:idn-email":yt(r,"idn-email",n.message,e);break;case"pattern:zod":Ue(r,_t.email,n.message,e);break}break;case"url":yt(r,"uri",n.message,e);break;case"uuid":yt(r,"uuid",n.message,e);break;case"regex":Ue(r,n.regex,n.message,e);break;case"cuid":Ue(r,_t.cuid,n.message,e);break;case"cuid2":Ue(r,_t.cuid2,n.message,e);break;case"startsWith":Ue(r,RegExp(`^${hl(n.value,e)}`),n.message,e);break;case"endsWith":Ue(r,RegExp(`${hl(n.value,e)}$`),n.message,e);break;case"datetime":yt(r,"date-time",n.message,e);break;case"date":yt(r,"date",n.message,e);break;case"time":yt(r,"time",n.message,e);break;case"duration":yt(r,"duration",n.message,e);break;case"length":W(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),W(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{Ue(r,RegExp(hl(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&yt(r,"ipv4",n.message,e),n.version!=="v4"&&yt(r,"ipv6",n.message,e);break}case"base64url":Ue(r,_t.base64url,n.message,e);break;case"jwt":Ue(r,_t.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Ue(r,_t.ipv4Cidr,n.message,e),n.version!=="v4"&&Ue(r,_t.ipv6Cidr,n.message,e);break}case"emoji":Ue(r,_t.emoji(),n.message,e);break;case"ulid":{Ue(r,_t.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{yt(r,"binary",n.message,e);break}case"contentEncoding:base64":{W(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Ue(r,_t.base64,n.message,e);break}}break}case"nanoid":Ue(r,_t.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function hl(t,e){return e.patternStrategy==="escape"?LE(t):t}var DE=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function LE(t){let e="";for(let r=0;r<t.length;r++)DE.has(t[r])||(e+="\\"),e+=t[r];return e}function yt(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):W(t,"format",e,r,n)}function Ue(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:Lh(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):W(t,"pattern",Lh(e,n),r,n)}function Lh(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},n=r.i?t.source.toLowerCase():t.source,o="",s=!1,i=!1,a=!1;for(let c=0;c<n.length;c++){if(s){o+=n[c],s=!1;continue}if(r.i){if(i){if(n[c].match(/[a-z]/)){a?(o+=n[c],o+=`${n[c-2]}-${n[c]}`.toUpperCase(),a=!1):n[c+1]==="-"&&n[c+2]?.match(/[a-z]/)?(o+=n[c],a=!0):o+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){o+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(r.m){if(n[c]==="^"){o+=`(^|(?<=[\r
72
72
  ]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
73
73
  ]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
74
74
  `:`[${n[c]}\r
75
- ]`;continue}o+=n[c],n[c]==="\\"?s=!0:i&&n[c]==="]"?i=!1:!i&&n[c]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return o}function bi(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===b.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??_e(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===b.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=Si(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}=ki(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Ah(t,e){if(e.mapStrategy==="record")return bi(t,e);let r=M(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||_e(e),n=M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||_e(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function jh(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 Mh(t){return t.target==="openAi"?void 0:{not:_e({...t,currentPath:[...t.currentPath,"not"]})}}function Dh(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Co={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Zh(t,e){if(e.target==="openApi3")return Lh(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Co&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Co[s._def.typeName];return i&&!o.includes(i)?[...o,i]:o},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){let n=r.reduce((o,s)=>{let i=typeof s._def.value;switch(i){case"string":case"number":case"boolean":return[...o,i];case"bigint":return[...o,"integer"];case"object":if(s._def.value===null)return[...o,"null"];default:return o}},[]);if(n.length===r.length){let o=n.filter((s,i,a)=>a.indexOf(s)===i);return{type:o.length>1?o:o[0],enum:r.reduce((s,i)=>s.includes(i._def.value)?s:[...s,i._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,o)=>[...n,...o._def.values.filter(s=>!n.includes(s))],[])};return Lh(t,e)}var Lh=(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 Uh(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:Co[t.innerType._def.typeName],nullable:!0}:{type:[Co[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=M(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function Hh(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",ll(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?W(r,"minimum",n.value,n.message,e):W(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),W(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?W(r,"maximum",n.value,n.message,e):W(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),W(r,"maximum",n.value,n.message,e));break;case"multipleOf":W(r,"multipleOf",n.value,n.message,e);break}return r}function qh(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=NE(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=zE(t,e);return i!==void 0&&(n.additionalProperties=i),n}function zE(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 NE(t){try{return t.isOptional()}catch{return!0}}var Fh=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return M(t.innerType._def,e);let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:_e(e)},r]}:_e(e)};var Bh=(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 Vh(t,e){return M(t.type._def,e)}function Kh(t,e){let n={type:"array",uniqueItems:!0,items:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&W(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&W(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function Jh(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 Gh(t){return{not:_e(t)}}function Wh(t){return _e(t)}var Yh=(t,e)=>M(t.innerType._def,e);var Xh=(t,e,r)=>{switch(e){case b.ZodString:return Si(t,r);case b.ZodNumber:return Hh(t,r);case b.ZodObject:return qh(t,r);case b.ZodBigInt:return Th(t,r);case b.ZodBoolean:return $h();case b.ZodDate:return dl(t,r);case b.ZodUndefined:return Gh(r);case b.ZodNull:return Dh(r);case b.ZodArray:return Eh(t,r);case b.ZodUnion:case b.ZodDiscriminatedUnion:return Zh(t,r);case b.ZodIntersection:return Ih(t,r);case b.ZodTuple:return Jh(t,r);case b.ZodRecord:return bi(t,r);case b.ZodLiteral:return zh(t,r);case b.ZodEnum:return Ch(t);case b.ZodNativeEnum:return jh(t);case b.ZodNullable:return Uh(t,r);case b.ZodOptional:return Fh(t,r);case b.ZodMap:return Ah(t,r);case b.ZodSet:return Kh(t,r);case b.ZodLazy:return()=>t.getter()._def;case b.ZodPromise:return Vh(t,r);case b.ZodNaN:case b.ZodNever:return Mh(r);case b.ZodEffects:return Oh(t,r);case b.ZodAny:return _e(r);case b.ZodUnknown:return Wh(r);case b.ZodDefault:return Rh(t,r);case b.ZodBranded:return ki(t,r);case b.ZodReadonly:return Yh(t,r);case b.ZodCatch:return Ph(t,r);case b.ZodPipeline:return Bh(t,r);case b.ZodFunction:case b.ZodVoid:case b.ZodSymbol:return;default:return(n=>{})(e)}};function M(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Sh)return a}if(n&&!r){let a=AE(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=Xh(t,t.typeName,e),i=typeof s=="function"?M(s(),e):s;if(i&&jE(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var AE=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:xi(e.currentPath,t.path)};case"none":case"seen":return t.path.length<e.currentPath.length&&t.path.every((r,n)=>e.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),_e(e)):e.$refStrategy==="seen"?_e(e):void 0}},jE=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var ml=(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)??_e(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=M(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??_e(r),i=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;i!==void 0&&(s.title=i),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let a=o===void 0?n?{...s,[r.definitionPath]:n}:s:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,o].join("/"),[r.definitionPath]:{...n,[o]:s}};return r.target==="jsonSchema7"?a.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(a.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in a||"oneOf"in a||"allOf"in a||"type"in a&&Array.isArray(a.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),a};function ME(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function hl(t,e){return at(t)?ju(t,{target:ME(e?.target),io:e?.pipeStrategy??"input"}):ml(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function gl(t){let r=cr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Ws(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function _l(t,e){let r=ar(t,e);if(!r.success)throw r.error;return r.data}var DE=6e4,wi=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(ni,r=>{this._oncancel(r)}),this.setNotificationHandler(si,r=>{this._onprogress(r)}),this.setRequestHandler(oi,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(ii,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new C(N.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(ci,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,f=new C(d.error.code,d.error.message,d.error.data);l(f)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new C(N.InvalidParams,`Task not found: ${s}`);if(!lr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(lr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[ur]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(ui,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new C(N.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(di,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new C(N.InvalidParams,`Task not found: ${r.params.taskId}`);if(lr(o.status))throw new C(N.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new C(N.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof C?o:new C(N.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),C.fromError(N.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),So(s)||lh(s)?this._onresponse(s):Wu(s)?this._onrequest(s,i):uh(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=C.fromError(N.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[ur]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:N.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=ih(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,f)=>{if(i.signal.aborted)throw new C(N.ConnectionClosed,"Request was cancelled");let m={...f,relatedRequestId:e.id};s&&!m.relatedTask&&(m.relatedTask={taskId:s});let p=m.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,m)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:N.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),So(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(So(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),So(e))o(e);else{let i=C.fromError(e.error.code,e.error.message,e.error.data);o(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(e,r,n)}}catch(i){yield{type:"error",error:i instanceof C?i:new C(N.InternalError,String(i))}}return}let s;try{let i=await this.request(e,bn,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new C(N.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},lr(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new C(N.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new C(N.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof C?i:new C(N.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=x=>{l(x)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(x){d(x);return}n?.signal?.throwIfAborted();let f=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:f}}),a&&(m.params={...m.params,task:a}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[ur]:c}});let p=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(N.RequestTimeout,String(x));l(k)};this._responseHandlers.set(f,x=>{if(!n?.signal?.aborted){if(x instanceof Error)return l(x);try{let k=ar(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??DE,g=()=>p(C.fromError(N.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let y=c?.taskId;if(y){let 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},ai,r)}async getTaskResult(e,r,n){return this.request({method:"tasks/result",params:e},r,n)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},li,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},fh,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let n=r?.relatedTask?.taskId;if(n){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[ur]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[ur]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let i={...e,jsonrpc:"2.0"};r?.relatedTask&&(i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[ur]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=gl(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=_l(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=gl(e);this._notificationHandlers.set(n,o=>{let s=_l(e,o);return Promise.resolve(r(s))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let r=this._taskProgressTokens.get(e);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,r,n){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let o=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,n,o)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,r);for(let o of n)if(o.type==="request"&&Wu(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new C(N.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new C(N.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new C(N.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new C(N.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=$o.parse({method:"notifications/tasks/status",params:a});await this.notification(c),lr(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,i)=>{let a=await n.getTask(o,r);if(!a)throw new C(N.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(lr(a.status))throw new C(N.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=$o.parse({method:"notifications/tasks/status",params:c});await this.notification(u),lr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function Qh(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function eg(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];Qh(i)&&Qh(s)?r[o]={...i,...s}:r[o]=s}return r}var Zy=sf(rp(),1),Uy=sf(Ly(),1);function RO(){let t=new Zy.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Uy.default)(t),t}var ia=class{constructor(e){this._ajv=e??RO()}getValidator(e){let r="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var aa=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(l=>l.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(l=>l.type==="tool_use");if(i){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let l=new Set(c.filter(f=>f.type==="tool_use").map(f=>f.id)),d=new Set(s.filter(f=>f.type==="tool_result").map(f=>f.toolUseId));if(l.size!==d.size||![...l].every(f=>d.has(f)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},Oo,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},Tn,r)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function Hy(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 qy(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!t.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!t.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}var ca=class extends wi{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Ro.options.map((n,o)=>[n,o])),this.isMessageIgnored=(n,o)=>{let s=this._loggingLevels.get(o);return s?this.LOG_LEVEL_SEVERITY.get(n)<this.LOG_LEVEL_SEVERITY.get(s):!1},this._capabilities=r?.capabilities??{},this._instructions=r?.instructions,this._jsonSchemaValidator=r?.jsonSchemaValidator??new ia,this.setRequestHandler(Qu,n=>this._oninitialize(n)),this.setNotificationHandler(el,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(al,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Ro.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new aa(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=eg(this._capabilities,e)}setRequestHandler(e,r){let o=cr(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(at(o)){let a=o;s=a._zod?.def?.value??a.value}else{let a=o;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=ar(En,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new C(N.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,f=await Promise.resolve(r(c,u));if(d.task){let p=ar(bn,f);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new C(N.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let m=ar(yi,f);if(!m.success){let p=m.error instanceof Error?m.error.message:String(m.error);throw new C(N.InvalidParams,`Invalid tools/call result: ${p}`)}return m.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){qy(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Hy(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:nh.includes(r)?r:Ju,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},ri)}async createMessage(e,r){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let n=e.messages[e.messages.length-1],o=Array.isArray(n.content)?n.content:[n.content],s=o.some(u=>u.type==="tool_result"),i=e.messages.length>1?e.messages[e.messages.length-2]:void 0,a=i?Array.isArray(i.content)?i.content:[i.content]:[],c=a.some(u=>u.type==="tool_use");if(s){if(o.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let u=new Set(a.filter(d=>d.type==="tool_use").map(d=>d.id)),l=new Set(o.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(u.size!==l.size||![...u].every(d=>l.has(d)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},cl,r):this.request({method:"sampling/createMessage",params:e},Oo,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},Tn,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},Tn,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new C(N.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof C?i:new C(N.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},ul,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 By=Symbol.for("mcp.completable");function lp(t){return!!t&&typeof t=="object"&&By in t}function Vy(t){return t[By]?.complete}var Fy;(function(t){t.Completable="McpCompletable"})(Fy||(Fy={}));var OO=/^[A-Za-z0-9._-]{1,128}$/;function CO(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"),!OO.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 IO(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 dp(t){let e=CO(t);return IO(t,e.warnings),e.isValid}var ua=class{constructor(e){this._mcpServer=e}registerToolTask(e,r,n){let o={taskSupport:"required",...r.execution};if(o.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${e}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(e,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,o,r._meta,n)}};var la=class{constructor(e,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new ca(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new ua(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(vr(_i)),this.server.assertCanSetRequestHandler(vr(En)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(_i,()=>({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=kn(r.inputSchema);return o?hl(o,{strictUnions:!0,pipeStrategy:"input"}):zO})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=kn(r.outputSchema);o&&(n.outputSchema=hl(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(En,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new C(N.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new C(N.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new C(N.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new C(N.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof C&&n.code===N.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=kn(e.inputSchema)??e.inputSchema,i=await Js(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Gs(a);throw new C(N.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new C(N.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=kn(e.outputSchema),s=await Js(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Gs(i);throw new C(N.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(f=>setTimeout(f,l));let d=await n.taskStore.getTask(c);if(!d)throw new C(N.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(vr(vi)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(vi,async e=>{switch(e.params.ref.type){case"ref/prompt":return vh(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return xh(e),this.handleResourceCompletion(e,e.params.ref);default:throw new C(N.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new C(N.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new C(N.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return as;let s=cr(n.argsSchema)?.[e.params.argument.name];if(!lp(s))return as;let i=Vy(s);if(!i)return as;let a=await i(e.params.argument.value,e.params.context);return Jy(a)}async handleResourceCompletion(e,r){let n=Object.values(this._registeredResourceTemplates).find(i=>i.resourceTemplate.uriTemplate.toString()===r.uri);if(!n){if(this._registeredResources[r.uri])return as;throw new C(N.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return as;let s=await o(e.params.argument.value,e.params.context);return Jy(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(vr(pi)),this.server.assertCanSetRequestHandler(vr(fi)),this.server.assertCanSetRequestHandler(vr(mi)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(pi,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(fi,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(mi,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new C(N.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new C(N.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(vr(hi)),this.server.assertCanSetRequestHandler(vr(gi)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(hi,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?AO(r.argsSchema):void 0}))})),this.server.setRequestHandler(gi,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new C(N.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new C(N.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=kn(n.argsSchema),s=await Js(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Gs(c);throw new C(N.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:Kr(o),callback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:a=>{typeof a.name<"u"&&a.name!==e&&(delete this._registeredPrompts[e],a.name&&(this._registeredPrompts[a.name]=i)),typeof a.title<"u"&&(i.title=a.title),typeof a.description<"u"&&(i.description=a.description),typeof a.argsSchema<"u"&&(i.argsSchema=Kr(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof Ke?c._def?.innerType:c;return lp(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){dp(e);let l={title:r,description:n,inputSchema:Ky(o),outputSchema:Ky(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"&&dp(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=l)),typeof d.title<"u"&&(l.title=d.title),typeof d.description<"u"&&(l.description=d.description),typeof d.paramsSchema<"u"&&(l.inputSchema=Kr(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Kr(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];pp(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!pp(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 zO={type:"object",properties:{}};function Gy(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function NO(t){return"_def"in t||"_zod"in t||Gy(t)}function pp(t){return typeof t!="object"||t===null||NO(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(Gy)}function Ky(t){if(t)return pp(t)?Kr(t):t}function AO(t){let e=cr(t);return e?Object.entries(e).map(([r,n])=>{let o=Nm(n),s=Am(n);return{name:r,description:o,required:!s}}):[]}function vr(t){let r=cr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Ws(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function Jy(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var as={completion:{values:[],hasMore:!1}};import Yy from"node:process";var da=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
76
- `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),jO(r)}clear(){this._buffer=void 0}};function jO(t){return dh.parse(JSON.parse(t))}function Wy(t){return JSON.stringify(t)+`
77
- `}var pa=class{constructor(e=Yy.stdin,r=Yy.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new da,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(e){return new Promise(r=>{let n=Wy(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as Ox}from"node:module";import{createHash as QC}from"node:crypto";import{existsSync as tf,unlinkSync as eI,readdirSync as tI,readFileSync as Cx,rmSync as rI}from"node:fs";import{join as Ca,dirname as ro,resolve as Ix}from"node:path";import{fileURLToPath as Na}from"node:url";import{homedir as zx,tmpdir as nI}from"node:os";import{spawn as LO,execSync as sv}from"node:child_process";import{mkdtempSync as ZO,writeFileSync as rv,rmSync as nv,existsSync as ov}from"node:fs";import{join as ma,resolve as UO}from"node:path";import{tmpdir as HO}from"node:os";import{execSync as fp}from"node:child_process";import{existsSync as MO}from"node:fs";var Xy=process.platform==="win32";function Ne(t){try{let e=Xy?`where ${t}`:`command -v ${t}`;return fp(e,{stdio:"pipe"}),!0}catch{return!1}}function DO(){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(MO(e))return e;try{let r=fp("where bash",{encoding:"utf-8",stdio:"pipe"}).trim().split(/\r?\n/).map(n=>n.trim()).filter(Boolean);for(let n of r){let o=n.toLowerCase();if(!(o.includes("system32")||o.includes("windowsapps")))return n}return null}catch{return null}}function wt(t){try{return fp(`${t} --version`,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function fa(){let t=Ne("bun");return{javascript:t?"bun":"node",typescript:t?"bun":Ne("tsx")?"tsx":Ne("ts-node")?"ts-node":null,python:Ne("python3")?"python3":Ne("python")?"python":null,shell:Xy?DO()??(Ne("sh")?"sh":Ne("powershell")?"powershell":"cmd.exe"):Ne("bash")?"bash":"sh",ruby:Ne("ruby")?"ruby":null,go:Ne("go")?"go":null,rust:Ne("rustc")?"rustc":null,php:Ne("php")?"php":null,perl:Ne("perl")?"perl":null,r:Ne("Rscript")?"Rscript":Ne("r")?"r":null,elixir:Ne("elixir")?"elixir":null}}function mp(){return Ne("bun")}function Qy(t){let e=[],r=t.javascript==="bun";return e.push(` JavaScript: ${t.javascript} (${wt(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${wt(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${wt(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${wt(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${wt(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${wt(t.go)})`),t.rust&&e.push(` Rust: ${t.rust} (${wt(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${wt(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${wt(t.perl)})`),t.r&&e.push(` R: ${t.r} (${wt(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${wt(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
78
- `)}function ev(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 tv(t,e,r){switch(e){case"javascript":return t.javascript==="bun"?["bun","run",r]:["node",r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript==="bun"?["bun","run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}function cs(t,e){if(Buffer.byteLength(t)<=e)return t;let r=t.split(`
75
+ ]`;continue}o+=n[c],n[c]==="\\"?s=!0:i&&n[c]==="]"?i=!1:!i&&n[c]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return o}function Ei(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===b.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??_e(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===b.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=wi(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===b.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===b.ZodBranded&&t.keyType._def.type._def.typeName===b.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=bi(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Zh(t,e){if(e.mapStrategy==="record")return Ei(t,e);let r=M(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||_e(e),n=M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||_e(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function Uh(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 Hh(t){return t.target==="openAi"?void 0:{not:_e({...t,currentPath:[...t.currentPath,"not"]})}}function qh(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var zo={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Bh(t,e){if(e.target==="openApi3")return Fh(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in zo&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=zo[s._def.typeName];return i&&!o.includes(i)?[...o,i]:o},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){let n=r.reduce((o,s)=>{let i=typeof s._def.value;switch(i){case"string":case"number":case"boolean":return[...o,i];case"bigint":return[...o,"integer"];case"object":if(s._def.value===null)return[...o,"null"];default:return o}},[]);if(n.length===r.length){let o=n.filter((s,i,a)=>a.indexOf(s)===i);return{type:o.length>1?o:o[0],enum:r.reduce((s,i)=>s.includes(i._def.value)?s:[...s,i._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,o)=>[...n,...o._def.values.filter(s=>!n.includes(s))],[])};return Fh(t,e)}var Fh=(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 Vh(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:zo[t.innerType._def.typeName],nullable:!0}:{type:[zo[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=M(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function Kh(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",pl(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?W(r,"minimum",n.value,n.message,e):W(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),W(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?W(r,"maximum",n.value,n.message,e):W(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),W(r,"maximum",n.value,n.message,e));break;case"multipleOf":W(r,"multipleOf",n.value,n.message,e);break}return r}function Jh(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=UE(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=ZE(t,e);return i!==void 0&&(n.additionalProperties=i),n}function ZE(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 UE(t){try{return t.isOptional()}catch{return!0}}var Gh=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return M(t.innerType._def,e);let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:_e(e)},r]}:_e(e)};var Wh=(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 Yh(t,e){return M(t.type._def,e)}function Xh(t,e){let n={type:"array",uniqueItems:!0,items:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&W(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&W(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function Qh(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 eg(t){return{not:_e(t)}}function tg(t){return _e(t)}var rg=(t,e)=>M(t.innerType._def,e);var ng=(t,e,r)=>{switch(e){case b.ZodString:return wi(t,r);case b.ZodNumber:return Kh(t,r);case b.ZodObject:return Jh(t,r);case b.ZodBigInt:return Ch(t,r);case b.ZodBoolean:return Ih();case b.ZodDate:return fl(t,r);case b.ZodUndefined:return eg(r);case b.ZodNull:return qh(r);case b.ZodArray:return Oh(t,r);case b.ZodUnion:case b.ZodDiscriminatedUnion:return Bh(t,r);case b.ZodIntersection:return Mh(t,r);case b.ZodTuple:return Qh(t,r);case b.ZodRecord:return Ei(t,r);case b.ZodLiteral:return Dh(t,r);case b.ZodEnum:return jh(t);case b.ZodNativeEnum:return Uh(t);case b.ZodNullable:return Vh(t,r);case b.ZodOptional:return Gh(t,r);case b.ZodMap:return Zh(t,r);case b.ZodSet:return Xh(t,r);case b.ZodLazy:return()=>t.getter()._def;case b.ZodPromise:return Yh(t,r);case b.ZodNaN:case b.ZodNever:return Hh(r);case b.ZodEffects:return Ah(t,r);case b.ZodAny:return _e(r);case b.ZodUnknown:return tg(r);case b.ZodDefault:return Nh(t,r);case b.ZodBranded:return bi(t,r);case b.ZodReadonly:return rg(t,r);case b.ZodCatch:return zh(t,r);case b.ZodPipeline:return Wh(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!==$h)return a}if(n&&!r){let a=HE(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=ng(t,t.typeName,e),i=typeof s=="function"?M(s(),e):s;if(i&&qE(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var HE=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:ki(e.currentPath,t.path)};case"none":case"seen":return t.path.length<e.currentPath.length&&t.path.every((r,n)=>e.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),_e(e)):e.$refStrategy==="seen"?_e(e):void 0}},qE=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var gl=(t,e)=>{let r=Rh(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:M(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??_e(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=M(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??_e(r),i=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;i!==void 0&&(s.title=i),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let a=o===void 0?n?{...s,[r.definitionPath]:n}:s:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,o].join("/"),[r.definitionPath]:{...n,[o]:s}};return r.target==="jsonSchema7"?a.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(a.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in a||"oneOf"in a||"allOf"in a||"type"in a&&Array.isArray(a.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),a};function FE(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function _l(t,e){return at(t)?Du(t,{target:FE(e?.target),io:e?.pipeStrategy??"input"}):gl(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function yl(t){let r=cr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Xs(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function vl(t,e){let r=ar(t,e);if(!r.success)throw r.error;return r.data}var BE=6e4,Ti=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(si,r=>{this._oncancel(r)}),this.setNotificationHandler(ai,r=>{this._onprogress(r)}),this.setRequestHandler(ii,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(ci,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new C(N.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(li,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,f=new C(d.error.code,d.error.message,d.error.data);l(f)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new C(N.InvalidParams,`Task not found: ${s}`);if(!lr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(lr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[ur]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(di,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new C(N.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(fi,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new C(N.InvalidParams,`Task not found: ${r.params.taskId}`);if(lr(o.status))throw new C(N.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new C(N.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof C?o:new C(N.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),C.fromError(N.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),wo(s)||hh(s)?this._onresponse(s):Xu(s)?this._onrequest(s,i):mh(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=C.fromError(N.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[ur]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:N.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=dh(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,f)=>{if(i.signal.aborted)throw new C(N.ConnectionClosed,"Request was cancelled");let m={...f,relatedRequestId:e.id};s&&!m.relatedTask&&(m.relatedTask={taskId:s});let p=m.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,m)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:N.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),wo(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(wo(e)&&e.result&&typeof e.result=="object"){let i=e.result;if(i.task&&typeof i.task=="object"){let a=i.task;typeof a.taskId=="string"&&(s=!0,this._taskProgressTokens.set(a.taskId,r))}}if(s||this._progressHandlers.delete(r),wo(e))o(e);else{let i=C.fromError(e.error.code,e.error.message,e.error.data);o(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(e,r,n)}}catch(i){yield{type:"error",error:i instanceof C?i:new C(N.InternalError,String(i))}}return}let s;try{let i=await this.request(e,En,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new C(N.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},lr(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new C(N.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new C(N.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof C?i:new C(N.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=x=>{l(x)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(x){d(x);return}n?.signal?.throwIfAborted();let f=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:f}}),a&&(m.params={...m.params,task:a}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[ur]:c}});let p=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 S=x instanceof C?x:new C(N.RequestTimeout,String(x));l(S)};this._responseHandlers.set(f,x=>{if(!n?.signal?.aborted){if(x instanceof Error)return l(x);try{let S=ar(r,x.result);S.success?u(S.data):l(S.error)}catch(S){l(S)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??BE,g=()=>p(C.fromError(N.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let y=c?.taskId;if(y){let x=S=>{let w=this._responseHandlers.get(f);w?w(S):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,x),this._enqueueTaskMessage(y,{type:"request",message:m,timestamp:Date.now()}).catch(S=>{this._cleanupTimeout(f),l(S)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(x=>{this._cleanupTimeout(f),l(x)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},ui,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},pi,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},yh,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let n=r?.relatedTask?.taskId;if(n){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[ur]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[ur]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let i={...e,jsonrpc:"2.0"};r?.relatedTask&&(i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[ur]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=yl(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=yl(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(N.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new C(N.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new C(N.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new C(N.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=Ro.parse({method:"notifications/tasks/status",params:a});await this.notification(c),lr(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,i)=>{let a=await n.getTask(o,r);if(!a)throw new C(N.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(lr(a.status))throw new C(N.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=Ro.parse({method:"notifications/tasks/status",params:c});await this.notification(u),lr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function og(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function sg(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];og(i)&&og(s)?r[o]={...i,...s}:r[o]=s}return r}var By=df(op(),1),Vy=df(Fy(),1);function jO(){let t=new By.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Vy.default)(t),t}var ca=class{constructor(e){this._ajv=e??jO()}getValidator(e){let r="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var ua=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(l=>l.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(l=>l.type==="tool_use");if(i){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let l=new Set(c.filter(f=>f.type==="tool_use").map(f=>f.id)),d=new Set(s.filter(f=>f.type==="tool_result").map(f=>f.toolUseId));if(l.size!==d.size||![...l].every(f=>d.has(f)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},Io,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},Pn,r)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function Ky(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 Jy(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!t.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!t.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}var la=class extends Ti{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Co.options.map((n,o)=>[n,o])),this.isMessageIgnored=(n,o)=>{let s=this._loggingLevels.get(o);return s?this.LOG_LEVEL_SEVERITY.get(n)<this.LOG_LEVEL_SEVERITY.get(s):!1},this._capabilities=r?.capabilities??{},this._instructions=r?.instructions,this._jsonSchemaValidator=r?.jsonSchemaValidator??new ca,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=Co.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new ua(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=sg(this._capabilities,e)}setRequestHandler(e,r){let o=cr(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(at(o)){let a=o;s=a._zod?.def?.value??a.value}else{let a=o;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=ar($n,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new C(N.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,f=await Promise.resolve(r(c,u));if(d.task){let p=ar(En,f);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new C(N.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let m=ar(xi,f);if(!m.success){let p=m.error instanceof Error?m.error.message:String(m.error);throw new C(N.InvalidParams,`Invalid tools/call result: ${p}`)}return m.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){Jy(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Ky(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:ch.includes(r)?r:Wu,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"},oi)}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},ll,r):this.request({method:"sampling/createMessage",params:e},Io,r)}async elicitInput(e,r){switch(e.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let o=e;return this.request({method:"elicitation/create",params:o},Pn,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},Pn,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new C(N.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof C?i:new C(N.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},dl,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 Wy=Symbol.for("mcp.completable");function pp(t){return!!t&&typeof t=="object"&&Wy in t}function Yy(t){return t[Wy]?.complete}var Gy;(function(t){t.Completable="McpCompletable"})(Gy||(Gy={}));var MO=/^[A-Za-z0-9._-]{1,128}$/;function DO(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"),!MO.test(t)){let r=t.split("").filter(n=>!/[A-Za-z0-9._-]/.test(n)).filter((n,o,s)=>s.indexOf(n)===o);return e.push(`Tool name contains invalid characters: ${r.map(n=>`"${n}"`).join(", ")}`,"Allowed characters are: A-Z, a-z, 0-9, underscore (_), dash (-), and dot (.)"),{isValid:!1,warnings:e}}return{isValid:!0,warnings:e}}function LO(t,e){if(e.length>0){console.warn(`Tool name validation warning for "${t}":`);for(let r of e)console.warn(` - ${r}`);console.warn("Tool registration will proceed, but this may cause compatibility issues."),console.warn("Consider updating the tool name to conform to the MCP tool naming standard."),console.warn("See SEP: Specify Format for Tool Names (https://github.com/modelcontextprotocol/modelcontextprotocol/issues/986) for more details.")}}function fp(t){let e=DO(t);return LO(t,e.warnings),e.isValid}var da=class{constructor(e){this._mcpServer=e}registerToolTask(e,r,n){let o={taskSupport:"required",...r.execution};if(o.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${e}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(e,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,o,r._meta,n)}};var pa=class{constructor(e,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new la(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new da(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(vr(vi)),this.server.assertCanSetRequestHandler(vr($n)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(vi,()=>({tools:Object.entries(this._registeredTools).filter(([,e])=>e.enabled).map(([e,r])=>{let n={name:e,title:r.title,description:r.description,inputSchema:(()=>{let o=bn(r.inputSchema);return o?_l(o,{strictUnions:!0,pipeStrategy:"input"}):ZO})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=bn(r.outputSchema);o&&(n.outputSchema=_l(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler($n,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new C(N.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new C(N.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new C(N.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new C(N.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof C&&n.code===N.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=bn(e.inputSchema)??e.inputSchema,i=await Ws(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Ys(a);throw new C(N.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new C(N.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=bn(e.outputSchema),s=await Ws(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Ys(i);throw new C(N.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(f=>setTimeout(f,l));let d=await n.taskStore.getTask(c);if(!d)throw new C(N.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(vr(Si)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(Si,async e=>{switch(e.params.ref.type){case"ref/prompt":return wh(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Eh(e),this.handleResourceCompletion(e,e.params.ref);default:throw new C(N.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new C(N.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new C(N.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return us;let s=cr(n.argsSchema)?.[e.params.argument.name];if(!pp(s))return us;let i=Yy(s);if(!i)return us;let a=await i(e.params.argument.value,e.params.context);return Qy(a)}async handleResourceCompletion(e,r){let n=Object.values(this._registeredResourceTemplates).find(i=>i.resourceTemplate.uriTemplate.toString()===r.uri);if(!n){if(this._registeredResources[r.uri])return us;throw new C(N.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return us;let s=await o(e.params.argument.value,e.params.context);return Qy(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(vr(mi)),this.server.assertCanSetRequestHandler(vr(hi)),this.server.assertCanSetRequestHandler(vr(gi)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(mi,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(hi,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(gi,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new C(N.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new C(N.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(vr(_i)),this.server.assertCanSetRequestHandler(vr(yi)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(_i,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?HO(r.argsSchema):void 0}))})),this.server.setRequestHandler(yi,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new C(N.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new C(N.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=bn(n.argsSchema),s=await Ws(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Ys(c);throw new C(N.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:Jr(o),callback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:a=>{typeof a.name<"u"&&a.name!==e&&(delete this._registeredPrompts[e],a.name&&(this._registeredPrompts[a.name]=i)),typeof a.title<"u"&&(i.title=a.title),typeof a.description<"u"&&(i.description=a.description),typeof a.argsSchema<"u"&&(i.argsSchema=Jr(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof Ke?c._def?.innerType:c;return pp(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){fp(e);let l={title:r,description:n,inputSchema:Xy(o),outputSchema:Xy(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"&&fp(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=l)),typeof d.title<"u"&&(l.title=d.title),typeof d.description<"u"&&(l.description=d.description),typeof d.paramsSchema<"u"&&(l.inputSchema=Jr(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Jr(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];mp(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!mp(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 ZO={type:"object",properties:{}};function ev(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function UO(t){return"_def"in t||"_zod"in t||ev(t)}function mp(t){return typeof t!="object"||t===null||UO(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(ev)}function Xy(t){if(t)return mp(t)?Jr(t):t}function HO(t){let e=cr(t);return e?Object.entries(e).map(([r,n])=>{let o=Lm(n),s=Zm(n);return{name:r,description:o,required:!s}}):[]}function vr(t){let r=cr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Xs(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function Qy(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var us={completion:{values:[],hasMore:!1}};import rv from"node:process";var fa=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
76
+ `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),qO(r)}clear(){this._buffer=void 0}};function qO(t){return gh.parse(JSON.parse(t))}function tv(t){return JSON.stringify(t)+`
77
+ `}var ma=class{constructor(e=rv.stdin,r=rv.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new fa,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(e){return new Promise(r=>{let n=tv(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as jx}from"node:module";import{createHash as af}from"node:crypto";import{existsSync as Aa,unlinkSync as Mx,readdirSync as Dx,readFileSync as Lx,rmSync as iI,mkdirSync as aI}from"node:fs";import{join as wr,dirname as no,resolve as Zx}from"node:path";import{fileURLToPath as ja}from"node:url";import{homedir as ws,tmpdir as cI}from"node:os";import{spawn as VO,execSync as lv}from"node:child_process";import{mkdtempSync as KO,writeFileSync as av,rmSync as cv,existsSync as uv}from"node:fs";import{join as ga,resolve as JO}from"node:path";import{tmpdir as GO}from"node:os";import{execSync as hp}from"node:child_process";import{existsSync as FO}from"node:fs";var nv=process.platform==="win32";function Ne(t){try{let e=nv?`where ${t}`:`command -v ${t}`;return hp(e,{stdio:"pipe"}),!0}catch{return!1}}function BO(){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(FO(e))return e;try{let r=hp("where bash",{encoding:"utf-8",stdio:"pipe"}).trim().split(/\r?\n/).map(n=>n.trim()).filter(Boolean);for(let n of r){let o=n.toLowerCase();if(!(o.includes("system32")||o.includes("windowsapps")))return n}return null}catch{return null}}function wt(t){try{return hp(`${t} --version`,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function ha(){let t=Ne("bun");return{javascript:t?"bun":"node",typescript:t?"bun":Ne("tsx")?"tsx":Ne("ts-node")?"ts-node":null,python:Ne("python3")?"python3":Ne("python")?"python":null,shell:nv?BO()??(Ne("sh")?"sh":Ne("powershell")?"powershell":"cmd.exe"):Ne("bash")?"bash":"sh",ruby:Ne("ruby")?"ruby":null,go:Ne("go")?"go":null,rust:Ne("rustc")?"rustc":null,php:Ne("php")?"php":null,perl:Ne("perl")?"perl":null,r:Ne("Rscript")?"Rscript":Ne("r")?"r":null,elixir:Ne("elixir")?"elixir":null}}function gp(){return Ne("bun")}function ov(t){let e=[],r=t.javascript==="bun";return e.push(` JavaScript: ${t.javascript} (${wt(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${wt(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${wt(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${wt(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${wt(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${wt(t.go)})`),t.rust&&e.push(` Rust: ${t.rust} (${wt(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${wt(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${wt(t.perl)})`),t.r&&e.push(` R: ${t.r} (${wt(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${wt(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
78
+ `)}function sv(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 iv(t,e,r){switch(e){case"javascript":return t.javascript==="bun"?["bun","run",r]:["node",r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript==="bun"?["bun","run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}function ls(t,e){if(Buffer.byteLength(t)<=e)return t;let r=t.split(`
79
79
  `),n=Math.floor(e*.6),o=e-n,s=[],i=0;for(let f of r){let m=Buffer.byteLength(f)+1;if(i+m>n)break;s.push(f),i+=m}let a=[],c=0;for(let f=r.length-1;f>=s.length;f--){let m=Buffer.byteLength(r[f])+1;if(c+m>o)break;a.unshift(r[f]),c+=m}let u=r.length-s.length-a.length,l=Buffer.byteLength(t)-i-c,d=`
80
80
 
81
81
  ... [${u} lines / ${(l/1024).toFixed(1)}KB truncated \u2014 showing first ${s.length} + last ${a.length} lines] ...
82
82
 
83
83
  `;return s.join(`
84
84
  `)+d+a.join(`
85
- `)}var Et=process.platform==="win32";function hp(t){if(Et&&t.pid)try{sv(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var ha=class{#e;#t;#r;#n;#o=new Set;constructor(e){this.#e=e?.maxOutputBytes??102400,this.#t=e?.hardCapBytes??100*1024*1024,this.#r=e?.projectRoot??process.cwd(),this.#n=e?.runtimes??fa()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill(Et?e:-e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=ZO(ma(HO(),"ctx-mode-"));try{let a=this.#i(i,n,r),c=tv(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#a(a,i,o);let u=r==="shell"?this.#r:i,l=await this.#s(c,u,o,s);if(!l.backgrounded)try{nv(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{nv(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=UO(this.#r,r),a=this.#u(i,n,o);return this.execute({language:n,code:a,timeout:s})}#i(e,r,n){let o={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};n==="go"&&!r.includes("package ")&&(r=`package main
85
+ `)}var Et=process.platform==="win32";function _p(t){if(Et&&t.pid)try{lv(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var _a=class{#e;#t;#r;#n;#o=new Set;constructor(e){this.#e=e?.maxOutputBytes??102400,this.#t=e?.hardCapBytes??100*1024*1024,this.#r=e?.projectRoot??process.cwd(),this.#n=e?.runtimes??ha()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill(Et?e:-e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=KO(ga(GO(),"ctx-mode-"));try{let a=this.#i(i,n,r),c=iv(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#a(a,i,o);let u=r==="shell"?this.#r:i,l=await this.#s(c,u,o,s);if(!l.backgrounded)try{cv(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{cv(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=JO(this.#r,r),a=this.#u(i,n,o);return this.execute({language:n,code:a,timeout:s})}#i(e,r,n){let o={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};n==="go"&&!r.includes("package ")&&(r=`package main
86
86
 
87
87
  import "fmt"
88
88
 
@@ -90,12 +90,12 @@ func main() {
90
90
  ${r}
91
91
  }
92
92
  `),n==="php"&&!r.trimStart().startsWith("<?")&&(r=`<?php
93
- ${r}`),n==="elixir"&&ov(ma(this.#r,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(ma(this.#r,"_build/dev/lib"))}, "*/ebin"))
93
+ ${r}`),n==="elixir"&&uv(ga(this.#r,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(ga(this.#r,"_build/dev/lib"))}, "*/ebin"))
94
94
  |> Enum.each(&Code.prepend_path/1)
95
95
 
96
- ${r}`);let s=ma(e,`script.${o[n]}`);return n==="shell"?rv(s,r,{encoding:"utf-8",mode:448}):rv(s,r,"utf-8"),s}async#a(e,r,n){let o=Et?".exe":"",s=e.replace(/\.rs$/,"")+o;try{sv(`rustc ${e} -o ${s}`,{cwd:r,timeout:Math.min(n,6e4),encoding:"utf-8",stdio:["pipe","pipe","pipe"]})}catch(i){return{stdout:"",stderr:`Compilation failed:
97
- ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#s([s],r,n)}async#s(e,r,n,o=!1){return new Promise(s=>{let i=Et&&["tsx","ts-node","elixir"].includes(e[0]),a=e[0],c;Et&&e.length===2&&e[1]?c=[e[1].replace(/\\/g,"/")]:c=Et?e.slice(1).map(y=>y.replace(/\\/g,"/")):e.slice(1);let u=LO(a,c,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(r),shell:i,detached:!Et}),l=!1,d=!1,f=setTimeout(()=>{if(l=!0,o){d=!0,u.pid&&this.#o.add(u.pid),u.unref(),u.stdout.destroy(),u.stderr.destroy();let y=Buffer.concat(m).toString("utf-8"),x=Buffer.concat(p).toString("utf-8"),k=this.#e;s({stdout:cs(y,k),stderr:cs(x,k),exitCode:0,timedOut:!0,backgrounded:!0})}else hp(u)},n),m=[],p=[],h=0,g=!1;u.stdout.on("data",y=>{h+=y.length,h<=this.#t?m.push(y):g||(g=!0,hp(u))}),u.stderr.on("data",y=>{h+=y.length,h<=this.#t?p.push(y):g||(g=!0,hp(u))}),u.on("close",y=>{if(clearTimeout(f),d)return;let x=Buffer.concat(m).toString("utf-8"),k=Buffer.concat(p).toString("utf-8");g&&(k+=`
98
- [output capped at ${(this.#t/1024/1024).toFixed(0)}MB \u2014 process killed]`);let w=this.#e,R=cs(x,w),ie=cs(k,w);s({stdout:R,stderr:ie,exitCode:l?1:y??1,timedOut:l})}),u.on("error",y=>{clearTimeout(f),!d&&s({stdout:"",stderr:y.message,exitCode:1,timedOut:!1})})})}#c(e){let r=process.env.HOME??process.env.USERPROFILE??e,n=new Set(["BASH_ENV","ENV","PROMPT_COMMAND","PS4","SHELLOPTS","BASHOPTS","CDPATH","INPUTRC","BASH_XTRACEFD","NODE_OPTIONS","NODE_PATH","PYTHONSTARTUP","PYTHONHOME","PYTHONWARNINGS","PYTHONBREAKPOINT","PYTHONINSPECT","RUBYOPT","RUBYLIB","PERL5OPT","PERL5LIB","PERLLIB","PERL5DB","ERL_AFLAGS","ERL_FLAGS","ELIXIR_ERL_OPTIONS","ERL_LIBS","GOFLAGS","CGO_CFLAGS","CGO_LDFLAGS","RUSTC","RUSTC_WRAPPER","RUSTC_WORKSPACE_WRAPPER","CARGO_BUILD_RUSTC","CARGO_BUILD_RUSTC_WRAPPER","RUSTFLAGS","PHPRC","PHP_INI_SCAN_DIR","R_PROFILE","R_PROFILE_USER","R_HOME","LD_PRELOAD","DYLD_INSERT_LIBRARIES","OPENSSL_CONF","OPENSSL_ENGINES","CC","CXX","AR","GIT_TEMPLATE_DIR","GIT_CONFIG_GLOBAL","GIT_CONFIG_SYSTEM","GIT_EXEC_PATH","GIT_SSH","GIT_SSH_COMMAND","GIT_ASKPASS"]),o={};for(let[s,i]of Object.entries(process.env))i!==void 0&&!n.has(s)&&!s.startsWith("BASH_FUNC_")&&(o[s]=i);if(o.TMPDIR=e,o.HOME=r,o.LANG="en_US.UTF-8",o.PYTHONDONTWRITEBYTECODE="1",o.PYTHONUNBUFFERED="1",o.PYTHONUTF8="1",o.NO_COLOR="1",Et&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=Et?"":"/usr/local/bin:/usr/bin:/bin"),Et){o.MSYS_NO_PATHCONV="1",o.MSYS2_ARG_CONV_EXCL="*";let s="C:\\Program Files\\Git\\usr\\bin",i="C:\\Program Files\\Git\\bin";o.PATH.includes(s)||(o.PATH=`${s};${i};${o.PATH}`)}if(!o.SSL_CERT_FILE){let s=Et?[]:["/etc/ssl/cert.pem","/etc/ssl/certs/ca-certificates.crt","/etc/pki/tls/certs/ca-bundle.crt","/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"];for(let i of s)if(ov(i)){o.SSL_CERT_FILE=i;break}}return o}#u(e,r,n){let o=JSON.stringify(e);switch(r){case"javascript":case"typescript":return`const FILE_CONTENT_PATH = ${o};
96
+ ${r}`);let s=ga(e,`script.${o[n]}`);return n==="shell"?av(s,r,{encoding:"utf-8",mode:448}):av(s,r,"utf-8"),s}async#a(e,r,n){let o=Et?".exe":"",s=e.replace(/\.rs$/,"")+o;try{lv(`rustc ${e} -o ${s}`,{cwd:r,timeout:Math.min(n,6e4),encoding:"utf-8",stdio:["pipe","pipe","pipe"]})}catch(i){return{stdout:"",stderr:`Compilation failed:
97
+ ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#s([s],r,n)}async#s(e,r,n,o=!1){return new Promise(s=>{let i=Et&&["tsx","ts-node","elixir"].includes(e[0]),a=e[0],c;Et&&e.length===2&&e[1]?c=[e[1].replace(/\\/g,"/")]:c=Et?e.slice(1).map(y=>y.replace(/\\/g,"/")):e.slice(1);let u=VO(a,c,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(r),shell:i,detached:!Et}),l=!1,d=!1,f=setTimeout(()=>{if(l=!0,o){d=!0,u.pid&&this.#o.add(u.pid),u.unref(),u.stdout.destroy(),u.stderr.destroy();let y=Buffer.concat(m).toString("utf-8"),x=Buffer.concat(p).toString("utf-8"),S=this.#e;s({stdout:ls(y,S),stderr:ls(x,S),exitCode:0,timedOut:!0,backgrounded:!0})}else _p(u)},n),m=[],p=[],h=0,g=!1;u.stdout.on("data",y=>{h+=y.length,h<=this.#t?m.push(y):g||(g=!0,_p(u))}),u.stderr.on("data",y=>{h+=y.length,h<=this.#t?p.push(y):g||(g=!0,_p(u))}),u.on("close",y=>{if(clearTimeout(f),d)return;let x=Buffer.concat(m).toString("utf-8"),S=Buffer.concat(p).toString("utf-8");g&&(S+=`
98
+ [output capped at ${(this.#t/1024/1024).toFixed(0)}MB \u2014 process killed]`);let w=this.#e,R=ls(x,w),ie=ls(S,w);s({stdout:R,stderr:ie,exitCode:l?1:y??1,timedOut:l})}),u.on("error",y=>{clearTimeout(f),!d&&s({stdout:"",stderr:y.message,exitCode:1,timedOut:!1})})})}#c(e){let r=process.env.HOME??process.env.USERPROFILE??e,n=new Set(["BASH_ENV","ENV","PROMPT_COMMAND","PS4","SHELLOPTS","BASHOPTS","CDPATH","INPUTRC","BASH_XTRACEFD","NODE_OPTIONS","NODE_PATH","PYTHONSTARTUP","PYTHONHOME","PYTHONWARNINGS","PYTHONBREAKPOINT","PYTHONINSPECT","RUBYOPT","RUBYLIB","PERL5OPT","PERL5LIB","PERLLIB","PERL5DB","ERL_AFLAGS","ERL_FLAGS","ELIXIR_ERL_OPTIONS","ERL_LIBS","GOFLAGS","CGO_CFLAGS","CGO_LDFLAGS","RUSTC","RUSTC_WRAPPER","RUSTC_WORKSPACE_WRAPPER","CARGO_BUILD_RUSTC","CARGO_BUILD_RUSTC_WRAPPER","RUSTFLAGS","PHPRC","PHP_INI_SCAN_DIR","R_PROFILE","R_PROFILE_USER","R_HOME","LD_PRELOAD","DYLD_INSERT_LIBRARIES","OPENSSL_CONF","OPENSSL_ENGINES","CC","CXX","AR","GIT_TEMPLATE_DIR","GIT_CONFIG_GLOBAL","GIT_CONFIG_SYSTEM","GIT_EXEC_PATH","GIT_SSH","GIT_SSH_COMMAND","GIT_ASKPASS"]),o={};for(let[s,i]of Object.entries(process.env))i!==void 0&&!n.has(s)&&!s.startsWith("BASH_FUNC_")&&(o[s]=i);if(o.TMPDIR=e,o.HOME=r,o.LANG="en_US.UTF-8",o.PYTHONDONTWRITEBYTECODE="1",o.PYTHONUNBUFFERED="1",o.PYTHONUTF8="1",o.NO_COLOR="1",Et&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=Et?"":"/usr/local/bin:/usr/bin:/bin"),Et){o.MSYS_NO_PATHCONV="1",o.MSYS2_ARG_CONV_EXCL="*";let s="C:\\Program Files\\Git\\usr\\bin",i="C:\\Program Files\\Git\\bin";o.PATH.includes(s)||(o.PATH=`${s};${i};${o.PATH}`)}if(!o.SSL_CERT_FILE){let s=Et?[]:["/etc/ssl/cert.pem","/etc/ssl/certs/ca-certificates.crt","/etc/pki/tls/certs/ca-bundle.crt","/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"];for(let i of s)if(uv(i)){o.SSL_CERT_FILE=i;break}}return o}#u(e,r,n){let o=JSON.stringify(e);switch(r){case"javascript":case"typescript":return`const FILE_CONTENT_PATH = ${o};
99
99
  const file_path = FILE_CONTENT_PATH;
100
100
  const FILE_CONTENT = require("fs").readFileSync(FILE_CONTENT_PATH, "utf-8");
101
101
  ${n}`;case"python":return`FILE_CONTENT_PATH = ${o}
@@ -150,7 +150,7 @@ FILE_CONTENT <- paste(FILE_CONTENT, collapse="\\n")
150
150
  ${n}`;case"elixir":return`file_content_path = ${o}
151
151
  file_path = file_content_path
152
152
  file_content = File.read!(file_content_path)
153
- ${n}`}}};import{createRequire as qO}from"node:module";var gp=class{#e;constructor(e){this.#e=e}pragma(e){let n=this.#e.prepare(`PRAGMA ${e}`).all();if(!n||n.length===0)return;if(n.length>1)return n;let o=Object.values(n[0]);return o.length===1?o[0]:n[0]}exec(e){let r="",n=null;for(let s=0;s<e.length;s++){let i=e[s];if(n)r+=i,i===n&&(n=null);else if(i==="'"||i==='"')r+=i,n=i;else if(i===";"){let a=r.trim();a&&this.#e.prepare(a).run(),r=""}else r+=i}let o=r.trim();return o&&this.#e.prepare(o).run(),this}prepare(e){let r=this.#e.prepare(e);return{run:(...n)=>r.run(...n),get:(...n)=>{let o=r.get(...n);return o===null?void 0:o},all:(...n)=>r.all(...n),iterate:(...n)=>r.iterate(...n)}}transaction(e){return this.#e.transaction(e)}close(){this.#e.close()}},ga=null;function _a(){if(!ga){let t=qO(import.meta.url);try{ga=t("better-sqlite3")}catch{if(!globalThis.Bun)throw new Error("better-sqlite3 failed to load and Bun runtime not detected");let e=["bun","sqlite"].join(":"),r=t(e).Database;ga=function(o,s){let i=new r(o,{readonly:s?.readonly,create:!0});return new gp(i)}}}return ga}function iv(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL")}import{readFileSync as FO,readdirSync as BO,unlinkSync as uv}from"node:fs";import{tmpdir as lv}from"node:os";import{join as dv}from"node:path";var av=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 VO(t,e="AND"){let r=t.replace(/['"(){}[\]*:^~]/g," ").split(/\s+/).filter(n=>n.length>0&&!["AND","OR","NOT","NEAR"].includes(n.toUpperCase()));return r.length===0?'""':r.map(n=>`"${n}"`).join(e==="OR"?" OR ":" ")}function KO(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=r.split(/\s+/).filter(o=>o.length>=3);return n.length===0?"":n.map(o=>`"${o}"`).join(e==="OR"?" OR ":" ")}function JO(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 GO(t){return t<=4?1:t<=12?2:3}var cv=4096;function pv(){let t=lv(),e=0;try{let r=BO(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=dv(t,n);for(let a of["","-wal","-shm"])try{uv(i+a)}catch{}e++}}}catch{}return e}function WO(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function YO(t){if(t.length===0)return 1/0;if(t.length===1)return 0;let e=t.map(o=>[...o].sort((s,i)=>s-i)),r=new Array(e.length).fill(0),n=1/0;for(;;){let o=1/0,s=-1/0,i=0;for(let c=0;c<e.length;c++){let u=e[c][r[c]];u<o&&(o=u,i=c),u>s&&(s=u)}let a=s-o;if(a<n&&(n=a),r[i]++,r[i]>=e[i].length)break}return n}var ya=class{#e;#t;#r;#n;#o;#i;#a;#s;#c;#u;#d;#p;#f;#m;#h;#g;#_;#y;#v;#x;#k;#S;#b;#w;constructor(e){let r=_a();this.#t=e??dv(lv(),`context-mode-${process.pid}.db`),this.#e=new r(this.#t,{timeout:5e3}),iv(this.#e),this.#P(),this.#R()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{uv(this.#t+e)}catch{}}#P(){this.#e.exec(`
153
+ ${n}`}}};import{createRequire as WO}from"node:module";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()}},ya=null;function va(){if(!ya){let t=WO(import.meta.url);try{ya=t("better-sqlite3")}catch{if(!globalThis.Bun)throw new Error("better-sqlite3 failed to load and Bun runtime not detected");let e=["bun","sqlite"].join(":"),r=t(e).Database;ya=function(o,s){let i=new r(o,{readonly:s?.readonly,create:!0});return new yp(i)}}}return ya}function dv(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL")}function pv(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}import{readFileSync as YO,readdirSync as hv,unlinkSync as vp,existsSync as XO,statSync as gv}from"node:fs";import{tmpdir as _v}from"node:os";import{join as xp}from"node:path";var fv=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 QO(t,e="AND"){let r=t.replace(/['"(){}[\]*:^~]/g," ").split(/\s+/).filter(n=>n.length>0&&!["AND","OR","NOT","NEAR"].includes(n.toUpperCase()));return r.length===0?'""':r.map(n=>`"${n}"`).join(e==="OR"?" OR ":" ")}function eC(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=r.split(/\s+/).filter(o=>o.length>=3);return n.length===0?"":n.map(o=>`"${o}"`).join(e==="OR"?" OR ":" ")}function tC(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 rC(t){return t<=4?1:t<=12?2:3}var mv=4096;function Sp(){let t=_v(),e=0;try{let r=hv(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=xp(t,n);for(let a of["","-wal","-shm"])try{vp(i+a)}catch{}e++}}}catch{}return e}function yv(t,e){let r=0;try{if(!XO(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=hv(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=xp(t,s);if(gv(i).mtimeMs<n){for(let c of["","-wal","-shm"])try{vp(i+c)}catch{}r++}}catch{}}catch{}return r}function nC(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function oC(t){if(t.length===0)return 1/0;if(t.length===1)return 0;let e=t.map(o=>[...o].sort((s,i)=>s-i)),r=new Array(e.length).fill(0),n=1/0;for(;;){let o=1/0,s=-1/0,i=0;for(let c=0;c<e.length;c++){let u=e[c][r[c]];u<o&&(o=u,i=c),u>s&&(s=u)}let a=s-o;if(a<n&&(n=a),r[i]++,r[i]>=e[i].length)break}return n}var xa=class{#e;#t;#r;#n;#o;#i;#a;#s;#c;#u;#d;#p;#f;#m;#h;#g;#_;#y;#v;#x;#S;#k;#b;#w;#E;constructor(e){let r=va();this.#t=e??xp(_v(),`context-mode-${process.pid}.db`),this.#e=new r(this.#t,{timeout:5e3}),dv(this.#e),this.#R(),this.#O()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{vp(this.#t+e)}catch{}}#R(){this.#e.exec(`
154
154
  CREATE TABLE IF NOT EXISTS sources (
155
155
  id INTEGER PRIMARY KEY AUTOINCREMENT,
156
156
  label TEXT NOT NULL,
@@ -178,7 +178,7 @@ ${n}`}}};import{createRequire as qO}from"node:module";var gp=class{#e;constructo
178
178
  CREATE TABLE IF NOT EXISTS vocabulary (
179
179
  word TEXT PRIMARY KEY
180
180
  );
181
- `)}#R(){this.#r=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, 0, 0)"),this.#n=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, ?, ?)"),this.#o=this.#e.prepare("INSERT INTO chunks (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#i=this.#e.prepare("INSERT INTO chunks_trigram (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#a=this.#e.prepare("INSERT OR IGNORE INTO vocabulary (word) VALUES (?)"),this.#s=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#c=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#u=this.#e.prepare("DELETE FROM sources WHERE label = ?"),this.#d=this.#e.prepare(`
181
+ `)}#O(){this.#r=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, 0, 0)"),this.#n=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, ?, ?)"),this.#o=this.#e.prepare("INSERT INTO chunks (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#i=this.#e.prepare("INSERT INTO chunks_trigram (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#a=this.#e.prepare("INSERT OR IGNORE INTO vocabulary (word) VALUES (?)"),this.#s=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#c=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#u=this.#e.prepare("DELETE FROM sources WHERE label = ?"),this.#d=this.#e.prepare(`
182
182
  SELECT
183
183
  chunks.title,
184
184
  chunks.content,
@@ -282,40 +282,40 @@ ${n}`}}};import{createRequire as qO}from"node:module";var gp=class{#e;constructo
282
282
  WHERE chunks_trigram MATCH ? AND sources.label LIKE ? AND chunks_trigram.content_type = ?
283
283
  ORDER BY rank
284
284
  LIMIT ?
285
- `),this.#h=this.#e.prepare("SELECT word FROM vocabulary WHERE length(word) BETWEEN ? AND ?"),this.#x=this.#e.prepare("SELECT label, chunk_count as chunkCount FROM sources ORDER BY id DESC"),this.#k=this.#e.prepare(`SELECT c.title, c.content, c.content_type, s.label
285
+ `),this.#h=this.#e.prepare("SELECT word FROM vocabulary WHERE length(word) BETWEEN ? AND ?"),this.#x=this.#e.prepare("SELECT label, chunk_count as chunkCount FROM sources ORDER BY id DESC"),this.#S=this.#e.prepare(`SELECT c.title, c.content, c.content_type, s.label
286
286
  FROM chunks c
287
287
  JOIN sources s ON s.id = c.source_id
288
288
  WHERE c.source_id = ?
289
- ORDER BY c.rowid`),this.#S=this.#e.prepare("SELECT chunk_count FROM sources WHERE id = ?"),this.#b=this.#e.prepare("SELECT content FROM chunks WHERE source_id = ?"),this.#w=this.#e.prepare(`
289
+ ORDER BY c.rowid`),this.#k=this.#e.prepare("SELECT chunk_count FROM sources WHERE id = ?"),this.#b=this.#e.prepare("SELECT content FROM chunks WHERE source_id = ?"),this.#E=this.#e.prepare("SELECT label, chunk_count, code_chunk_count, indexed_at FROM sources WHERE label = ?"),this.#w=this.#e.prepare(`
290
290
  SELECT
291
291
  (SELECT COUNT(*) FROM sources) AS sources,
292
292
  (SELECT COUNT(*) FROM chunks) AS chunks,
293
293
  (SELECT COUNT(*) FROM chunks WHERE content_type = 'code') AS codeChunks
294
- `)}index(e){let{content:r,path:n,source:o}=e;if(!r&&!n)throw new Error("Either content or path must be provided");let s=r??FO(n,"utf-8"),i=o??n??"untitled",a=this.#C(s);return this.#l(a,i,s)}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#l([],r,"");let o=this.#I(e,n);return this.#l(o.map(s=>({...s,hasCode:!1})),r,e)}indexJSON(e,r,n=cv){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.#$(o,[],s,n),s.length===0?this.indexPlainText(e,r):this.#l(s,r,e)}#l(e,r,n){let o=e.filter(a=>a.hasCode).length,i=this.#e.transaction(()=>{if(this.#s.run(r),this.#c.run(r),this.#u.run(r),e.length===0){let u=this.#r.run(r);return Number(u.lastInsertRowid)}let a=this.#n.run(r,e.length,o),c=Number(a.lastInsertRowid);for(let u of e){let l=u.hasCode?"code":"prose";this.#o.run(u.title,u.content,c,l),this.#i.run(u.title,u.content,c,l)}return c})();return n&&this.#O(n),{sourceId:i,label:r,totalChunks:e.length,codeChunks:o}}search(e,r=3,n,o="AND",s){let i=VO(e,o),a,c;return n&&s?(a=this.#_,c=[i,`%${n}%`,s,r]):n?(a=this.#p,c=[i,`%${n}%`,r]):s?(a=this.#g,c=[i,s,r]):(a=this.#d,c=[i,r]),a.all(...c).map(l=>({title:l.title,content:l.content,source:l.label,rank:l.rank,contentType:l.content_type,highlighted:l.highlighted}))}searchTrigram(e,r=3,n,o="AND",s){let i=KO(e,o);if(!i)return[];let a,c;return n&&s?(a=this.#v,c=[i,`%${n}%`,s,r]):n?(a=this.#m,c=[i,`%${n}%`,r]):s?(a=this.#y,c=[i,s,r]):(a=this.#f,c=[i,r]),a.all(...c).map(l=>({title:l.title,content:l.content,source:l.label,rank:l.rank,contentType:l.content_type,highlighted:l.highlighted}))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;let n=GO(r.length),o=this.#h.all(r.length-n,r.length+n),s=null,i=n+1;for(let{word:a}of o){if(a===r)return null;let c=JO(r,a);c<i&&(i=c,s=a)}return i<=n?s:null}#E(e,r,n,o){let i=Math.max(r*2,10),a=this.search(e,i,n,"OR",o),c=this.searchTrigram(e,i,n,"OR",o),u=new Map,l=d=>`${d.source}::${d.title}`;for(let[d,f]of a.entries()){let m=l(f),p=u.get(m);p?p.score+=1/(60+d+1):u.set(m,{result:f,score:1/(60+d+1)})}for(let[d,f]of c.entries()){let m=l(f),p=u.get(m);p?p.score+=1/(60+d+1):u.set(m,{result:f,score:1/(60+d+1)})}return Array.from(u.values()).sort((d,f)=>f.score-d.score).slice(0,r).map(({result:d,score:f})=>({...d,rank:-f}))}#T(e,r){let n=r.toLowerCase().split(/\s+/).filter(o=>o.length>=2);return n.length<2?e:e.map(o=>{let s=o.content.toLowerCase(),i=n.map(u=>WO(s,u));if(i.some(u=>u.length===0))return{result:o,boost:0};let c=1/(1+YO(i)/Math.max(s.length,1));return{result:o,boost:c}}).sort((o,s)=>s.boost-o.boost||o.result.rank-s.result.rank).map(({result:o})=>o)}searchWithFallback(e,r=3,n,o){let s=this.#E(e,r,n,o);if(s.length>0)return this.#T(s,e).map(d=>({...d,matchLayer:"rrf"}));let i=e.toLowerCase().trim().split(/\s+/).filter(l=>l.length>=3),a=i.join(" "),u=i.map(l=>this.fuzzyCorrect(l)??l).join(" ");if(u!==a){let l=this.#E(u,r,n,o);if(l.length>0)return this.#T(l,u).map(f=>({...f,matchLayer:"rrf-fuzzy"}))}return[]}listSources(){return this.#x.all()}getChunksBySource(e){return this.#k.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.#S.get(e);if(!n||n.chunk_count<3)return[];let o=n.chunk_count,s=2,i=Math.max(3,Math.ceil(o*.4)),a=new Map;for(let l of this.#b.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(f=>f.length>=3&&!av.has(f)));for(let f of d)a.set(f,(a.get(f)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let f=Math.log(o/d),m=Math.min(l.length/20,.5),p=/[_]/.test(l),h=l.length>=12,g=p?1.5:h?.8:0;return{word:l,score:f+m+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#w.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}close(){this.#e.close()}#O(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(o=>o.length>=3&&!av.has(o)),n=[...new Set(r)];this.#e.transaction(()=>{for(let o of n)this.#a.run(o)})()}#C(e,r=cv){let n=[],o=e.split(`
294
+ `)}index(e){let{content:r,path:n,source:o}=e;if(!r&&!n)throw new Error("Either content or path must be provided");let s=r??YO(n,"utf-8"),i=o??n??"untitled",a=this.#I(s);return this.#l(a,i,s)}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#l([],r,"");let o=this.#z(e,n);return this.#l(o.map(s=>({...s,hasCode:!1})),r,e)}indexJSON(e,r,n=mv){if(!e||e.trim().length===0)return this.indexPlainText("",r);let o;try{o=JSON.parse(e)}catch{return this.indexPlainText(e,r)}let s=[];return this.#P(o,[],s,n),s.length===0?this.indexPlainText(e,r):this.#l(s,r,e)}#l(e,r,n){let o=e.filter(a=>a.hasCode).length,i=this.#e.transaction(()=>{if(this.#s.run(r),this.#c.run(r),this.#u.run(r),e.length===0){let u=this.#r.run(r);return Number(u.lastInsertRowid)}let a=this.#n.run(r,e.length,o),c=Number(a.lastInsertRowid);for(let u of e){let l=u.hasCode?"code":"prose";this.#o.run(u.title,u.content,c,l),this.#i.run(u.title,u.content,c,l)}return c})();return n&&this.#C(n),{sourceId:i,label:r,totalChunks:e.length,codeChunks:o}}search(e,r=3,n,o="AND",s){let i=QO(e,o),a,c;return n&&s?(a=this.#_,c=[i,`%${n}%`,s,r]):n?(a=this.#p,c=[i,`%${n}%`,r]):s?(a=this.#g,c=[i,s,r]):(a=this.#d,c=[i,r]),a.all(...c).map(l=>({title:l.title,content:l.content,source:l.label,rank:l.rank,contentType:l.content_type,highlighted:l.highlighted}))}searchTrigram(e,r=3,n,o="AND",s){let i=eC(e,o);if(!i)return[];let a,c;return n&&s?(a=this.#v,c=[i,`%${n}%`,s,r]):n?(a=this.#m,c=[i,`%${n}%`,r]):s?(a=this.#y,c=[i,s,r]):(a=this.#f,c=[i,r]),a.all(...c).map(l=>({title:l.title,content:l.content,source:l.label,rank:l.rank,contentType:l.content_type,highlighted:l.highlighted}))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;let n=rC(r.length),o=this.#h.all(r.length-n,r.length+n),s=null,i=n+1;for(let{word:a}of o){if(a===r)return null;let c=tC(r,a);c<i&&(i=c,s=a)}return i<=n?s:null}#T(e,r,n,o){let i=Math.max(r*2,10),a=this.search(e,i,n,"OR",o),c=this.searchTrigram(e,i,n,"OR",o),u=new Map,l=d=>`${d.source}::${d.title}`;for(let[d,f]of a.entries()){let m=l(f),p=u.get(m);p?p.score+=1/(60+d+1):u.set(m,{result:f,score:1/(60+d+1)})}for(let[d,f]of c.entries()){let m=l(f),p=u.get(m);p?p.score+=1/(60+d+1):u.set(m,{result:f,score:1/(60+d+1)})}return Array.from(u.values()).sort((d,f)=>f.score-d.score).slice(0,r).map(({result:d,score:f})=>({...d,rank:-f}))}#$(e,r){let n=r.toLowerCase().split(/\s+/).filter(o=>o.length>=2);return n.length<2?e:e.map(o=>{let s=o.content.toLowerCase(),i=n.map(u=>nC(s,u));if(i.some(u=>u.length===0))return{result:o,boost:0};let c=1/(1+oC(i)/Math.max(s.length,1));return{result:o,boost:c}}).sort((o,s)=>s.boost-o.boost||o.result.rank-s.result.rank).map(({result:o})=>o)}searchWithFallback(e,r=3,n,o){let s=this.#T(e,r,n,o);if(s.length>0)return this.#$(s,e).map(d=>({...d,matchLayer:"rrf"}));let i=e.toLowerCase().trim().split(/\s+/).filter(l=>l.length>=3),a=i.join(" "),u=i.map(l=>this.fuzzyCorrect(l)??l).join(" ");if(u!==a){let l=this.#T(u,r,n,o);if(l.length>0)return this.#$(l,u).map(f=>({...f,matchLayer:"rrf-fuzzy"}))}return[]}getSourceMeta(e){let r=this.#E.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at}:null}listSources(){return this.#x.all()}getChunksBySource(e){return this.#S.all(e).map(n=>({title:n.title,content:n.content,source:n.label,rank:0,contentType:n.content_type}))}getDistinctiveTerms(e,r=40){let n=this.#k.get(e);if(!n||n.chunk_count<3)return[];let o=n.chunk_count,s=2,i=Math.max(3,Math.ceil(o*.4)),a=new Map;for(let l of this.#b.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(f=>f.length>=3&&!fv.has(f)));for(let f of d)a.set(f,(a.get(f)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let f=Math.log(o/d),m=Math.min(l.length/20,.5),p=/[_]/.test(l),h=l.length>=12,g=p?1.5:h?.8:0;return{word:l,score:f+m+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#w.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}cleanupStaleSources(e){let r=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),n=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),o=this.#e.prepare("DELETE FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days')");return this.#e.transaction(a=>(r.run(a),n.run(a),o.run(a)))(e).changes}getDBSizeBytes(){try{return gv(this.#t).size}catch{return 0}}close(){pv(this.#e)}#C(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(o=>o.length>=3&&!fv.has(o)),n=[...new Set(r)];this.#e.transaction(()=>{for(let o of n)this.#a.run(o)})()}#I(e,r=mv){let n=[],o=e.split(`
295
295
  `),s=[],i=[],a="",c=()=>{let l=i.join(`
296
- `).trim();if(l.length===0)return;let d=this.#j(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(`
296
+ `).trim();if(l.length===0)return;let d=this.#M(s,a),f=i.some(y=>/^`{3,}/.test(y));if(Buffer.byteLength(l)<=r){n.push({title:d,content:l,hasCode:f}),i=[];return}let m=l.split(/\n\n+/),p=[],h=1,g=()=>{if(p.length===0)return;let y=p.join(`
297
297
 
298
298
  `).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(`
299
299
 
300
- `);Buffer.byteLength(x)>r&&p.length>1&&(p.pop(),g(),p=[y])}g(),i=[]},u=0;for(;u<o.length;){let l=o[u];if(/^[-_*]{3,}\s*$/.test(l)){c(),u++;continue}let d=l.match(/^(#{1,4})\s+(.+)$/);if(d){c();let 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}#I(e,r){let n=e.split(/\n\s*\n/);if(n.length>=3&&n.length<=200&&n.every(c=>Buffer.byteLength(c)<5e3))return n.map((c,u)=>{let l=c.trim();return{title:l.split(`
300
+ `);Buffer.byteLength(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}#z(e,r){let n=e.split(/\n\s*\n/);if(n.length>=3&&n.length<=200&&n.every(c=>Buffer.byteLength(c)<5e3))return n.map((c,u)=>{let l=c.trim();return{title:l.split(`
301
301
  `)[0].slice(0,80)||`Section ${u+1}`,content:l}}).filter(c=>c.content.length>0);let o=e.split(`
302
302
  `);if(o.length<=r)return[{title:"Output",content:e}];let s=[],a=Math.max(r-2,1);for(let c=0;c<o.length;c+=a){let u=o.slice(c,c+r);if(u.length===0)break;let l=c+1,d=Math.min(c+u.length,o.length),f=u[0]?.trim().slice(0,80);s.push({title:f||`Lines ${l}-${d}`,content:u.join(`
303
- `)})}return s}#$(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.#$(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#A(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#z(e){if(e.length===0)return null;let r=e[0];if(typeof r!="object"||r===null||Array.isArray(r))return null;let n=["id","name","title","path","slug","key","label"],o=r;for(let s of n)if(s in o&&(typeof o[s]=="string"||typeof o[s]=="number"))return s;return null}#N(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])}`}#A(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#z(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#N(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)}#j(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}};import{readFileSync as mv}from"node:fs";import{resolve as Fn}from"node:path";import{homedir as hv}from"node:os";function gv(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function XO(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function QO(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function fv(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function eC(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=QO(o),a=fv(s);r=`^${i}(\\s${a})?$`}else r=`^${fv(t)}$`;return new RegExp(r,e?"i":"")}function tC(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 rC(t,e,r=!1){for(let n of e){let o=gv(n);if(o&&eC(o,r).test(t))return n}return null}function nC(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 _p(t){let e;try{e=mv(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"&&gv(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function yp(t,e){let r=[];if(t){let s=Fn(t,".claude","settings.local.json"),i=_p(s);i&&r.push(i);let a=Fn(t,".claude","settings.json"),c=_p(a);c&&r.push(c)}let n=e??Fn(hv(),".claude","settings.json"),o=_p(n);return o&&r.push(o),r}function _v(t,e,r){let n=[],o=a=>{let c;try{c=mv(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=XO(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(hv(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function vp(t,e,r=process.platform==="win32"){let n=nC(t);for(let o of n)for(let s of e){let i=rC(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function yv(t,e,r=process.platform==="win32"){let n=t.replace(/\\/g,"/");for(let o of e)for(let s of o)if(tC(s,r).test(n))return{denied:!0,matchedPattern:s};return{denied:!1}}var oC={python:[/os\.system\(\s*(['"])(.*?)\1\s*\)/g,/subprocess\.(?:run|call|Popen|check_output|check_call)\(\s*(['"])(.*?)\1/g],javascript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],typescript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],ruby:[/system\(\s*(['"])(.*?)\1/g,/`(.*?)`/g],go:[/exec\.Command\(\s*(['"`])(.*?)\1/g],php:[/shell_exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])system\(\s*(['"`])(.*?)\1/g,/passthru\(\s*(['"`])(.*?)\1/g,/proc_open\(\s*(['"`])(.*?)\1/g],rust:[/Command::new\(\s*(['"`])(.*?)\1/g]};function sC(t){let e=[],r=/subprocess\.(?:run|call|Popen|check_output|check_call)\(\s*\[([^\]]+)\]/g,n;for(;(n=r.exec(t))!==null;){let s=[...n[1].matchAll(/(['"])(.*?)\1/g)].map(i=>i[2]);s.length>0&&e.push(s.join(" "))}return e}function vv(t,e){let r=oC[e];if(!r&&e!=="python")return[];let n=[];if(r)for(let o of r){o.lastIndex=0;let s;for(;(s=o.exec(t))!==null;){let i=s[s.length-1];i&&n.push(i)}}return e==="python"&&n.push(...sC(t)),n}function xp(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}
303
+ `)})}return s}#P(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=JSON.stringify(e,null,2);if(Buffer.byteLength(i)<=o&&!(typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.values(e).some(c=>typeof c=="object"&&c!==null))){n.push({title:s,content:i,hasCode:!0});return}if(typeof e=="object"&&e!==null&&!Array.isArray(e)){let a=Object.entries(e);if(a.length>0){for(let[c,u]of a)this.#P(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#j(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#N(e){if(e.length===0)return null;let r=e[0];if(typeof r!="object"||r===null||Array.isArray(r))return null;let n=["id","name","title","path","slug","key","label"],o=r;for(let s of n)if(s in o&&(typeof o[s]=="string"||typeof o[s]=="number"))return s;return null}#A(e,r,n,o,s){let i=e?`${e} > `:"";if(!s)return r===n?`${i}[${r}]`:`${i}[${r}-${n}]`;let a=c=>String(c[s]);return o.length===1?`${i}${a(o[0])}`:o.length<=3?i+o.map(a).join(", "):`${i}${a(o[0])}\u2026${a(o[o.length-1])}`}#j(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#N(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#A(s,c,l,a,i);n.push({title:d,content:JSON.stringify(a,null,2),hasCode:!0})};for(let l=0;l<e.length;l++){a.push(e[l]);let d=JSON.stringify(a,null,2);Buffer.byteLength(d)>o&&a.length>1&&(a.pop(),u(l-1),a=[e[l]],c=l)}u(c+a.length-1)}#M(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}};import{readFileSync as xv}from"node:fs";import{resolve as Vn}from"node:path";import{homedir as Sv}from"node:os";function kv(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function sC(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function iC(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function vv(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function aC(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=iC(o),a=vv(s);r=`^${i}(\\s${a})?$`}else r=`^${vv(t)}$`;return new RegExp(r,e?"i":"")}function cC(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 uC(t,e,r=!1){for(let n of e){let o=kv(n);if(o&&aC(o,r).test(t))return n}return null}function lC(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 kp(t){let e;try{e=xv(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"&&kv(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function bp(t,e){let r=[];if(t){let s=Vn(t,".claude","settings.local.json"),i=kp(s);i&&r.push(i);let a=Vn(t,".claude","settings.json"),c=kp(a);c&&r.push(c)}let n=e??Vn(Sv(),".claude","settings.json"),o=kp(n);return o&&r.push(o),r}function bv(t,e,r){let n=[],o=a=>{let c;try{c=xv(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=sC(f);m&&m.tool===t&&d.push(m.glob)}return d};if(e){let a=o(Vn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Vn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Vn(Sv(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function wp(t,e,r=process.platform==="win32"){let n=lC(t);for(let o of n)for(let s of e){let i=uC(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function wv(t,e,r=process.platform==="win32"){let n=t.replace(/\\/g,"/");for(let o of e)for(let s of o)if(cC(s,r).test(n))return{denied:!0,matchedPattern:s};return{denied:!1}}var dC={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 pC(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 Ev(t,e){let r=dC[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(...pC(t)),n}function Ep(t){let{language:e,exitCode:r,stdout:n,stderr:o}=t,s=e==="shell"&&r===1&&n.trim().length>0;return{isError:!s,output:s?n:`Exit code: ${r}
304
304
 
305
305
  stdout:
306
306
  ${n}
307
307
 
308
308
  stderr:
309
- ${o}`}}var iC=process.ppid;function aC(){let t=process.ppid;return!(t!==iC||t===0||t===1)}function xv(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??aC,n=!1,o=()=>{n||(n=!0,t.onShutdown())},s=setInterval(()=>{r()||o()},e);s.unref();let i=()=>o();process.stdin.resume(),process.stdin.on("end",i),process.stdin.on("close",i),process.stdin.on("error",i);let a=["SIGTERM","SIGINT"];process.platform!=="win32"&&a.push("SIGHUP");for(let c of a)process.on(c,o);return()=>{n=!0,clearInterval(s),process.stdin.removeListener("end",i),process.stdin.removeListener("close",i),process.stdin.removeListener("error",i);for(let c of a)process.removeListener(c,o)}}import{createHash as cC}from"node:crypto";import{execFileSync as uC}from"node:child_process";function kv(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=uC("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`__${cC("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var oI=ro(Na(import.meta.url)),Nx=(()=>{for(let t of["../package.json","./package.json"]){let e=Ix(oI,t);if(tf(e))try{return JSON.parse(Cx(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
309
+ ${o}`}}var fC=process.ppid;function mC(){let t=process.ppid;return!(t!==fC||t===0||t===1)}function Tv(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??mC,n=!1,o=()=>{n||(n=!0,t.onShutdown())},s=setInterval(()=>{r()||o()},e);s.unref();let i=()=>o();process.stdin.resume(),process.stdin.on("end",i),process.stdin.on("close",i),process.stdin.on("error",i);let a=["SIGTERM","SIGINT"];process.platform!=="win32"&&a.push("SIGHUP");for(let c of a)process.on(c,o);return()=>{n=!0,clearInterval(s),process.stdin.removeListener("end",i),process.stdin.removeListener("close",i),process.stdin.removeListener("error",i);for(let c of a)process.removeListener(c,o)}}import{createHash as hC}from"node:crypto";import{execFileSync as gC}from"node:child_process";function $v(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=gC("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`__${hC("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var uI=no(ja(import.meta.url)),Ux=(()=>{for(let t of["../package.json","./package.json"]){let e=Zx(uI,t);if(Aa(e))try{return JSON.parse(Lx(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
310
310
  `)});process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
311
- `)});var rf=fa(),sI=ev(rf),$t=new la({name:"context-mode",version:Nx}),Ss=new ha({runtimes:rf,projectRoot:process.env.CLAUDE_PROJECT_DIR}),to=null;function iI(t){try{let e=Ca(zx(),".claude","context-mode","sessions");if(!tf(e))return;let r=tI(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=Ca(e,n);try{t.index({path:o,source:"session-events"}),eI(o)}catch{}}}catch{}}function bs(){return to||(to=new ya),iI(to),to}var Fe={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,sessionStart:Date.now()};function J(t,e){let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return Fe.calls[t]=(Fe.calls[t]||0)+1,Fe.bytesReturned[t]=(Fe.bytesReturned[t]||0)+r,e}function wr(t){Fe.bytesIndexed+=t}function nf(t,e){try{let r=yp(process.env.CLAUDE_PROJECT_DIR),n=vp(t,r);if(n.decision==="deny")return J(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function Ax(t,e,r){try{let n=vv(t,e);if(n.length===0)return null;let o=yp(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=vp(s,o);if(i.decision==="deny")return J(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 aI(t,e){try{let r=_v("Read",process.env.CLAUDE_PROJECT_DIR),n=yv(t,r);if(n.denied)return J(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}var cI=sI.join(", "),uI=mp()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",lI="",dI="";function pI(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===lI){for(e.push(r),n++;n<t.length&&t[n]!==dI;)r++,n++;n<t.length&&n++}else r++,n++;return e}function jx(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of pI(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)+`
311
+ `)});var cf=ha(),lI=sv(cf),$t=new pa({name:"context-mode",version:Ux}),Es=new _a({runtimes:cf,projectRoot:process.env.CLAUDE_PROJECT_DIR}),dn=null;function dI(t){try{let e=wr(ws(),".claude","context-mode","sessions");if(!Aa(e))return;let r=Dx(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=wr(e,n);try{t.index({path:o,source:"session-events"}),Mx(o)}catch{}}}catch{}}function pI(){let e=(process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.OPENCLAW_PROJECT_DIR||process.cwd()).replace(/\\/g,"/"),r=af("sha256").update(e).digest("hex").slice(0,16),n=wr(ws(),".context-mode","content");return aI(n,{recursive:!0}),wr(n,`${r}.db`)}function fI(){try{let e=(process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.OPENCLAW_PROJECT_DIR||process.cwd()).replace(/\\/g,"/"),r=af("sha256").update(e).digest("hex").slice(0,16),n=[".claude",".gemini",".cursor",".kiro",".config/opencode",".openclaw"];for(let o of n){let s=wr(ws(),o,"context-mode","sessions");if((Aa(s)?Dx(s):[]).some(a=>a.startsWith(r)&&a.endsWith(".cleanup")))return!0}return!1}catch{return!1}}function oo(){if(!dn){let t=pI();if(fI())for(let e of["","-wal","-shm"])try{Mx(t+e)}catch{}dn=new xa(t);try{let e=wr(ws(),".context-mode","content");yv(e,14),dn.cleanupStaleSources(14)}catch{}Sp()}return dI(dn),dn}var Fe={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,sessionStart:Date.now()};function K(t,e){let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return Fe.calls[t]=(Fe.calls[t]||0)+1,Fe.bytesReturned[t]=(Fe.bytesReturned[t]||0)+r,e}function Er(t){Fe.bytesIndexed+=t}function uf(t,e){try{let r=bp(process.env.CLAUDE_PROJECT_DIR),n=wp(t,r);if(n.decision==="deny")return K(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function Hx(t,e,r){try{let n=Ev(t,e);if(n.length===0)return null;let o=bp(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=wp(s,o);if(i.decision==="deny")return K(r,{content:[{type:"text",text:`Command blocked by security policy: embedded shell command "${s}" matches deny pattern ${i.matchedPattern}`}],isError:!0})}}catch{}return null}function mI(t,e){try{let r=bv("Read",process.env.CLAUDE_PROJECT_DIR),n=wv(t,r);if(n.denied)return K(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}var hI=lI.join(", "),gI=gp()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",_I="",yI="";function vI(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===_I){for(e.push(r),n++;n<t.length&&t[n]!==yI;)r++,n++;n<t.length&&n++}else r++,n++;return e}function qx(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of vI(n))o.push(u);if(o.length===0){let u=e.toLowerCase().split(/\s+/).filter(d=>d.length>2),l=t.toLowerCase();for(let d of u){let f=l.indexOf(d);for(;f!==-1;)o.push(f),f=l.indexOf(d,f+1)}}if(o.length===0)return t.slice(0,r)+`
312
312
  \u2026`;o.sort((u,l)=>u-l);let s=300,i=[];for(let u of o){let l=Math.max(0,u-s),d=Math.min(t.length,u+s);i.length>0&&l<=i[i.length-1][1]?i[i.length-1][1]=d:i.push([l,d])}let a=[],c=0;for(let[u,l]of i){if(c>=r)break;let d=t.slice(u,Math.min(l,u+(r-c)));a.push((u>0?"\u2026":"")+d+(l<t.length?"\u2026":"")),c+=d.length}return a.join(`
313
313
 
314
- `)}$t.registerTool("ctx_execute",{title:"Execute Code",description:`MANDATORY: Use for any command where output exceeds 20 lines. Execute code in a sandboxed subprocess. Only stdout enters context \u2014 raw data stays in the subprocess.${uI} Available: ${cI}.
314
+ `)}$t.registerTool("ctx_execute",{title:"Execute Code",description:`MANDATORY: Use for any command where output exceeds 20 lines. Execute code in a sandboxed subprocess. Only stdout enters context \u2014 raw data stays in the subprocess.${gI} Available: ${hI}.
315
315
 
316
- PREFER THIS OVER BASH for: API calls (gh, curl, aws), test runners (npm test, pytest), git queries (git log, git diff), data processing, and ANY CLI command that may produce large output. Bash should only be used for file mutations, git writes, and navigation.`,inputSchema:Z.object({language:Z.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:Z.string().describe("Source code to execute. Use console.log (JS/TS), print (Python/Ruby/Perl/R), echo (Shell), echo (PHP), fmt.Println (Go), or IO.puts (Elixir) to output a summary to context."),timeout:Z.number().optional().default(3e4).describe("Max execution time in ms"),background:Z.boolean().optional().default(!1).describe("Keep process running after timeout (for servers/daemons). Returns partial output without killing the process. IMPORTANT: Do NOT add setTimeout/self-close timers in background scripts \u2014 the process must stay alive until the timeout detaches it. For server+fetch patterns, prefer putting both server and fetch in ONE ctx_execute call instead of using background."),intent:Z.string().optional().describe(`What you're looking for in the output. When provided and output is large (>5KB), indexes output into knowledge base and returns section titles + previews \u2014 not full content. Use search(queries: [...]) to retrieve specific sections. Example: 'failing tests', 'HTTP 500 errors'.
316
+ PREFER THIS OVER BASH for: API calls (gh, curl, aws), test runners (npm test, pytest), git queries (git log, git diff), data processing, and ANY CLI command that may produce large output. Bash should only be used for file mutations, git writes, and navigation.`,inputSchema:L.object({language:L.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:L.string().describe("Source code to execute. Use console.log (JS/TS), print (Python/Ruby/Perl/R), echo (Shell), echo (PHP), fmt.Println (Go), or IO.puts (Elixir) to output a summary to context."),timeout:L.number().optional().default(3e4).describe("Max execution time in ms"),background:L.boolean().optional().default(!1).describe("Keep process running after timeout (for servers/daemons). Returns partial output without killing the process. IMPORTANT: Do NOT add setTimeout/self-close timers in background scripts \u2014 the process must stay alive until the timeout detaches it. For server+fetch patterns, prefer putting both server and fetch in ONE ctx_execute call instead of using background."),intent:L.string().optional().describe(`What you're looking for in the output. When provided and output is large (>5KB), indexes output into knowledge base and returns section titles + previews \u2014 not full content. Use search(queries: [...]) to retrieve specific sections. Example: 'failing tests', 'HTTP 500 errors'.
317
317
 
318
- TIP: Use specific technical terms, not just concepts. Check 'Searchable terms' in the response for available vocabulary.`)})},async({language:t,code:e,timeout:r,background:n,intent:o})=>{if(t==="shell"){let s=nf(e,"execute");if(s)return s}else{let s=Ax(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
318
+ TIP: Use specific technical terms, not just concepts. Check 'Searchable terms' in the response for available vocabulary.`)})},async({language:t,code:e,timeout:r,background:n,intent:o})=>{if(t==="shell"){let s=uf(e,"execute");if(s)return s}else{let s=Hx(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
319
319
  let __cm_net=0;
320
320
  // Report network bytes on process exit \u2014 works with both promise and callback patterns.
321
321
  // process.on('exit') fires after all I/O completes, unlike .finally() which fires
@@ -361,20 +361,20 @@ ${e}
361
361
  }
362
362
  __cm_main().catch(e=>{console.error(e);process.exitCode=1});${n?`
363
363
  setInterval(()=>{},2147483647);`:""}
364
- })(typeof require!=='undefined'?require:null);`);let i=await Ss.execute({language:t,code:s,timeout:r,background:n}),a=i.stderr?.match(/__CM_NET__:(\d+)/);if(a&&(Fe.bytesSandboxed+=parseInt(a[1]),i.stderr=i.stderr.replace(/\n?__CM_NET__:\d+\n?/g,"")),i.timedOut){let u=i.stdout?.trim();return i.backgrounded&&u?J("ctx_execute",{content:[{type:"text",text:`${u}
364
+ })(typeof require!=='undefined'?require:null);`);let i=await Es.execute({language:t,code:s,timeout:r,background:n}),a=i.stderr?.match(/__CM_NET__:(\d+)/);if(a&&(Fe.bytesSandboxed+=parseInt(a[1]),i.stderr=i.stderr.replace(/\n?__CM_NET__:\d+\n?/g,"")),i.timedOut){let u=i.stdout?.trim();return i.backgrounded&&u?K("ctx_execute",{content:[{type:"text",text:`${u}
365
365
 
366
- _(process backgrounded after ${r}ms \u2014 still running)_`}]}):u?J("ctx_execute",{content:[{type:"text",text:`${u}
366
+ _(process backgrounded after ${r}ms \u2014 still running)_`}]}):u?K("ctx_execute",{content:[{type:"text",text:`${u}
367
367
 
368
- _(timed out after ${r}ms \u2014 partial output shown above)_`}]}):J("ctx_execute",{content:[{type:"text",text:`Execution timed out after ${r}ms
368
+ _(timed out after ${r}ms \u2014 partial output shown above)_`}]}):K("ctx_execute",{content:[{type:"text",text:`Execution timed out after ${r}ms
369
369
 
370
370
  stderr:
371
- ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:u,output:l}=xp({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(l)>Ia?(wr(Buffer.byteLength(l)),J("ctx_execute",{content:[{type:"text",text:za(l,o,u?`execute:${t}:error`:`execute:${t}`)}],isError:u})):J("ctx_execute",{content:[{type:"text",text:l}],isError:u})}let c=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(c)>Ia?(wr(Buffer.byteLength(c)),J("ctx_execute",{content:[{type:"text",text:za(c,o,`execute:${t}`)}]})):J("ctx_execute",{content:[{type:"text",text:c}]})}catch(s){let i=s instanceof Error?s.message:String(s);return J("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});var Ia=5e3;function za(t,e,r,n=5){let o=t.split(`
372
- `).length,s=Buffer.byteLength(t),i=bs(),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(`
371
+ ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:u,output:l}=Ep({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(l)>za?(Er(Buffer.byteLength(l)),K("ctx_execute",{content:[{type:"text",text:Na(l,o,u?`execute:${t}:error`:`execute:${t}`)}],isError:u})):K("ctx_execute",{content:[{type:"text",text:l}],isError:u})}let c=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(c)>za?(Er(Buffer.byteLength(c)),K("ctx_execute",{content:[{type:"text",text:Na(c,o,`execute:${t}`)}]})):K("ctx_execute",{content:[{type:"text",text:c}]})}catch(s){let i=s instanceof Error?s.message:String(s);return K("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});var za=5e3;function Na(t,e,r,n=5){let o=t.split(`
372
+ `).length,s=Buffer.byteLength(t),i=oo(),a=i.indexPlainText(t,r),c=i.searchWithFallback(e,n,r),u=i.getDistinctiveTerms(a.sourceId);if(c.length===0){let d=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`No sections matched intent "${e}" in ${o}-line output (${(s/1024).toFixed(1)}KB).`];return u.length>0&&(d.push(""),d.push(`Searchable terms: ${u.join(", ")}`)),d.push(""),d.push("Use search() to explore the indexed content."),d.join(`
373
373
  `)}let l=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`${c.length} sections matched "${e}" (${o} lines, ${(s/1024).toFixed(1)}KB):`,""];for(let d of c){let f=d.content.split(`
374
374
  `)[0].slice(0,120);l.push(` - ${d.title}: ${f}`)}return u.length>0&&(l.push(""),l.push(`Searchable terms: ${u.join(", ")}`)),l.push(""),l.push("Use search(queries: [...]) to retrieve full content of any section."),l.join(`
375
375
  `)}$t.registerTool("ctx_execute_file",{title:"Execute File Processing",description:`Read a file and process it without loading contents into context. The file is read into a FILE_CONTENT variable inside the sandbox. Only your printed summary enters context.
376
376
 
377
- PREFER THIS OVER Read/cat for: log files, data files (CSV, JSON, XML), large source files for analysis, and any file where you need to extract specific information rather than read the entire content.`,inputSchema:Z.object({path:Z.string().describe("Absolute file path or relative to project root"),language:Z.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:Z.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:Z.number().optional().default(3e4).describe("Max execution time in ms"),intent:Z.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=aI(t,"execute_file");if(s)return s;if(e==="shell"){let i=nf(r,"execute_file");if(i)return i}else{let i=Ax(r,e,"execute_file");if(i)return i}try{let i=await Ss.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return J("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}=xp({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>Ia?(wr(Buffer.byteLength(u)),J("ctx_execute_file",{content:[{type:"text",text:za(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):J("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)>Ia?(wr(Buffer.byteLength(a)),J("ctx_execute_file",{content:[{type:"text",text:za(a,o,`file:${t}`)}]})):J("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return J("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});$t.registerTool("ctx_index",{title:"Index Content",description:`Index documentation or knowledge content into a searchable BM25 knowledge base. Chunks markdown by headings (keeping code blocks intact) and stores in ephemeral FTS5 database. The full content does NOT stay in context \u2014 only a brief summary is returned.
377
+ PREFER THIS OVER Read/cat for: log files, data files (CSV, JSON, XML), large source files for analysis, and any file where you need to extract specific information rather than read the entire content.`,inputSchema:L.object({path:L.string().describe("Absolute file path or relative to project root"),language:L.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:L.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:L.number().optional().default(3e4).describe("Max execution time in ms"),intent:L.string().optional().describe("What you're looking for in the output. When provided and output is large (>5KB), returns only matching sections via BM25 search instead of truncated output.")})},async({path:t,language:e,code:r,timeout:n,intent:o})=>{let s=mI(t,"execute_file");if(s)return s;if(e==="shell"){let i=uf(r,"execute_file");if(i)return i}else{let i=Hx(r,e,"execute_file");if(i)return i}try{let i=await Es.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return K("ctx_execute_file",{content:[{type:"text",text:`Timed out processing ${t} after ${n}ms`}],isError:!0});if(i.exitCode!==0){let{isError:c,output:u}=Ep({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>za?(Er(Buffer.byteLength(u)),K("ctx_execute_file",{content:[{type:"text",text:Na(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):K("ctx_execute_file",{content:[{type:"text",text:u}],isError:c})}let a=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(a)>za?(Er(Buffer.byteLength(a)),K("ctx_execute_file",{content:[{type:"text",text:Na(a,o,`file:${t}`)}]})):K("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return K("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});$t.registerTool("ctx_index",{title:"Index Content",description:`Index documentation or knowledge content into a searchable BM25 knowledge base. Chunks markdown by headings (keeping code blocks intact) and stores in ephemeral FTS5 database. The full content does NOT stay in context \u2014 only a brief summary is returned.
378
378
 
379
379
  WHEN TO USE:
380
380
  - Documentation from Context7, Skills, or MCP tools (API docs, framework guides, code examples)
@@ -385,14 +385,14 @@ WHEN TO USE:
385
385
  - Any content with code examples you may need to reference precisely
386
386
 
387
387
  After indexing, use 'search' to retrieve specific sections on-demand.
388
- Do NOT use for: log files, test output, CSV, build output \u2014 use 'execute_file' for those.`,inputSchema:Z.object({content:Z.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:Z.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:Z.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 J("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)wr(Buffer.byteLength(t));else if(e)try{let s=await import("fs");wr(s.readFileSync(e).byteLength)}catch{}let o=bs().index({content:t,path:e,source:r});return J("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
389
- Use search(queries: ["..."]) to query this content. Use source: "${o.label}" to scope results.`}]})}catch(n){let o=n instanceof Error?n.message:String(n);return J("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});var un=0,Xp=Date.now(),fI=6e4,Px=3,Rx=8;function of(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function mI(t){let e=of(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}$t.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Pass ALL search questions as queries array in ONE call.
388
+ Do NOT use for: log files, test output, CSV, build output \u2014 use 'execute_file' for those.`,inputSchema:L.object({content:L.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:L.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:L.string().optional().describe("Label for the indexed content (e.g., 'Context7: React useEffect', 'Skill: frontend-design')")})},async({content:t,path:e,source:r})=>{if(!t&&!e)return K("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)Er(Buffer.byteLength(t));else if(e)try{let s=await import("fs");Er(s.readFileSync(e).byteLength)}catch{}let o=oo().index({content:t,path:e,source:r});return K("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
389
+ Use search(queries: ["..."]) to query this content. Use source: "${o.label}" to scope results.`}]})}catch(n){let o=n instanceof Error?n.message:String(n);return K("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});var ln=0,nf=Date.now(),xI=6e4,Nx=3,Ax=8;function lf(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function SI(t){let e=lf(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}$t.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Pass ALL search questions as queries array in ONE call.
390
390
 
391
- TIPS: 2-4 specific terms per query. Use 'source' to scope results.`,inputSchema:Z.object({queries:Z.preprocess(of,Z.array(Z.string()).optional().describe("Array of search queries. Batch ALL questions in one call.")),limit:Z.number().optional().default(3).describe("Results per query (default: 3)"),source:Z.string().optional().describe("Filter to a specific indexed source (partial match)."),contentType:Z.enum(["code","prose"]).optional().describe("Filter results by content type: 'code' or 'prose'.")})},async t=>{try{let e=bs(),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 J("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-Xp>fI&&(un=0,Xp=a),un++,un>Rx)return J("ctx_search",{content:[{type:"text",text:`BLOCKED: ${un} search calls in ${Math.round((a-Xp)/1e3)}s. You're flooding context. STOP making individual search calls. Use batch_execute(commands, queries) for your next research step.`}],isError:!0});let c=un>Px?1:Math.min(o,2),u=40*1024,l=0,d=[];for(let m of n){if(l>u){d.push(`## ${m}
391
+ TIPS: 2-4 specific terms per query. Use 'source' to scope results.`,inputSchema:L.object({queries:L.preprocess(lf,L.array(L.string()).optional().describe("Array of search queries. Batch ALL questions in one call.")),limit:L.number().optional().default(3).describe("Results per query (default: 3)"),source:L.string().optional().describe("Filter to a specific indexed source (partial match)."),contentType:L.enum(["code","prose"]).optional().describe("Filter results by content type: 'code' or 'prose'.")})},async t=>{try{let e=oo(),r=t,n=[];if(Array.isArray(r.queries)&&r.queries.length>0?n.push(...r.queries):typeof r.query=="string"&&r.query.length>0&&n.push(r.query),n.length===0)return K("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:o=3,source:s,contentType:i}=t,a=Date.now();if(a-nf>xI&&(ln=0,nf=a),ln++,ln>Ax)return K("ctx_search",{content:[{type:"text",text:`BLOCKED: ${ln} search calls in ${Math.round((a-nf)/1e3)}s. You're flooding context. STOP making individual search calls. Use batch_execute(commands, queries) for your next research step.`}],isError:!0});let c=ln>Nx?1:Math.min(o,2),u=40*1024,l=0,d=[];for(let m of n){if(l>u){d.push(`## ${m}
392
392
  (output cap reached)
393
393
  `);continue}let p=e.searchWithFallback(m,c,s,i);if(p.length===0){d.push(`## ${m}
394
- No results found.`);continue}let h=p.map((g,y)=>{let x=`--- [${g.source}] ---`,k=`### ${g.title}`,w=jx(g.content,m,1500,g.highlighted);return`${x}
395
- ${k}
394
+ No results found.`);continue}let h=p.map((g,y)=>{let x=`--- [${g.source}] ---`,S=`### ${g.title}`,w=qx(g.content,m,1500,g.highlighted);return`${x}
395
+ ${S}
396
396
 
397
397
  ${w}`}).join(`
398
398
 
@@ -402,10 +402,10 @@ ${h}`),l+=h.length}let f=d.join(`
402
402
 
403
403
  ---
404
404
 
405
- `);if(un>=Px&&(f+=`
405
+ `);if(ln>=Nx&&(f+=`
406
406
 
407
- \u26A0 search call #${un}/${Rx} 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?`
408
- Indexed sources: ${m.map(h=>`"${h.label}" (${h.chunkCount} sections)`).join(", ")}`:"";return J("ctx_search",{content:[{type:"text",text:`No results found.${p}`}]})}return J("ctx_search",{content:[{type:"text",text:f}]})}catch(e){let r=e instanceof Error?e.message:String(e);return J("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});var Qp=null,ef=null;function hI(){return Qp||(Qp=Ox(import.meta.url).resolve("turndown")),Qp}function gI(){return ef||(ef=Ox(import.meta.url).resolve("turndown-plugin-gfm")),ef}function _I(t,e){let r=JSON.stringify(hI()),n=JSON.stringify(gI()),o=JSON.stringify(e);return`
407
+ \u26A0 search call #${ln}/${Ax} 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?`
408
+ Indexed sources: ${m.map(h=>`"${h.label}" (${h.chunkCount} sections)`).join(", ")}`:"";return K("ctx_search",{content:[{type:"text",text:`No results found.${p}`}]})}return K("ctx_search",{content:[{type:"text",text:f}]})}catch(e){let r=e instanceof Error?e.message:String(e);return K("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});var of=null,sf=null;function kI(){return of||(of=jx(import.meta.url).resolve("turndown")),of}function bI(){return sf||(sf=jx(import.meta.url).resolve("turndown-plugin-gfm")),sf}function wI(t,e){let r=JSON.stringify(kI()),n=JSON.stringify(bI()),o=JSON.stringify(e);return`
409
409
  const TurndownService = require(${r});
410
410
  const { gfm } = require(${n});
411
411
  const fs = require('fs');
@@ -455,18 +455,22 @@ main();
455
455
 
456
456
  Better than WebFetch: preview is immediate, full content is searchable, raw HTML never enters context.
457
457
 
458
- Content-type aware: HTML is converted to markdown, JSON is chunked by key paths, plain text is indexed directly.`,inputSchema:Z.object({url:Z.string().describe("The URL to fetch and index"),source:Z.string().optional().describe("Label for the indexed content (e.g., 'React useEffect docs', 'Supabase Auth API')")})},async({url:t,source:e})=>{let r=Ca(nI(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let n=_I(t,r),o=await Ss.execute({language:"javascript",code:n,timeout:3e4});if(o.exitCode!==0)return J("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${o.stderr||o.stdout}`}],isError:!0});let s=bs(),i=(o.stdout||"").trim(),a;try{a=Cx(r,"utf-8").trim()}catch{return J("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(a.length===0)return J("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});wr(Buffer.byteLength(a));let c;i==="__CM_CT__:json"?c=s.indexJSON(a,e??t):i==="__CM_CT__:text"?c=s.indexPlainText(a,e??t):c=s.index({content:a,source:e??t});let u=3072,l=a.length>u?a.slice(0,u)+`
458
+ Content-type aware: HTML is converted to markdown, JSON is chunked by key paths, plain text is indexed directly.`,inputSchema:L.object({url:L.string().describe("The URL to fetch and index"),source:L.string().optional().describe("Label for the indexed content (e.g., 'React useEffect docs', 'Supabase Auth API')"),force:L.boolean().optional().describe("Skip cache and re-fetch even if content was recently indexed")})},async({url:t,source:e,force:r})=>{if(!r){let o=oo(),s=e??t,i=o.getSourceMeta(s);if(i){let a=new Date(i.indexedAt+"Z"),c=Date.now()-a.getTime(),u=1440*60*1e3;if(c<u){let l=Math.floor(c/36e5),d=Math.floor(c/(60*1e3)),f=l>0?`${l}h ago`:d>0?`${d}m ago`:"just now";return K("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${i.label}** \u2014 ${i.chunkCount} sections, indexed ${f} (fresh, TTL: 24h).
459
+ To refresh: call ctx_fetch_and_index again with \`force: true\`.
459
460
 
460
- \u2026[truncated \u2014 use search() for full content]`:a,d=(Buffer.byteLength(a)/1024).toFixed(1),f=[`Fetched and indexed **${c.totalChunks} sections** (${d}KB) from: ${c.label}`,`Full content indexed in sandbox \u2014 use search(queries: [...], source: "${c.label}") for specific lookups.`,"","---","",l].join(`
461
- `);return J("ctx_fetch_and_index",{content:[{type:"text",text:f}]})}catch(n){let o=n instanceof Error?n.message:String(n);return J("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${o}`}],isError:!0})}finally{try{rI(r)}catch{}}});$t.registerTool("ctx_batch_execute",{title:"Batch Execute & Search",description:`Execute multiple commands in ONE call, auto-index all output, and search with multiple queries. Returns search results directly \u2014 no follow-up calls needed.
461
+ You MUST call search() to answer questions about this content \u2014 this cached response contains no content.
462
+ Use: search(queries: [...], source: "${i.label}")`}]})}}}let n=wr(cI(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let o=wI(t,n),s=await Es.execute({language:"javascript",code:o,timeout:3e4});if(s.exitCode!==0)return K("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${s.stderr||s.stdout}`}],isError:!0});let i=oo(),a=(s.stdout||"").trim(),c;try{c=Lx(n,"utf-8").trim()}catch{return K("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(c.length===0)return K("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});Er(Buffer.byteLength(c));let u;a==="__CM_CT__:json"?u=i.indexJSON(c,e??t):a==="__CM_CT__:text"?u=i.indexPlainText(c,e??t):u=i.index({content:c,source:e??t});let l=3072,d=c.length>l?c.slice(0,l)+`
463
+
464
+ \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(`
465
+ `);return K("ctx_fetch_and_index",{content:[{type:"text",text:m}]})}catch(o){let s=o instanceof Error?o.message:String(o);return K("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${s}`}],isError:!0})}finally{try{iI(n)}catch{}}});$t.registerTool("ctx_batch_execute",{title:"Batch Execute & Search",description:`Execute multiple commands in ONE call, auto-index all output, and search with multiple queries. Returns search results directly \u2014 no follow-up calls needed.
462
466
 
463
467
  THIS IS THE PRIMARY TOOL. Use this instead of multiple execute() calls.
464
468
 
465
469
  One batch_execute call replaces 30+ execute calls + 10+ search calls.
466
- Provide all commands to run and all queries to search \u2014 everything happens in one round trip.`,inputSchema:Z.object({commands:Z.preprocess(mI,Z.array(Z.object({label:Z.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:Z.string().describe("Shell command to execute")})).min(1).describe("Commands to execute as a batch. Each runs sequentially, output is labeled with the section header.")),queries:Z.preprocess(of,Z.array(Z.string()).min(1).describe("Search queries to extract information from indexed output. Use 5-8 comprehensive queries. Each returns top 5 matching sections with full content. This is your ONLY chance \u2014 put ALL your questions here. No follow-up calls needed.")),timeout:Z.number().optional().default(6e4).describe("Max execution time in ms (default: 60s)")})},async({commands:t,queries:e,timeout:r})=>{for(let n of t){let o=nf(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1;for(let w of t){let R=Date.now()-o,ie=r-R;if(ie<=0){n.push(`# ${w.label}
470
+ Provide all commands to run and all queries to search \u2014 everything happens in one round trip.`,inputSchema:L.object({commands:L.preprocess(SI,L.array(L.object({label:L.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:L.string().describe("Shell command to execute")})).min(1).describe("Commands to execute as a batch. Each runs sequentially, output is labeled with the section header.")),queries:L.preprocess(lf,L.array(L.string()).min(1).describe("Search queries to extract information from indexed output. Use 5-8 comprehensive queries. Each returns top 5 matching sections with full content. This is your ONLY chance \u2014 put ALL your questions here. No follow-up calls needed.")),timeout:L.number().optional().default(6e4).describe("Max execution time in ms (default: 60s)")})},async({commands:t,queries:e,timeout:r})=>{for(let n of t){let o=uf(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1;for(let w of t){let R=Date.now()-o,ie=r-R;if(ie<=0){n.push(`# ${w.label}
467
471
 
468
472
  (skipped \u2014 batch timeout exceeded)
469
- `),s=!0;continue}let ae=await Ss.execute({language:"shell",code:`${w.command} 2>&1`,timeout:ie}),tt=ae.stdout||"(no output)";if(n.push(`# ${w.label}
473
+ `),s=!0;continue}let ae=await Es.execute({language:"shell",code:`${w.command} 2>&1`,timeout:ie}),tt=ae.stdout||"(no output)";if(n.push(`# ${w.label}
470
474
 
471
475
  ${tt}
472
476
  `),ae.timedOut){s=!0;let Zt=t.indexOf(w);for(let fe=Zt+1;fe<t.length;fe++)n.push(`# ${t[fe].label}
@@ -474,13 +478,13 @@ ${tt}
474
478
  (skipped \u2014 batch timeout exceeded)
475
479
  `);break}}let i=n.join(`
476
480
  `),a=Buffer.byteLength(i),c=i.split(`
477
- `).length;if(s&&n.length===0)return J("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});wr(a);let u=bs(),l=`batch:${t.map(w=>w.label).join(",").slice(0,80)}`,d=u.index({content:i,source:l}),f=u.getChunksBySource(d.sourceId),m=["## Indexed Sections",""],p=[];for(let w of f){let R=Buffer.byteLength(w.content);m.push(`- ${w.title} (${(R/1024).toFixed(1)}KB)`),p.push(w.title)}let h=80*1024,g=[],y=0;for(let w of e){if(y>h){g.push(`## ${w}
481
+ `).length;if(s&&n.length===0)return K("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});Er(a);let u=oo(),l=`batch:${t.map(w=>w.label).join(",").slice(0,80)}`,d=u.index({content:i,source:l}),f=u.getChunksBySource(d.sourceId),m=["## Indexed Sections",""],p=[];for(let w of f){let R=Buffer.byteLength(w.content);m.push(`- ${w.title} (${(R/1024).toFixed(1)}KB)`),p.push(w.title)}let h=80*1024,g=[],y=0;for(let w of e){if(y>h){g.push(`## ${w}
478
482
  (output cap reached \u2014 use search(queries: ["${w}"]) for details)
479
- `);continue}let R=u.searchWithFallback(w,3,l),ie=!1;if(R.length===0&&(R=u.searchWithFallback(w,3),ie=R.length>0),g.push(`## ${w}`),ie&&g.push("> **Note:** No results in current batch output. Showing results from previously indexed content."),g.push(""),R.length>0)for(let ae of R){let tt=jx(ae.content,w,3e3,ae.highlighted),Zt=ie?` _(source: ${ae.source})_`:"";g.push(`### ${ae.title}${Zt}`),g.push(tt),g.push(""),y+=tt.length+ae.title.length}else g.push("No matching sections found."),g.push("")}let x=u.getDistinctiveTerms?u.getDistinctiveTerms(d.sourceId):[],k=[`Executed ${t.length} commands (${c} lines, ${(a/1024).toFixed(1)}KB). Indexed ${d.totalChunks} sections. Searched ${e.length} queries.`,"",...m,"",...g,x.length>0?`
483
+ `);continue}let R=u.searchWithFallback(w,3,l),ie=!1;if(R.length===0&&(R=u.searchWithFallback(w,3),ie=R.length>0),g.push(`## ${w}`),ie&&g.push("> **Note:** No results in current batch output. Showing results from previously indexed content."),g.push(""),R.length>0)for(let ae of R){let tt=qx(ae.content,w,3e3,ae.highlighted),Zt=ie?` _(source: ${ae.source})_`:"";g.push(`### ${ae.title}${Zt}`),g.push(tt),g.push(""),y+=tt.length+ae.title.length}else g.push("No matching sections found."),g.push("")}let x=u.getDistinctiveTerms?u.getDistinctiveTerms(d.sourceId):[],S=[`Executed ${t.length} commands (${c} lines, ${(a/1024).toFixed(1)}KB). Indexed ${d.totalChunks} sections. Searched ${e.length} queries.`,"",...m,"",...g,x.length>0?`
480
484
  Searchable terms for follow-up: ${x.join(", ")}`:""].join(`
481
- `);return J("ctx_batch_execute",{content:[{type:"text",text:k}]})}catch(n){let o=n instanceof Error?n.message:String(n);return J("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});$t.registerTool("ctx_stats",{title:"Session Statistics",description:"Returns context consumption statistics for the current session. Shows total bytes returned to context, breakdown by tool, call counts, estimated token usage, and context savings ratio.",inputSchema:Z.object({})},async()=>{let t=Object.values(Fe.bytesReturned).reduce((d,f)=>d+f,0),e=Object.values(Fe.calls).reduce((d,f)=>d+f,0),n=((Date.now()-Fe.sessionStart)/6e4).toFixed(1),o=Fe.bytesIndexed+Fe.bytesSandboxed,s=o+t,i=s/Math.max(t,1),a=s>0?((1-t/s)*100).toFixed(0):"0",c=d=>d>=1024*1024?`${(d/1024/1024).toFixed(1)}MB`:`${(d/1024).toFixed(1)}KB`,u=[`## context-mode \u2014 Session Report (${n} min)`];if(u.push("","### Context Window Protection",""),e===0)u.push("No context-mode tool calls yet. Use `batch_execute`, `execute`, or `fetch_and_index` to keep raw output out of your context window.");else{u.push("| Metric | Value |","|--------|------:|",`| Total data processed | **${c(s)}** |`,`| Kept in sandbox (never entered context) | **${c(o)}** |`,`| Entered context | ${c(t)} |`,`| Estimated tokens saved | ~${Math.round(o/4).toLocaleString()} |`,`| **Context savings** | **${i.toFixed(1)}x (${a}% reduction)** |`);let d=new Set([...Object.keys(Fe.calls),...Object.keys(Fe.bytesReturned)]);if(d.size>0){u.push("","| Tool | Calls | Context | Tokens |","|------|------:|--------:|-------:|");for(let f of Array.from(d).sort()){let m=Fe.calls[f]||0,p=Fe.bytesReturned[f]||0,h=Math.round(p/4);u.push(`| ${f} | ${m} | ${c(p)} | ~${h.toLocaleString()} |`)}u.push(`| **Total** | **${e}** | **${c(t)}** | **~${Math.round(t/4).toLocaleString()}** |`)}o>0&&u.push("",`Without context-mode, **${c(s)}** of raw output would flood your context window. Instead, **${a}%** stayed in sandbox.`)}try{let d=process.env.CLAUDE_PROJECT_DIR||process.cwd(),f=QC("sha256").update(d).digest("hex").slice(0,16),m=kv(),p=Ca(zx(),".claude","context-mode","sessions",`${f}${m}.db`);if(tf(p)){let h=_a(),g=new h(p,{readonly:!0}),y=g.prepare("SELECT COUNT(*) as cnt FROM session_events").get(),x=g.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all(),k=g.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get(),w=g.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get();if(y.cnt>0){let R=k?.compact_count??0,ie=g.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),ae=new Map;for(let fe of ie){ae.has(fe.category)||ae.set(fe.category,new Set);let er=ae.get(fe.category);if(er.size<5){let Le=fe.data;fe.category==="file"?Le=fe.data.split("/").pop()||fe.data:fe.category==="prompt"&&(Le=Le.length>50?Le.slice(0,47)+"...":Le),Le.length>40&&(Le=Le.slice(0,37)+"..."),er.add(Le)}}let tt={file:"Files tracked",rule:"Project rules (CLAUDE.md)",prompt:"Your requests saved",mcp:"Plugin tools used",git:"Git operations",env:"Environment setup",error:"Errors caught",task:"Tasks in progress",decision:"Your decisions",cwd:"Working directory",skill:"Skills used",subagent:"Delegated work",intent:"Session mode",data:"Data references",role:"Behavioral directives"},Zt={file:"Restored after compact \u2014 no need to re-read",rule:"Your project instructions survive context resets",prompt:"Continues exactly where you left off",decision:"Applied automatically \u2014 won't ask again",task:"Picks up from where it stopped",error:"Tracked and monitored across compacts",git:"Branch, commit, and repo state preserved",env:"Runtime config carried forward",mcp:"Tool usage patterns remembered",subagent:"Delegation history preserved",skill:"Skill invocations tracked"};u.push("","### Session Continuity","","| What's preserved | Count | I remember... | Why it matters |","|------------------|------:|---------------|----------------|");for(let fe of x){let er=tt[fe.category]||fe.category,Le=ae.get(fe.category),ws=Le?Array.from(Le).join(", "):"",Aa=Zt[fe.category]||"Survives context resets";u.push(`| ${er} | ${fe.cnt} | ${ws} | ${Aa} |`)}u.push(`| **Total** | **${y.cnt}** | | **Zero knowledge lost on compact** |`),u.push(""),R>0?u.push(`Context has been compacted **${R} time(s)** \u2014 session knowledge was preserved each time.`):u.push("When your context compacts, all of this will restore Claude's awareness \u2014 no starting from scratch."),w&&!w.consumed&&u.push(`Resume snapshot ready (${w.event_count} events) for the next compaction.`),u.push(""),u.push("> **Note:** Previous session data is loaded when you start a new session. Without `--continue`, old session history is cleaned up to keep the database lean.")}g.close()}}catch{}u.push("","---","_Display this entire report as-is in your response. Do NOT summarize, collapse, or paraphrase any section._");let l=u.join(`
482
- `);return J("ctx_stats",{content:[{type:"text",text:l}]})});$t.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a markdown checklist.",inputSchema:Z.object({})},async()=>{let r=["## ctx-doctor","","Run this command using your shell execution tool:","","```",`node "${ro(ro(Na(import.meta.url)))}/build/cli.js" doctor`,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for PASS, `[ ]` for FAIL, `[-]` for WARN","- Example format:"," ```"," ## context-mode doctor"," - [x] Runtimes: 6/10 (javascript, typescript, python, shell, ruby, perl)"," - [x] Performance: FAST (Bun)"," - [x] Server test: PASS"," - [x] Hooks: PASS"," - [x] FTS5: PASS"," - [x] npm: v0.9.23"," ```"].join(`
483
- `);return J("ctx_doctor",{content:[{type:"text",text:r}]})});$t.registerTool("ctx_upgrade",{title:"Upgrade Plugin",description:"Upgrade context-mode to the latest version. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a checklist. Tell the user to restart their session after upgrade.",inputSchema:Z.object({})},async()=>{let r=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",`node "${ro(ro(Na(import.meta.url)))}/build/cli.js" upgrade`,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for success, `[ ]` for failure","- Example format:"," ```"," ## context-mode upgrade"," - [x] Pulled latest from GitHub"," - [x] Built and installed v0.9.24"," - [x] npm global updated"," - [x] Hooks configured"," - [x] Doctor: all checks PASS"," ```","- Tell the user to restart their session to pick up the new version."].join(`
484
- `);return J("ctx_upgrade",{content:[{type:"text",text:r}]})});async function yI(){let t=pv();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=()=>{Ss.cleanupBackgrounded(),to&&to.cleanup()},r=async()=>{e(),process.exit(0)};process.on("exit",e),process.on("SIGINT",()=>{r()}),process.on("SIGTERM",()=>{r()}),xv({onShutdown:()=>r()});let n=new pa;await $t.connect(n);try{let{detectPlatform:o,getAdapter:s}=await Promise.resolve().then(()=>($x(),Tx)),i=$t.server.getClientVersion(),a=o(i??void 0),c=await s(a.platform);if(i&&console.error(`MCP client: ${i.name} v${i.version} \u2192 ${a.platform}`),!c.capabilities.sessionStart){let u=Ix(ro(Na(import.meta.url)),".."),l=process.env.CLAUDE_PROJECT_DIR??process.env.CODEX_HOME??process.cwd(),d=c.writeRoutingInstructions(l,u);d&&console.error(`Wrote routing instructions: ${d}`)}}catch{}console.error(`Context Mode MCP server v${Nx} running on stdio`),console.error(`Detected runtimes:
485
- ${Qy(rf)}`),mp()||(console.error(`
486
- Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}yI().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{jx as extractSnippet,pI as positionsFromHighlight};
485
+ `);return K("ctx_batch_execute",{content:[{type:"text",text:S}]})}catch(n){let o=n instanceof Error?n.message:String(n);return K("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});$t.registerTool("ctx_stats",{title:"Session Statistics",description:"Returns context consumption statistics for the current session. Shows total bytes returned to context, breakdown by tool, call counts, estimated token usage, and context savings ratio.",inputSchema:L.object({})},async()=>{let t=Object.values(Fe.bytesReturned).reduce((d,f)=>d+f,0),e=Object.values(Fe.calls).reduce((d,f)=>d+f,0),n=((Date.now()-Fe.sessionStart)/6e4).toFixed(1),o=Fe.bytesIndexed+Fe.bytesSandboxed,s=o+t,i=s/Math.max(t,1),a=s>0?((1-t/s)*100).toFixed(0):"0",c=d=>d>=1024*1024?`${(d/1024/1024).toFixed(1)}MB`:`${(d/1024).toFixed(1)}KB`,u=[`## context-mode \u2014 Session Report (${n} min)`];if(u.push("","### Context Window Protection",""),e===0)u.push("No context-mode tool calls yet. Use `batch_execute`, `execute`, or `fetch_and_index` to keep raw output out of your context window.");else{u.push("| Metric | Value |","|--------|------:|",`| Total data processed | **${c(s)}** |`,`| Kept in sandbox (never entered context) | **${c(o)}** |`,`| Entered context | ${c(t)} |`,`| Estimated tokens saved | ~${Math.round(o/4).toLocaleString()} |`,`| **Context savings** | **${i.toFixed(1)}x (${a}% reduction)** |`);let d=new Set([...Object.keys(Fe.calls),...Object.keys(Fe.bytesReturned)]);if(d.size>0){u.push("","| Tool | Calls | Context | Tokens |","|------|------:|--------:|-------:|");for(let f of Array.from(d).sort()){let m=Fe.calls[f]||0,p=Fe.bytesReturned[f]||0,h=Math.round(p/4);u.push(`| ${f} | ${m} | ${c(p)} | ~${h.toLocaleString()} |`)}u.push(`| **Total** | **${e}** | **${c(t)}** | **~${Math.round(t/4).toLocaleString()}** |`)}o>0&&u.push("",`Without context-mode, **${c(s)}** of raw output would flood your context window. Instead, **${a}%** stayed in sandbox.`)}try{let d=process.env.CLAUDE_PROJECT_DIR||process.cwd(),f=af("sha256").update(d).digest("hex").slice(0,16),m=$v(),p=wr(ws(),".claude","context-mode","sessions",`${f}${m}.db`);if(Aa(p)){let h=va(),g=new h(p,{readonly:!0}),y=g.prepare("SELECT COUNT(*) as cnt FROM session_events").get(),x=g.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all(),S=g.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get(),w=g.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get();if(y.cnt>0){let R=S?.compact_count??0,ie=g.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),ae=new Map;for(let fe of ie){ae.has(fe.category)||ae.set(fe.category,new Set);let er=ae.get(fe.category);if(er.size<5){let Le=fe.data;fe.category==="file"?Le=fe.data.split("/").pop()||fe.data:fe.category==="prompt"&&(Le=Le.length>50?Le.slice(0,47)+"...":Le),Le.length>40&&(Le=Le.slice(0,37)+"..."),er.add(Le)}}let tt={file:"Files tracked",rule:"Project rules (CLAUDE.md)",prompt:"Your requests saved",mcp:"Plugin tools used",git:"Git operations",env:"Environment setup",error:"Errors caught",task:"Tasks in progress",decision:"Your decisions",cwd:"Working directory",skill:"Skills used",subagent:"Delegated work",intent:"Session mode",data:"Data references",role:"Behavioral directives"},Zt={file:"Restored after compact \u2014 no need to re-read",rule:"Your project instructions survive context resets",prompt:"Continues exactly where you left off",decision:"Applied automatically \u2014 won't ask again",task:"Picks up from where it stopped",error:"Tracked and monitored across compacts",git:"Branch, commit, and repo state preserved",env:"Runtime config carried forward",mcp:"Tool usage patterns remembered",subagent:"Delegation history preserved",skill:"Skill invocations tracked"};u.push("","### Session Continuity","","| What's preserved | Count | I remember... | Why it matters |","|------------------|------:|---------------|----------------|");for(let fe of x){let er=tt[fe.category]||fe.category,Le=ae.get(fe.category),Ts=Le?Array.from(Le).join(", "):"",Ma=Zt[fe.category]||"Survives context resets";u.push(`| ${er} | ${fe.cnt} | ${Ts} | ${Ma} |`)}u.push(`| **Total** | **${y.cnt}** | | **Zero knowledge lost on compact** |`),u.push(""),R>0?u.push(`Context has been compacted **${R} time(s)** \u2014 session knowledge was preserved each time.`):u.push("When your context compacts, all of this will restore Claude's awareness \u2014 no starting from scratch."),w&&!w.consumed&&u.push(`Resume snapshot ready (${w.event_count} events) for the next compaction.`),u.push(""),u.push("> **Note:** Previous session data is loaded when you start a new session. Without `--continue`, old session history is cleaned up to keep the database lean.")}g.close()}}catch{}u.push("","---","_Display this entire report as-is in your response. Do NOT summarize, collapse, or paraphrase any section._");let l=u.join(`
486
+ `);return K("ctx_stats",{content:[{type:"text",text:l}]})});$t.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a markdown checklist.",inputSchema:L.object({})},async()=>{let r=["## ctx-doctor","","Run this command using your shell execution tool:","","```",`node "${no(no(ja(import.meta.url)))}/build/cli.js" doctor`,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for PASS, `[ ]` for FAIL, `[-]` for WARN","- Example format:"," ```"," ## context-mode doctor"," - [x] Runtimes: 6/10 (javascript, typescript, python, shell, ruby, perl)"," - [x] Performance: FAST (Bun)"," - [x] Server test: PASS"," - [x] Hooks: PASS"," - [x] FTS5: PASS"," - [x] npm: v0.9.23"," ```"].join(`
487
+ `);return K("ctx_doctor",{content:[{type:"text",text:r}]})});$t.registerTool("ctx_upgrade",{title:"Upgrade Plugin",description:"Upgrade context-mode to the latest version. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a checklist. Tell the user to restart their session after upgrade.",inputSchema:L.object({})},async()=>{let r=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",`node "${no(no(ja(import.meta.url)))}/build/cli.js" upgrade`,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for success, `[ ]` for failure","- Example format:"," ```"," ## context-mode upgrade"," - [x] Pulled latest from GitHub"," - [x] Built and installed v0.9.24"," - [x] npm global updated"," - [x] Hooks configured"," - [x] Doctor: all checks PASS"," ```","- Tell the user to restart their session to pick up the new version."].join(`
488
+ `);return K("ctx_upgrade",{content:[{type:"text",text:r}]})});async function EI(){let t=Sp();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=()=>{Es.cleanupBackgrounded(),dn&&dn.close()},r=async()=>{e(),process.exit(0)};process.on("exit",e),process.on("SIGINT",()=>{r()}),process.on("SIGTERM",()=>{r()}),Tv({onShutdown:()=>r()});let n=new ma;await $t.connect(n);try{let{detectPlatform:o,getAdapter:s}=await Promise.resolve().then(()=>(zx(),Ix)),i=$t.server.getClientVersion(),a=o(i??void 0),c=await s(a.platform);if(i&&console.error(`MCP client: ${i.name} v${i.version} \u2192 ${a.platform}`),!c.capabilities.sessionStart){let u=Zx(no(ja(import.meta.url)),".."),l=process.env.CLAUDE_PROJECT_DIR??process.env.CODEX_HOME??process.cwd(),d=c.writeRoutingInstructions(l,u);d&&console.error(`Wrote routing instructions: ${d}`)}}catch{}console.error(`Context Mode MCP server v${Ux} running on stdio`),console.error(`Detected runtimes:
489
+ ${ov(cf)}`),gp()||(console.error(`
490
+ Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}EI().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{qx as extractSnippet,vI as positionsFromHighlight};