context-mode 1.0.23 → 1.0.24

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,45 +1,45 @@
1
1
  #!/usr/bin/env node
2
- var wx=Object.create;var Ca=Object.defineProperty;var Ex=Object.getOwnPropertyDescriptor;var $x=Object.getOwnPropertyNames;var Tx=Object.getPrototypeOf,Px=Object.prototype.hasOwnProperty;var we=(t,e)=>()=>(t&&(e=t(t=0)),e);var $=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),tt=(t,e)=>{for(var r in e)Ca(t,r,{get:e[r],enumerable:!0})},Rx=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of $x(e))!Px.call(t,o)&&o!==r&&Ca(t,o,{get:()=>e[o],enumerable:!(n=Ex(e,o))||n.enumerable});return t};var Yp=(t,e,r)=>(r=t!=null?wx(Tx(t)):{},Rx(e||!t||!t.__esModule?Ca(r,"default",{value:t,enumerable:!0}):r,t));var Io=$(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 Oo=class{};ee._CodeOrName=Oo;ee.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Kr=class extends Oo{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=Kr;var lt=class extends Oo{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 Kr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ee._Code=lt;ee.nil=new lt("");function Kh(t,...e){let r=[t[0]],n=0;for(;n<e.length;)hl(r,e[n]),r.push(t[++n]);return new lt(r)}ee._=Kh;var ml=new lt("+");function Jh(t,...e){let r=[Co(t[0])],n=0;for(;n<e.length;)r.push(ml),hl(r,e[n]),r.push(ml,Co(t[++n]));return $E(r),new lt(r)}ee.str=Jh;function hl(t,e){e instanceof lt?t.push(...e._items):e instanceof Kr?t.push(e):t.push(RE(e))}ee.addCodeArg=hl;function $E(t){let e=1;for(;e<t.length-1;){if(t[e]===ml){let r=TE(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function TE(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Kr||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 Kr))return`"${t}${e.slice(1)}`}function PE(t,e){return e.emptyStr()?t:t.emptyStr()?e:Jh`${t}${e}`}ee.strConcat=PE;function RE(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Co(Array.isArray(t)?t.join(","):t)}function OE(t){return new lt(Co(t))}ee.stringify=OE;function Co(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ee.safeStringify=Co;function CE(t){return typeof t=="string"&&ee.IDENTIFIER.test(t)?new lt(`.${t}`):Kh`[${t}]`}ee.getProperty=CE;function IE(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=IE;function zE(t){return new lt(t.toString())}ee.regexpCode=zE});var yl=$(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.ValueScope=Ye.ValueScopeName=Ye.Scope=Ye.varKinds=Ye.UsedValueState=void 0;var We=Io(),gl=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},ki;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(ki||(Ye.UsedValueState=ki={}));Ye.varKinds={const:new We.Name("const"),let:new We.Name("let"),var:new We.Name("var")};var bi=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=bi;var wi=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=wi;var NE=(0,We._)`\n`,_l=class extends bi{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?NE:We.nil}}get(){return this._scope}name(e){return new wi(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,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,ki.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 gl(u);c.set(u,ki.Completed)})}return s}};Ye.ValueScope=_l});var q=$(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=Io(),xt=yl(),ur=Io();Object.defineProperty(F,"_",{enumerable:!0,get:function(){return ur._}});Object.defineProperty(F,"str",{enumerable:!0,get:function(){return ur.str}});Object.defineProperty(F,"strConcat",{enumerable:!0,get:function(){return ur.strConcat}});Object.defineProperty(F,"nil",{enumerable:!0,get:function(){return ur.nil}});Object.defineProperty(F,"getProperty",{enumerable:!0,get:function(){return ur.getProperty}});Object.defineProperty(F,"stringify",{enumerable:!0,get:function(){return ur.stringify}});Object.defineProperty(F,"regexpCode",{enumerable:!0,get:function(){return ur.regexpCode}});Object.defineProperty(F,"Name",{enumerable:!0,get:function(){return ur.Name}});var Pi=yl();Object.defineProperty(F,"Scope",{enumerable:!0,get:function(){return Pi.Scope}});Object.defineProperty(F,"ValueScope",{enumerable:!0,get:function(){return Pi.ValueScope}});Object.defineProperty(F,"ValueScopeName",{enumerable:!0,get:function(){return Pi.ValueScopeName}});Object.defineProperty(F,"varKinds",{enumerable:!0,get:function(){return Pi.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 Kt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},vl=class extends Kt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?xt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=$n(this.rhs,e,r)),this}get names(){return this.rhs instanceof Y._CodeOrName?this.rhs.names:{}}},Ei=class extends Kt{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=$n(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Y.Name?{}:{...this.lhs.names};return Ti(e,this.rhs)}},xl=class extends Ei{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Sl=class extends Kt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},kl=class extends Kt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},bl=class extends Kt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},wl=class extends Kt{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=$n(this.code,e,r),this}get names(){return this.code instanceof Y._CodeOrName?this.code.names:{}}},zo=class extends Kt{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)||(AE(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Wr(e,r.names),{})}},Jt=class extends zo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},El=class extends zo{},En=class extends Jt{};En.kind="else";var Jr=class t extends Jt{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 En(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Gh(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=$n(this.condition,e,r),this}get names(){let e=super.names;return Ti(e,this.condition),this.else&&Wr(e,this.else.names),e}};Jr.kind="if";var Gr=class extends Jt{};Gr.kind="for";var $l=class extends Gr{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=$n(this.iteration,e,r),this}get names(){return Wr(super.names,this.iteration.names)}},Tl=class extends Gr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?xt.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Ti(super.names,this.from);return Ti(e,this.to)}},$i=class extends Gr{constructor(e,r,n,o){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=o}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=$n(this.iterable,e,r),this}get names(){return Wr(super.names,this.iterable.names)}},No=class extends Jt{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)}};No.kind="func";var Ao=class extends zo{render(e){return"return "+super.render(e)}};Ao.kind="return";var Pl=class extends Jt{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,o;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(o=this.finally)===null||o===void 0||o.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Wr(e,this.catch.names),this.finally&&Wr(e,this.finally.names),e}},jo=class extends Jt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};jo.kind="catch";var Mo=class extends Jt{render(e){return"finally"+super.render(e)}};Mo.kind="finally";var Rl=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
- `:""},this._extScope=e,this._scope=new xt.Scope({parent:e}),this._nodes=[new El]}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 vl(e,s,n)),s}const(e,r,n){return this._def(xt.varKinds.const,e,r,n)}let(e,r,n){return this._def(xt.varKinds.let,e,r,n)}var(e,r,n){return this._def(xt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Ei(e,r,n))}add(e,r){return this._leafNode(new xl(e,F.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Y.nil&&this._leafNode(new wl(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 Jr(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 Jr(e))}else(){return this._elseNode(new En)}endIf(){return this._endBlockNode(Jr,En)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new $l(e),r)}forRange(e,r,n,o,s=this.opts.es5?xt.varKinds.var:xt.varKinds.let){let i=this._scope.toName(e);return this._for(new Tl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=xt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof Y.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Y._)`${i}.length`,a=>{this.var(s,(0,Y._)`${i}[${a}]`),n(s)})}return this._for(new $i("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?xt.varKinds.var:xt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Y._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new $i("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Gr)}label(e){return this._leafNode(new Sl(e))}break(e){return this._leafNode(new kl(e))}return(e){let r=new Ao;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Ao)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Pl;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new jo(s),r(s)}return n&&(this._currNode=o.finally=new Mo,this.code(n)),this._endBlockNode(jo,Mo)}throw(e){return this._leafNode(new bl(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 No(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(No)}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 Jr))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=Rl;function Wr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Ti(t,e){return e instanceof Y._CodeOrName?Wr(t,e.names):t}function $n(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 AE(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Gh(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Y._)`!${Ol(t)}`}F.not=Gh;var jE=Wh(F.operators.AND);function ME(...t){return t.reduce(jE)}F.and=ME;var DE=Wh(F.operators.OR);function LE(...t){return t.reduce(DE)}F.or=LE;function Wh(t){return(e,r)=>e===Y.nil?r:r===Y.nil?e:(0,Y._)`${Ol(e)} ${t} ${Ol(r)}`}function Ol(t){return t instanceof Y.Name?t:(0,Y._)`(${t})`}});var X=$(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.checkStrictMode=V.getErrorPath=V.Type=V.useFunc=V.setEvaluated=V.evaluatedPropsToName=V.mergeEvaluated=V.eachItem=V.unescapeJsonPointer=V.escapeJsonPointer=V.escapeFragment=V.unescapeFragment=V.schemaRefOrVal=V.schemaHasRulesButRef=V.schemaHasRules=V.checkUnknownRules=V.alwaysValidSchema=V.toHash=void 0;var se=q(),ZE=Io();function UE(t){let e={};for(let r of t)e[r]=!0;return e}V.toHash=UE;function HE(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Qh(t,e),!eg(e,t.self.RULES.all))}V.alwaysValidSchema=HE;function Qh(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]||ng(t,`unknown keyword: "${s}"`)}V.checkUnknownRules=Qh;function eg(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}V.schemaHasRules=eg;function qE(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}V.schemaHasRulesButRef=qE;function FE({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,se._)`${r}`}return(0,se._)`${t}${e}${(0,se.getProperty)(n)}`}V.schemaRefOrVal=FE;function VE(t){return tg(decodeURIComponent(t))}V.unescapeFragment=VE;function BE(t){return encodeURIComponent(Il(t))}V.escapeFragment=BE;function Il(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}V.escapeJsonPointer=Il;function tg(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}V.unescapeJsonPointer=tg;function KE(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}V.eachItem=KE;function Yh({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof se.Name?(s instanceof se.Name?t(o,s,i):e(o,s,i),i):s instanceof se.Name?(e(o,i,s),s):r(s,i);return a===se.Name&&!(c instanceof se.Name)?n(o,c):c}}V.mergeEvaluated={props:Yh({mergeNames:(t,e,r)=>t.if((0,se._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,se._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,se._)`${r} || {}`).code((0,se._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,se._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,se._)`${r} || {}`),zl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:rg}),items:Yh({mergeNames:(t,e,r)=>t.if((0,se._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,se._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,se._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,se._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function rg(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,se._)`{}`);return e!==void 0&&zl(t,r,e),r}V.evaluatedPropsToName=rg;function zl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,se._)`${e}${(0,se.getProperty)(n)}`,!0))}V.setEvaluated=zl;var Xh={};function JE(t,e){return t.scopeValue("func",{ref:e,code:Xh[e.code]||(Xh[e.code]=new ZE._Code(e.code))})}V.useFunc=JE;var Cl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Cl||(V.Type=Cl={}));function GE(t,e,r){if(t instanceof se.Name){let n=e===Cl.Num;return r?n?(0,se._)`"[" + ${t} + "]"`:(0,se._)`"['" + ${t} + "']"`:n?(0,se._)`"/" + ${t}`:(0,se._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,se.getProperty)(t).toString():"/"+Il(t)}V.getErrorPath=GE;function ng(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}V.checkStrictMode=ng});var Gt=$(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});var Me=q(),WE={data:new Me.Name("data"),valCxt:new Me.Name("valCxt"),instancePath:new Me.Name("instancePath"),parentData:new Me.Name("parentData"),parentDataProperty:new Me.Name("parentDataProperty"),rootData:new Me.Name("rootData"),dynamicAnchors:new Me.Name("dynamicAnchors"),vErrors:new Me.Name("vErrors"),errors:new Me.Name("errors"),this:new Me.Name("this"),self:new Me.Name("self"),scope:new Me.Name("scope"),json:new Me.Name("json"),jsonPos:new Me.Name("jsonPos"),jsonLen:new Me.Name("jsonLen"),jsonPart:new Me.Name("jsonPart")};Nl.default=WE});var Do=$(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.extendErrors=De.resetErrorsCount=De.reportExtraError=De.reportError=De.keyword$DataError=De.keywordError=void 0;var Q=q(),Ri=X(),qe=Gt();De.keywordError={message:({keyword:t})=>(0,Q.str)`must pass "${t}" keyword validation`};De.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Q.str)`"${t}" keyword must be ${e} ($data)`:(0,Q.str)`"${t}" keyword is invalid ($data)`};function YE(t,e=De.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=ig(t,e,r);n??(i||a)?og(s,c):sg(o,(0,Q._)`[${c}]`)}De.reportError=YE;function XE(t,e=De.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=ig(t,e,r);og(o,a),s||i||sg(n,qe.default.vErrors)}De.reportExtraError=XE;function QE(t,e){t.assign(qe.default.errors,e),t.if((0,Q._)`${qe.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Q._)`${qe.default.vErrors}.length`,e),()=>t.assign(qe.default.vErrors,null)))}De.resetErrorsCount=QE;function e$({gen:t,keyword:e,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let i=t.name("err");t.forRange("i",o,qe.default.errors,a=>{t.const(i,(0,Q._)`${qe.default.vErrors}[${a}]`),t.if((0,Q._)`${i}.instancePath === undefined`,()=>t.assign((0,Q._)`${i}.instancePath`,(0,Q.strConcat)(qe.default.instancePath,s.errorPath))),t.assign((0,Q._)`${i}.schemaPath`,(0,Q.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,Q._)`${i}.schema`,r),t.assign((0,Q._)`${i}.data`,n))})}De.extendErrors=e$;function og(t,e){let r=t.const("err",e);t.if((0,Q._)`${qe.default.vErrors} === null`,()=>t.assign(qe.default.vErrors,(0,Q._)`[${r}]`),(0,Q._)`${qe.default.vErrors}.push(${r})`),t.code((0,Q._)`${qe.default.errors}++`)}function sg(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,Q._)`new ${t.ValidationError}(${e})`):(r.assign((0,Q._)`${n}.errors`,e),r.return(!1))}var Yr={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 ig(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Q._)`{}`:t$(t,e,r)}function t$(t,e,r={}){let{gen:n,it:o}=t,s=[r$(o,r),n$(t,r)];return o$(t,e,s),n.object(...s)}function r$({errorPath:t},{instancePath:e}){let r=e?(0,Q.str)`${t}${(0,Ri.getErrorPath)(e,Ri.Type.Str)}`:t;return[qe.default.instancePath,(0,Q.strConcat)(qe.default.instancePath,r)]}function n$({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,Q.str)`${e}/${t}`;return r&&(o=(0,Q.str)`${o}${(0,Ri.getErrorPath)(r,Ri.Type.Str)}`),[Yr.schemaPath,o]}function o$(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([Yr.keyword,o],[Yr.params,typeof e=="function"?e(t):e||(0,Q._)`{}`]),c.messages&&n.push([Yr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Yr.schema,i],[Yr.parentSchema,(0,Q._)`${l}${d}`],[qe.default.data,s]),u&&n.push([Yr.propertyName,u])}});var cg=$(Tn=>{"use strict";Object.defineProperty(Tn,"__esModule",{value:!0});Tn.boolOrEmptySchema=Tn.topBoolOrEmptySchema=void 0;var s$=Do(),i$=q(),a$=Gt(),c$={message:"boolean schema is false"};function u$(t){let{gen:e,schema:r,validateName:n}=t;r===!1?ag(t,!1):typeof r=="object"&&r.$async===!0?e.return(a$.default.data):(e.assign((0,i$._)`${n}.errors`,null),e.return(!0))}Tn.topBoolOrEmptySchema=u$;function l$(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),ag(t)):r.var(e,!0)}Tn.boolOrEmptySchema=l$;function ag(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,s$.reportError)(o,c$,void 0,e)}});var Al=$(Pn=>{"use strict";Object.defineProperty(Pn,"__esModule",{value:!0});Pn.getRules=Pn.isJSONType=void 0;var d$=["string","number","integer","boolean","null","object","array"],p$=new Set(d$);function f$(t){return typeof t=="string"&&p$.has(t)}Pn.isJSONType=f$;function m$(){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:{}}}Pn.getRules=m$});var jl=$(lr=>{"use strict";Object.defineProperty(lr,"__esModule",{value:!0});lr.shouldUseRule=lr.shouldUseGroup=lr.schemaHasRulesForType=void 0;function h$({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&ug(t,n)}lr.schemaHasRulesForType=h$;function ug(t,e){return e.rules.some(r=>lg(t,r))}lr.shouldUseGroup=ug;function lg(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))}lr.shouldUseRule=lg});var Lo=$(Le=>{"use strict";Object.defineProperty(Le,"__esModule",{value:!0});Le.reportTypeError=Le.checkDataTypes=Le.checkDataType=Le.coerceAndCheckDataType=Le.getJSONTypes=Le.getSchemaTypes=Le.DataType=void 0;var g$=Al(),_$=jl(),y$=Do(),U=q(),dg=X(),Rn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Rn||(Le.DataType=Rn={}));function v$(t){let e=pg(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Le.getSchemaTypes=v$;function pg(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(g$.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Le.getJSONTypes=pg;function x$(t,e){let{gen:r,data:n,opts:o}=t,s=S$(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,_$.schemaHasRulesForType)(t,e[0]));if(i){let a=Dl(e,n,o.strictNumbers,Rn.Wrong);r.if(a,()=>{s.length?k$(t,e,s):Ll(t)})}return i}Le.coerceAndCheckDataType=x$;var fg=new Set(["string","number","integer","boolean","null"]);function S$(t,e){return e?t.filter(r=>fg.has(r)||e==="array"&&r==="array"):[]}function k$(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(Dl(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,U._)`${a} !== undefined`);for(let u of r)(fg.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Ll(t),n.endIf(),n.if((0,U._)`${a} !== undefined`,()=>{n.assign(o,a),b$(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 $x=Object.create;var Ca=Object.defineProperty;var Tx=Object.getOwnPropertyDescriptor;var Px=Object.getOwnPropertyNames;var Rx=Object.getPrototypeOf,Ox=Object.prototype.hasOwnProperty;var we=(t,e)=>()=>(t&&(e=t(t=0)),e);var $=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),tt=(t,e)=>{for(var r in e)Ca(t,r,{get:e[r],enumerable:!0})},Cx=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Px(e))!Ox.call(t,o)&&o!==r&&Ca(t,o,{get:()=>e[o],enumerable:!(n=Tx(e,o))||n.enumerable});return t};var Xp=(t,e,r)=>(r=t!=null?$x(Rx(t)):{},Cx(e||!t||!t.__esModule?Ca(r,"default",{value:t,enumerable:!0}):r,t));var zo=$(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 Co=class{};ee._CodeOrName=Co;ee.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Kr=class extends Co{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=Kr;var lt=class extends Co{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 Kr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ee._Code=lt;ee.nil=new lt("");function Jh(t,...e){let r=[t[0]],n=0;for(;n<e.length;)hl(r,e[n]),r.push(t[++n]);return new lt(r)}ee._=Jh;var ml=new lt("+");function Gh(t,...e){let r=[Io(t[0])],n=0;for(;n<e.length;)r.push(ml),hl(r,e[n]),r.push(ml,Io(t[++n]));return PE(r),new lt(r)}ee.str=Gh;function hl(t,e){e instanceof lt?t.push(...e._items):e instanceof Kr?t.push(e):t.push(CE(e))}ee.addCodeArg=hl;function PE(t){let e=1;for(;e<t.length-1;){if(t[e]===ml){let r=RE(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function RE(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Kr||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 Kr))return`"${t}${e.slice(1)}`}function OE(t,e){return e.emptyStr()?t:t.emptyStr()?e:Gh`${t}${e}`}ee.strConcat=OE;function CE(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Io(Array.isArray(t)?t.join(","):t)}function IE(t){return new lt(Io(t))}ee.stringify=IE;function Io(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ee.safeStringify=Io;function zE(t){return typeof t=="string"&&ee.IDENTIFIER.test(t)?new lt(`.${t}`):Jh`[${t}]`}ee.getProperty=zE;function NE(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=NE;function AE(t){return new lt(t.toString())}ee.regexpCode=AE});var yl=$(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.ValueScope=Ye.ValueScopeName=Ye.Scope=Ye.varKinds=Ye.UsedValueState=void 0;var We=zo(),gl=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},ki;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(ki||(Ye.UsedValueState=ki={}));Ye.varKinds={const:new We.Name("const"),let:new We.Name("let"),var:new We.Name("var")};var bi=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=bi;var wi=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=wi;var jE=(0,We._)`\n`,_l=class extends bi{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?jE:We.nil}}get(){return this._scope}name(e){return new wi(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,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,ki.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 gl(u);c.set(u,ki.Completed)})}return s}};Ye.ValueScope=_l});var q=$(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=zo(),xt=yl(),ur=zo();Object.defineProperty(F,"_",{enumerable:!0,get:function(){return ur._}});Object.defineProperty(F,"str",{enumerable:!0,get:function(){return ur.str}});Object.defineProperty(F,"strConcat",{enumerable:!0,get:function(){return ur.strConcat}});Object.defineProperty(F,"nil",{enumerable:!0,get:function(){return ur.nil}});Object.defineProperty(F,"getProperty",{enumerable:!0,get:function(){return ur.getProperty}});Object.defineProperty(F,"stringify",{enumerable:!0,get:function(){return ur.stringify}});Object.defineProperty(F,"regexpCode",{enumerable:!0,get:function(){return ur.regexpCode}});Object.defineProperty(F,"Name",{enumerable:!0,get:function(){return ur.Name}});var Pi=yl();Object.defineProperty(F,"Scope",{enumerable:!0,get:function(){return Pi.Scope}});Object.defineProperty(F,"ValueScope",{enumerable:!0,get:function(){return Pi.ValueScope}});Object.defineProperty(F,"ValueScopeName",{enumerable:!0,get:function(){return Pi.ValueScopeName}});Object.defineProperty(F,"varKinds",{enumerable:!0,get:function(){return Pi.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 Kt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},vl=class extends Kt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?xt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=$n(this.rhs,e,r)),this}get names(){return this.rhs instanceof Y._CodeOrName?this.rhs.names:{}}},Ei=class extends Kt{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=$n(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Y.Name?{}:{...this.lhs.names};return Ti(e,this.rhs)}},xl=class extends Ei{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Sl=class extends Kt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},kl=class extends Kt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},bl=class extends Kt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},wl=class extends Kt{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=$n(this.code,e,r),this}get names(){return this.code instanceof Y._CodeOrName?this.code.names:{}}},No=class extends Kt{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)||(ME(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Wr(e,r.names),{})}},Jt=class extends No{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},El=class extends No{},En=class extends Jt{};En.kind="else";var Jr=class t extends Jt{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 En(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Wh(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=$n(this.condition,e,r),this}get names(){let e=super.names;return Ti(e,this.condition),this.else&&Wr(e,this.else.names),e}};Jr.kind="if";var Gr=class extends Jt{};Gr.kind="for";var $l=class extends Gr{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=$n(this.iteration,e,r),this}get names(){return Wr(super.names,this.iteration.names)}},Tl=class extends Gr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?xt.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Ti(super.names,this.from);return Ti(e,this.to)}},$i=class extends Gr{constructor(e,r,n,o){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=o}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=$n(this.iterable,e,r),this}get names(){return Wr(super.names,this.iterable.names)}},Ao=class extends Jt{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)}};Ao.kind="func";var jo=class extends No{render(e){return"return "+super.render(e)}};jo.kind="return";var Pl=class extends Jt{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,o;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(o=this.finally)===null||o===void 0||o.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Wr(e,this.catch.names),this.finally&&Wr(e,this.finally.names),e}},Mo=class extends Jt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Mo.kind="catch";var Do=class extends Jt{render(e){return"finally"+super.render(e)}};Do.kind="finally";var Rl=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
+ `:""},this._extScope=e,this._scope=new xt.Scope({parent:e}),this._nodes=[new El]}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 vl(e,s,n)),s}const(e,r,n){return this._def(xt.varKinds.const,e,r,n)}let(e,r,n){return this._def(xt.varKinds.let,e,r,n)}var(e,r,n){return this._def(xt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Ei(e,r,n))}add(e,r){return this._leafNode(new xl(e,F.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Y.nil&&this._leafNode(new wl(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 Jr(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 Jr(e))}else(){return this._elseNode(new En)}endIf(){return this._endBlockNode(Jr,En)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new $l(e),r)}forRange(e,r,n,o,s=this.opts.es5?xt.varKinds.var:xt.varKinds.let){let i=this._scope.toName(e);return this._for(new Tl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=xt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof Y.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Y._)`${i}.length`,a=>{this.var(s,(0,Y._)`${i}[${a}]`),n(s)})}return this._for(new $i("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?xt.varKinds.var:xt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Y._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new $i("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Gr)}label(e){return this._leafNode(new Sl(e))}break(e){return this._leafNode(new kl(e))}return(e){let r=new jo;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(jo)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Pl;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Mo(s),r(s)}return n&&(this._currNode=o.finally=new Do,this.code(n)),this._endBlockNode(Mo,Do)}throw(e){return this._leafNode(new bl(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 Ao(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Ao)}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 Jr))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=Rl;function Wr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Ti(t,e){return e instanceof Y._CodeOrName?Wr(t,e.names):t}function $n(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 ME(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Wh(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Y._)`!${Ol(t)}`}F.not=Wh;var DE=Yh(F.operators.AND);function LE(...t){return t.reduce(DE)}F.and=LE;var ZE=Yh(F.operators.OR);function UE(...t){return t.reduce(ZE)}F.or=UE;function Yh(t){return(e,r)=>e===Y.nil?r:r===Y.nil?e:(0,Y._)`${Ol(e)} ${t} ${Ol(r)}`}function Ol(t){return t instanceof Y.Name?t:(0,Y._)`(${t})`}});var X=$(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.checkStrictMode=V.getErrorPath=V.Type=V.useFunc=V.setEvaluated=V.evaluatedPropsToName=V.mergeEvaluated=V.eachItem=V.unescapeJsonPointer=V.escapeJsonPointer=V.escapeFragment=V.unescapeFragment=V.schemaRefOrVal=V.schemaHasRulesButRef=V.schemaHasRules=V.checkUnknownRules=V.alwaysValidSchema=V.toHash=void 0;var se=q(),HE=zo();function qE(t){let e={};for(let r of t)e[r]=!0;return e}V.toHash=qE;function FE(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(eg(t,e),!tg(e,t.self.RULES.all))}V.alwaysValidSchema=FE;function eg(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]||og(t,`unknown keyword: "${s}"`)}V.checkUnknownRules=eg;function tg(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}V.schemaHasRules=tg;function VE(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}V.schemaHasRulesButRef=VE;function BE({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,se._)`${r}`}return(0,se._)`${t}${e}${(0,se.getProperty)(n)}`}V.schemaRefOrVal=BE;function KE(t){return rg(decodeURIComponent(t))}V.unescapeFragment=KE;function JE(t){return encodeURIComponent(Il(t))}V.escapeFragment=JE;function Il(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}V.escapeJsonPointer=Il;function rg(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}V.unescapeJsonPointer=rg;function GE(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}V.eachItem=GE;function Xh({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof se.Name?(s instanceof se.Name?t(o,s,i):e(o,s,i),i):s instanceof se.Name?(e(o,i,s),s):r(s,i);return a===se.Name&&!(c instanceof se.Name)?n(o,c):c}}V.mergeEvaluated={props:Xh({mergeNames:(t,e,r)=>t.if((0,se._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,se._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,se._)`${r} || {}`).code((0,se._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,se._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,se._)`${r} || {}`),zl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:ng}),items:Xh({mergeNames:(t,e,r)=>t.if((0,se._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,se._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,se._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,se._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function ng(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,se._)`{}`);return e!==void 0&&zl(t,r,e),r}V.evaluatedPropsToName=ng;function zl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,se._)`${e}${(0,se.getProperty)(n)}`,!0))}V.setEvaluated=zl;var Qh={};function WE(t,e){return t.scopeValue("func",{ref:e,code:Qh[e.code]||(Qh[e.code]=new HE._Code(e.code))})}V.useFunc=WE;var Cl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Cl||(V.Type=Cl={}));function YE(t,e,r){if(t instanceof se.Name){let n=e===Cl.Num;return r?n?(0,se._)`"[" + ${t} + "]"`:(0,se._)`"['" + ${t} + "']"`:n?(0,se._)`"/" + ${t}`:(0,se._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,se.getProperty)(t).toString():"/"+Il(t)}V.getErrorPath=YE;function og(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}V.checkStrictMode=og});var Gt=$(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});var Me=q(),XE={data:new Me.Name("data"),valCxt:new Me.Name("valCxt"),instancePath:new Me.Name("instancePath"),parentData:new Me.Name("parentData"),parentDataProperty:new Me.Name("parentDataProperty"),rootData:new Me.Name("rootData"),dynamicAnchors:new Me.Name("dynamicAnchors"),vErrors:new Me.Name("vErrors"),errors:new Me.Name("errors"),this:new Me.Name("this"),self:new Me.Name("self"),scope:new Me.Name("scope"),json:new Me.Name("json"),jsonPos:new Me.Name("jsonPos"),jsonLen:new Me.Name("jsonLen"),jsonPart:new Me.Name("jsonPart")};Nl.default=XE});var Lo=$(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.extendErrors=De.resetErrorsCount=De.reportExtraError=De.reportError=De.keyword$DataError=De.keywordError=void 0;var Q=q(),Ri=X(),qe=Gt();De.keywordError={message:({keyword:t})=>(0,Q.str)`must pass "${t}" keyword validation`};De.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Q.str)`"${t}" keyword must be ${e} ($data)`:(0,Q.str)`"${t}" keyword is invalid ($data)`};function QE(t,e=De.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=ag(t,e,r);n??(i||a)?sg(s,c):ig(o,(0,Q._)`[${c}]`)}De.reportError=QE;function e$(t,e=De.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=ag(t,e,r);sg(o,a),s||i||ig(n,qe.default.vErrors)}De.reportExtraError=e$;function t$(t,e){t.assign(qe.default.errors,e),t.if((0,Q._)`${qe.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Q._)`${qe.default.vErrors}.length`,e),()=>t.assign(qe.default.vErrors,null)))}De.resetErrorsCount=t$;function r$({gen:t,keyword:e,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let i=t.name("err");t.forRange("i",o,qe.default.errors,a=>{t.const(i,(0,Q._)`${qe.default.vErrors}[${a}]`),t.if((0,Q._)`${i}.instancePath === undefined`,()=>t.assign((0,Q._)`${i}.instancePath`,(0,Q.strConcat)(qe.default.instancePath,s.errorPath))),t.assign((0,Q._)`${i}.schemaPath`,(0,Q.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,Q._)`${i}.schema`,r),t.assign((0,Q._)`${i}.data`,n))})}De.extendErrors=r$;function sg(t,e){let r=t.const("err",e);t.if((0,Q._)`${qe.default.vErrors} === null`,()=>t.assign(qe.default.vErrors,(0,Q._)`[${r}]`),(0,Q._)`${qe.default.vErrors}.push(${r})`),t.code((0,Q._)`${qe.default.errors}++`)}function ig(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 Yr={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 ag(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Q._)`{}`:n$(t,e,r)}function n$(t,e,r={}){let{gen:n,it:o}=t,s=[o$(o,r),s$(t,r)];return i$(t,e,s),n.object(...s)}function o$({errorPath:t},{instancePath:e}){let r=e?(0,Q.str)`${t}${(0,Ri.getErrorPath)(e,Ri.Type.Str)}`:t;return[qe.default.instancePath,(0,Q.strConcat)(qe.default.instancePath,r)]}function s$({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,Q.str)`${e}/${t}`;return r&&(o=(0,Q.str)`${o}${(0,Ri.getErrorPath)(r,Ri.Type.Str)}`),[Yr.schemaPath,o]}function i$(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([Yr.keyword,o],[Yr.params,typeof e=="function"?e(t):e||(0,Q._)`{}`]),c.messages&&n.push([Yr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Yr.schema,i],[Yr.parentSchema,(0,Q._)`${l}${d}`],[qe.default.data,s]),u&&n.push([Yr.propertyName,u])}});var ug=$(Tn=>{"use strict";Object.defineProperty(Tn,"__esModule",{value:!0});Tn.boolOrEmptySchema=Tn.topBoolOrEmptySchema=void 0;var a$=Lo(),c$=q(),u$=Gt(),l$={message:"boolean schema is false"};function d$(t){let{gen:e,schema:r,validateName:n}=t;r===!1?cg(t,!1):typeof r=="object"&&r.$async===!0?e.return(u$.default.data):(e.assign((0,c$._)`${n}.errors`,null),e.return(!0))}Tn.topBoolOrEmptySchema=d$;function p$(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),cg(t)):r.var(e,!0)}Tn.boolOrEmptySchema=p$;function cg(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,a$.reportError)(o,l$,void 0,e)}});var Al=$(Pn=>{"use strict";Object.defineProperty(Pn,"__esModule",{value:!0});Pn.getRules=Pn.isJSONType=void 0;var f$=["string","number","integer","boolean","null","object","array"],m$=new Set(f$);function h$(t){return typeof t=="string"&&m$.has(t)}Pn.isJSONType=h$;function g$(){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:{}}}Pn.getRules=g$});var jl=$(lr=>{"use strict";Object.defineProperty(lr,"__esModule",{value:!0});lr.shouldUseRule=lr.shouldUseGroup=lr.schemaHasRulesForType=void 0;function _$({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&lg(t,n)}lr.schemaHasRulesForType=_$;function lg(t,e){return e.rules.some(r=>dg(t,r))}lr.shouldUseGroup=lg;function dg(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))}lr.shouldUseRule=dg});var Zo=$(Le=>{"use strict";Object.defineProperty(Le,"__esModule",{value:!0});Le.reportTypeError=Le.checkDataTypes=Le.checkDataType=Le.coerceAndCheckDataType=Le.getJSONTypes=Le.getSchemaTypes=Le.DataType=void 0;var y$=Al(),v$=jl(),x$=Lo(),U=q(),pg=X(),Rn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Rn||(Le.DataType=Rn={}));function S$(t){let e=fg(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Le.getSchemaTypes=S$;function fg(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(y$.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Le.getJSONTypes=fg;function k$(t,e){let{gen:r,data:n,opts:o}=t,s=b$(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,v$.schemaHasRulesForType)(t,e[0]));if(i){let a=Dl(e,n,o.strictNumbers,Rn.Wrong);r.if(a,()=>{s.length?w$(t,e,s):Ll(t)})}return i}Le.coerceAndCheckDataType=k$;var mg=new Set(["string","number","integer","boolean","null"]);function b$(t,e){return e?t.filter(r=>mg.has(r)||e==="array"&&r==="array"):[]}function w$(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(Dl(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,U._)`${a} !== undefined`);for(let u of r)(mg.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Ll(t),n.endIf(),n.if((0,U._)`${a} !== undefined`,()=>{n.assign(o,a),E$(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 b$({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,U._)`${e} !== undefined`,()=>t.assign((0,U._)`${e}[${r}]`,n))}function Ml(t,e,r,n=Rn.Correct){let o=n===Rn.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===Rn.Correct?s:(0,U.not)(s);function i(a=U.nil){return(0,U.and)((0,U._)`typeof ${e} == "number"`,a,r?(0,U._)`isFinite(${e})`:U.nil)}}Le.checkDataType=Ml;function Dl(t,e,r,n){if(t.length===1)return Ml(t[0],e,r,n);let o,s=(0,dg.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,Ml(i,e,r,n));return o}Le.checkDataTypes=Dl;var w$={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,U._)`{type: ${t}}`:(0,U._)`{type: ${e}}`};function Ll(t){let e=E$(t);(0,y$.reportError)(e,w$)}Le.reportTypeError=Ll;function E$(t){let{gen:e,data:r,schema:n}=t,o=(0,dg.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var hg=$(Oi=>{"use strict";Object.defineProperty(Oi,"__esModule",{value:!0});Oi.assignDefaults=void 0;var On=q(),$$=X();function T$(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)mg(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>mg(t,s,o.default))}Oi.assignDefaults=T$;function mg(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,On._)`${s}${(0,On.getProperty)(e)}`;if(o){(0,$$.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,On._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,On._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,On._)`${a} = ${(0,On.stringify)(r)}`)}});var dt=$(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});ne.validateUnion=ne.validateArray=ne.usePattern=ne.callValidateCode=ne.schemaProperties=ne.allSchemaProperties=ne.noPropertyInData=ne.propertyInData=ne.isOwnProperty=ne.hasPropFunc=ne.reportMissingProp=ne.checkMissingProp=ne.checkReportMissingProp=void 0;var le=q(),Zl=X(),dr=Gt(),P$=X();function R$(t,e){let{gen:r,data:n,it:o}=t;r.if(Hl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,le._)`${e}`},!0),t.error()})}ne.checkReportMissingProp=R$;function O$({gen:t,data:e,it:{opts:r}},n,o){return(0,le.or)(...n.map(s=>(0,le.and)(Hl(t,e,s,r.ownProperties),(0,le._)`${o} = ${s}`)))}ne.checkMissingProp=O$;function C$(t,e){t.setParams({missingProperty:e},!0),t.error()}ne.reportMissingProp=C$;function gg(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,le._)`Object.prototype.hasOwnProperty`})}ne.hasPropFunc=gg;function Ul(t,e,r){return(0,le._)`${gg(t)}.call(${e}, ${r})`}ne.isOwnProperty=Ul;function I$(t,e,r,n){let o=(0,le._)`${e}${(0,le.getProperty)(r)} !== undefined`;return n?(0,le._)`${o} && ${Ul(t,e,r)}`:o}ne.propertyInData=I$;function Hl(t,e,r,n){let o=(0,le._)`${e}${(0,le.getProperty)(r)} === undefined`;return n?(0,le.or)(o,(0,le.not)(Ul(t,e,r))):o}ne.noPropertyInData=Hl;function _g(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ne.allSchemaProperties=_g;function z$(t,e){return _g(e).filter(r=>!(0,Zl.alwaysValidSchema)(t,e[r]))}ne.schemaProperties=z$;function N$({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,le._)`${t}, ${e}, ${n}${o}`:e,d=[[dr.default.instancePath,(0,le.strConcat)(dr.default.instancePath,s)],[dr.default.parentData,i.parentData],[dr.default.parentDataProperty,i.parentDataProperty],[dr.default.rootData,dr.default.rootData]];i.opts.dynamicRef&&d.push([dr.default.dynamicAnchors,dr.default.dynamicAnchors]);let f=(0,le._)`${l}, ${r.object(...d)}`;return c!==le.nil?(0,le._)`${a}.call(${c}, ${f})`:(0,le._)`${a}(${f})`}ne.callValidateCode=N$;var A$=(0,le._)`new RegExp`;function j$({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,le._)`${o.code==="new RegExp"?A$:(0,P$.useFunc)(t,o)}(${r}, ${n})`})}ne.usePattern=j$;function M$(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,le._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Zl.Type.Num},s),e.if((0,le.not)(s),a)})}}ne.validateArray=M$;function D$(t){let{gen:e,schema:r,keyword:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Zl.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,le._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,le.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}ne.validateUnion=D$});var xg=$(zt=>{"use strict";Object.defineProperty(zt,"__esModule",{value:!0});zt.validateKeywordUsage=zt.validSchemaType=zt.funcKeywordCode=zt.macroKeywordCode=void 0;var Fe=q(),Xr=Gt(),L$=dt(),Z$=Do();function U$(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=vg(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Fe.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}zt.macroKeywordCode=U$;function H$(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;F$(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=vg(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&&yg(t),g(()=>t.error());else{let _=e.async?m():p();e.modifying&&yg(t),g(()=>q$(t,_))}}function m(){let _=n.let("ruleErrs",null);return n.try(()=>h((0,Fe._)`await `),x=>n.assign(d,!1).if((0,Fe._)`${x} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,Fe._)`${x}.errors`),()=>n.throw(x))),_}function p(){let _=(0,Fe._)`${l}.errors`;return n.assign(_,null),h(Fe.nil),_}function h(_=e.async?(0,Fe._)`await `:Fe.nil){let x=c.opts.passContext?Xr.default.this:Xr.default.self,S=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Fe._)`${_}${(0,L$.callValidateCode)(t,l,x,S)}`,e.modifying)}function g(_){var x;n.if((0,Fe.not)((x=e.valid)!==null&&x!==void 0?x:d),_)}}zt.funcKeywordCode=H$;function yg(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Fe._)`${n.parentData}[${n.parentDataProperty}]`))}function q$(t,e){let{gen:r}=t;r.if((0,Fe._)`Array.isArray(${e})`,()=>{r.assign(Xr.default.vErrors,(0,Fe._)`${Xr.default.vErrors} === null ? ${e} : ${Xr.default.vErrors}.concat(${e})`).assign(Xr.default.errors,(0,Fe._)`${Xr.default.vErrors}.length`),(0,Z$.extendErrors)(t)},()=>t.error())}function F$({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function vg(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Fe.stringify)(r)})}function V$(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}zt.validSchemaType=V$;function B$({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}zt.validateKeywordUsage=B$});var kg=$(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.extendSubschemaMode=pr.extendSubschemaData=pr.getSubschema=void 0;var Nt=q(),Sg=X();function K$(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,Nt._)`${t.schemaPath}${(0,Nt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Nt._)`${t.schemaPath}${(0,Nt.getProperty)(e)}${(0,Nt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Sg.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')}pr.getSubschema=K$;function J$(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=a.let("data",(0,Nt._)`${e.data}${(0,Nt.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Nt.str)`${u}${(0,Sg.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Nt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof Nt.Name?o:a.let("data",o,!0);c(u),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}pr.extendSubschemaData=J$;function G$(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}pr.extendSubschemaMode=G$});var ql=$((x1,bg)=>{"use strict";bg.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 Eg=$((S1,wg)=>{"use strict";var fr=wg.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};Ci(e,n,o,t,"",t)};fr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};fr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};fr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};fr.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Ci(t,e,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in fr.arrayKeywords)for(var f=0;f<d.length;f++)Ci(t,e,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in fr.propsKeywords){if(d&&typeof d=="object")for(var m in d)Ci(t,e,r,d[m],o+"/"+l+"/"+W$(m),s,o,l,n,m)}else(l in fr.keywords||t.allKeys&&!(l in fr.skipKeywords))&&Ci(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function W$(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Zo=$(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.getSchemaRefs=Xe.resolveUrl=Xe.normalizeId=Xe._getFullPath=Xe.getFullPath=Xe.inlineRef=void 0;var Y$=X(),X$=ql(),Q$=Eg(),eT=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function tT(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Fl(t):e?$g(t)<=e:!1}Xe.inlineRef=tT;var rT=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Fl(t){for(let e in t){if(rT.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Fl)||typeof r=="object"&&Fl(r))return!0}return!1}function $g(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!eT.has(r)&&(typeof t[r]=="object"&&(0,Y$.eachItem)(t[r],n=>e+=$g(n)),e===1/0))return 1/0}return e}function Tg(t,e="",r){r!==!1&&(e=Cn(e));let n=t.parse(e);return Pg(t,n)}Xe.getFullPath=Tg;function Pg(t,e){return t.serialize(e).split("#")[0]+"#"}Xe._getFullPath=Pg;var nT=/#\/?$/;function Cn(t){return t?t.replace(nT,""):""}Xe.normalizeId=Cn;function oT(t,e,r){return r=Cn(r),t.resolve(e,r)}Xe.resolveUrl=oT;var sT=/^[a-z_][-a-z0-9._]*$/i;function iT(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Cn(t[r]||e),s={"":o},i=Tg(n,o,!1),a={},c=new Set;return Q$(t,{allKeys:!0},(d,f,m,p)=>{if(p===void 0)return;let h=i+f,g=s[p];typeof d[r]=="string"&&(g=_.call(this,d[r])),x.call(this,d.$anchor),x.call(this,d.$dynamicAnchor),s[f]=g;function _(S){let w=this.opts.uriResolver.resolve;if(S=Cn(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!==Cn(h)&&(S[0]==="#"?(u(d,a[S],S),a[S]=d):this.refs[S]=h),S}function x(S){if(typeof S=="string"){if(!sT.test(S))throw new Error(`invalid anchor "${S}"`);_.call(this,`#${S}`)}}}),a;function u(d,f,m){if(f!==void 0&&!X$(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Xe.getSchemaRefs=iT});var qo=$(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.getData=mr.KeywordCxt=mr.validateFunctionCode=void 0;var zg=cg(),Rg=Lo(),Bl=jl(),Ii=Lo(),aT=hg(),Ho=xg(),Vl=kg(),z=q(),D=Gt(),cT=Zo(),Wt=X(),Uo=Do();function uT(t){if(jg(t)&&(Mg(t),Ag(t))){pT(t);return}Ng(t,()=>(0,zg.topBoolOrEmptySchema)(t))}mr.validateFunctionCode=uT;function Ng({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"; ${Og(r,o)}`),dT(t,o),t.code(s)}):t.func(e,(0,z._)`${D.default.data}, ${lT(o)}`,n.$async,()=>t.code(Og(r,o)).code(s))}function lT(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 dT(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 pT(t){let{schema:e,opts:r,gen:n}=t;Ng(t,()=>{r.$comment&&e.$comment&&Lg(t),_T(t),n.let(D.default.vErrors,null),n.let(D.default.errors,0),r.unevaluated&&fT(t),Dg(t),xT(t)})}function fT(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 Og(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 mT(t,e){if(jg(t)&&(Mg(t),Ag(t))){hT(t,e);return}(0,zg.boolOrEmptySchema)(t,e)}function Ag({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function jg(t){return typeof t.schema!="boolean"}function hT(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&Lg(t),yT(t),vT(t);let s=n.const("_errs",D.default.errors);Dg(t,s),n.var(e,(0,z._)`${s} === ${D.default.errors}`)}function Mg(t){(0,Wt.checkUnknownRules)(t),gT(t)}function Dg(t,e){if(t.opts.jtd)return Cg(t,[],!1,e);let r=(0,Rg.getSchemaTypes)(t.schema),n=(0,Rg.coerceAndCheckDataType)(t,r);Cg(t,r,!n,e)}function gT(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Wt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function _T(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Wt.checkStrictMode)(t,"default is ignored in the schema root")}function yT(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,cT.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function vT(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Lg({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 xT(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&&ST(t),e.return((0,z._)`${D.default.errors} === 0`))}function ST({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 Cg(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Wt.schemaHasRulesButRef)(s,l))){o.block(()=>Ug(t,"$ref",l.all.$ref.definition));return}c.jtd||kT(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Bl.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Ii.checkDataType)(f.type,i,c.strictNumbers)),Ig(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,Ii.reportTypeError)(t)),o.endIf()):Ig(t,f),a||o.if((0,z._)`${D.default.errors} === ${n||0}`))}}function Ig(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,aT.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Bl.shouldUseRule)(n,s)&&Ug(t,s.keyword,s.definition,e.type)})}function kT(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(bT(t,e),t.opts.allowUnionTypes||wT(t,e),ET(t,t.dataTypes))}function bT(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Zg(t.dataTypes,r)||Kl(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),TT(t,e)}}function wT(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Kl(t,"use allowUnionTypes to allow union type keyword")}function ET(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Bl.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>$T(e,i))&&Kl(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function $T(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Zg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function TT(t,e){let r=[];for(let n of t.dataTypes)Zg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Kl(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Wt.checkStrictMode)(t,e,t.opts.strictTypes)}var zi=class{constructor(e,r,n){if((0,Ho.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Wt.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",Hg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Ho.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?Uo.reportExtraError:Uo.reportError)(this,this.def.error,r)}$dataError(){(0,Uo.reportError)(this,this.def.$dataError||Uo.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Uo.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=z.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=z.nil,r=z.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,z.or)((0,z._)`${o} === undefined`,r)),e!==z.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==z.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,z.or)(i(),a());function i(){if(n.length){if(!(r instanceof z.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,z._)`${(0,Ii.checkDataTypes)(c,r,s.opts.strictNumbers,Ii.DataType.Wrong)}`}return z.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,z._)`!${c}(${r})`}return z.nil}}subschema(e,r){let n=(0,Vl.getSubschema)(this.it,e);(0,Vl.extendSubschemaData)(n,this.it,e),(0,Vl.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return mT(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Wt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Wt.mergeEvaluated.items(o,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(e,z.Name)),!0}};mr.KeywordCxt=zi;function Ug(t,e,r,n){let o=new zi(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Ho.funcKeywordCode)(o,r):"macro"in r?(0,Ho.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Ho.funcKeywordCode)(o,r)}var PT=/^\/(?:[^~]|~0|~1)*$/,RT=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Hg(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return D.default.rootData;if(t[0]==="/"){if(!PT.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=D.default.rootData}else{let u=RT.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,z._)`${s}${(0,z.getProperty)((0,Wt.unescapeJsonPointer)(u))}`,i=(0,z._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}mr.getData=Hg});var Ni=$(Gl=>{"use strict";Object.defineProperty(Gl,"__esModule",{value:!0});var Jl=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Gl.default=Jl});var Fo=$(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});var Wl=Zo(),Yl=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Wl.resolveUrl)(e,r,n),this.missingSchema=(0,Wl.normalizeId)((0,Wl.getFullPath)(e,this.missingRef))}};Xl.default=Yl});var ji=$(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.resolveSchema=pt.getCompilingSchema=pt.resolveRef=pt.compileSchema=pt.SchemaEnv=void 0;var St=q(),OT=Ni(),Qr=Gt(),kt=Zo(),qg=X(),CT=qo(),In=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=In;function ed(t){let e=Fg.call(this,t);if(e)return e;let r=(0,kt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new St.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:OT.default,code:(0,St._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Qr.default.data,parentData:Qr.default.parentData,parentDataProperty:Qr.default.parentDataProperty,dataNames:[Qr.default.data],dataPathArr:[St.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,St.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:St.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,St._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,CT.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Qr.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${Qr.default.self}`,`${Qr.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof St.Name?void 0:p,items:h instanceof St.Name?void 0:h,dynamicProps:p instanceof St.Name,dynamicItems:h instanceof St.Name},m.source&&(m.source.evaluated=(0,St.stringify)(m.evaluated))}return t.validate=m,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}pt.compileSchema=ed;function IT(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=AT.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 In({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=zT.call(this,s)}pt.resolveRef=IT;function zT(t){return(0,kt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:ed.call(this,t)}function Fg(t){for(let e of this._compilations)if(NT(e,t))return e}pt.getCompilingSchema=Fg;function NT(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function AT(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Ai.call(this,t,e)}function Ai(t,e){let r=this.opts.uriResolver.parse(e),n=(0,kt._getFullPath)(this.opts.uriResolver,r),o=(0,kt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Ql.call(this,r,t);let s=(0,kt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Ai.call(this,t,i);return typeof a?.schema!="object"?void 0:Ql.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||ed.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 In({schema:a,schemaId:c,root:t,baseId:o})}return Ql.call(this,r,i)}}pt.resolveSchema=Ai;var jT=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Ql(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,qg.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!jT.has(a)&&u&&(e=(0,kt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,qg.schemaHasRulesButRef)(r,this.RULES)){let a=(0,kt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Ai.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new In({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var Vg=$((T1,MT)=>{MT.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 rd=$((P1,Gg)=>{"use strict";var DT=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Kg=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 td(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 LT=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Bg(t){return t.length=0,!0}function ZT(t,e,r){if(t.length){let n=td(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function UT(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=ZT;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=Bg}else{o.push(u);continue}}return o.length&&(a===Bg?r.zone=o.join(""):i?n.push(o.join("")):n.push(td(o))),r.address=n.join(""),r}function Jg(t){if(HT(t,":")<2)return{host:t,isIPV6:!1};let e=UT(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 HT(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function qT(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 FT(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 VT(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!Kg(r)){let n=Jg(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}Gg.exports={nonSimpleDomain:LT,recomposeAuthority:VT,normalizeComponentEncoding:FT,removeDotSegments:qT,isIPv4:Kg,isUUID:DT,normalizeIPv6:Jg,stringArrayToHexStripped:td}});var e_=$((R1,Qg)=>{"use strict";var{isUUID:BT}=rd(),KT=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,JT=["http","https","ws","wss","urn","urn:uuid"];function GT(t){return JT.indexOf(t)!==-1}function nd(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 Wg(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Yg(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 WT(t){return t.secure=nd(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function YT(t){if((t.port===(nd(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 XT(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(KT);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=od(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function QT(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=od(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 e0(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!BT(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function t0(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Xg={scheme:"http",domainHost:!0,parse:Wg,serialize:Yg},r0={scheme:"https",domainHost:Xg.domainHost,parse:Wg,serialize:Yg},Mi={scheme:"ws",domainHost:!0,parse:WT,serialize:YT},n0={scheme:"wss",domainHost:Mi.domainHost,parse:Mi.parse,serialize:Mi.serialize},o0={scheme:"urn",parse:XT,serialize:QT,skipNormalize:!0},s0={scheme:"urn:uuid",parse:e0,serialize:t0,skipNormalize:!0},Di={http:Xg,https:r0,ws:Mi,wss:n0,urn:o0,"urn:uuid":s0};Object.setPrototypeOf(Di,null);function od(t){return t&&(Di[t]||Di[t.toLowerCase()])||void 0}Qg.exports={wsIsSecure:nd,SCHEMES:Di,isValidSchemeName:GT,getSchemeHandler:od}});var n_=$((O1,Zi)=>{"use strict";var{normalizeIPv6:i0,removeDotSegments:Vo,recomposeAuthority:a0,normalizeComponentEncoding:Li,isIPv4:c0,nonSimpleDomain:u0}=rd(),{SCHEMES:l0,getSchemeHandler:t_}=e_();function d0(t,e){return typeof t=="string"?t=At(Yt(t,e),e):typeof t=="object"&&(t=Yt(At(t,e),e)),t}function p0(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=r_(Yt(t,n),Yt(e,n),n,!0);return n.skipEscape=!0,At(o,n)}function r_(t,e,r,n){let o={};return n||(t=Yt(At(t,r),r),e=Yt(At(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Vo(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=Vo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Vo(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=Vo(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 f0(t,e,r){return typeof t=="string"?(t=unescape(t),t=At(Li(Yt(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=At(Li(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=At(Li(Yt(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=At(Li(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function At(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),o=[],s=t_(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=a0(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=Vo(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 m0=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Yt(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(m0);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(c0(n.host)===!1){let c=i0(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=t_(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&u0(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 sd={SCHEMES:l0,normalize:d0,resolve:p0,resolveComponent:r_,equal:f0,serialize:At,parse:Yt};Zi.exports=sd;Zi.exports.default=sd;Zi.exports.fastUri=sd});var s_=$(id=>{"use strict";Object.defineProperty(id,"__esModule",{value:!0});var o_=n_();o_.code='require("ajv/dist/runtime/uri").default';id.default=o_});var f_=$(Ie=>{"use strict";Object.defineProperty(Ie,"__esModule",{value:!0});Ie.CodeGen=Ie.Name=Ie.nil=Ie.stringify=Ie.str=Ie._=Ie.KeywordCxt=void 0;var h0=qo();Object.defineProperty(Ie,"KeywordCxt",{enumerable:!0,get:function(){return h0.KeywordCxt}});var zn=q();Object.defineProperty(Ie,"_",{enumerable:!0,get:function(){return zn._}});Object.defineProperty(Ie,"str",{enumerable:!0,get:function(){return zn.str}});Object.defineProperty(Ie,"stringify",{enumerable:!0,get:function(){return zn.stringify}});Object.defineProperty(Ie,"nil",{enumerable:!0,get:function(){return zn.nil}});Object.defineProperty(Ie,"Name",{enumerable:!0,get:function(){return zn.Name}});Object.defineProperty(Ie,"CodeGen",{enumerable:!0,get:function(){return zn.CodeGen}});var g0=Ni(),l_=Fo(),_0=Al(),Bo=ji(),y0=q(),Ko=Zo(),Ui=Lo(),cd=X(),i_=Vg(),v0=s_(),d_=(t,e)=>new RegExp(t,e);d_.code="new RegExp";var x0=["removeAdditional","useDefaults","coerceTypes"],S0=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),k0={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."},b0={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},a_=200;function w0(t){var e,r,n,o,s,i,a,c,u,l,d,f,m,p,h,g,_,x,S,w,R,oe,ge,Ae,Ut;let ht=t.strict,be=(e=t.code)===null||e===void 0?void 0:e.optimize,br=be===!0||be===void 0?1:be||0,Ze=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:d_,Oa=(o=t.uriResolver)!==null&&o!==void 0?o:v0.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:ht)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:ht)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:ht)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:ht)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:ht)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:br,regExp:Ze}:{optimize:br,regExp:Ze},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:a_,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:a_,meta:(_=t.meta)!==null&&_!==void 0?_:!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:(oe=t.validateSchema)!==null&&oe!==void 0?oe:!0,validateFormats:(ge=t.validateFormats)!==null&&ge!==void 0?ge:!0,unicodeRegExp:(Ae=t.unicodeRegExp)!==null&&Ae!==void 0?Ae:!0,int32range:(Ut=t.int32range)!==null&&Ut!==void 0?Ut:!0,uriResolver:Oa}}var Jo=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...w0(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new y0.ValueScope({scope:{},prefixes:S0,es5:r,lines:n}),this.logger=O0(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,_0.getRules)(),c_.call(this,k0,e,"NOT SUPPORTED"),c_.call(this,b0,e,"DEPRECATED","warn"),this._metaOpts=P0.call(this),e.formats&&$0.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&T0.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),E0.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=i_;n==="id"&&(o={...i_},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 l_.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,Ko.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,o,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let o=this.validate(n,e);if(!o&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return o}getSchema(e){let r;for(;typeof(r=u_.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Bo.SchemaEnv({schema:{},schemaId:n});if(r=Bo.resolveSchema.call(this,o,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=u_.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,Ko.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(I0.call(this,n,r),!r)return(0,cd.eachItem)(n,s=>ad.call(this,s)),this;N0.call(this,r);let o={...r,type:(0,Ui.getJSONTypes)(r.type),schemaType:(0,Ui.getJSONTypes)(r.schemaType)};return(0,cd.eachItem)(n,o.type.length===0?s=>ad.call(this,s,o):s=>o.type.forEach(i=>ad.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]=p_(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,Ko.normalizeId)(i||n);let u=Ko.getSchemaRefs.call(this,e,n);return c=new Bo.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):Bo.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{Bo.compileSchema.call(this,e)}finally{this.opts=r}}};Jo.ValidationError=g0.default;Jo.MissingRefError=l_.default;Ie.default=Jo;function c_(t,e,r,n="error"){for(let o in t){let s=o;s in e&&this.logger[n](`${r}: option ${o}. ${t[s]}`)}}function u_(t){return t=(0,Ko.normalizeId)(t),this.schemas[t]||this.refs[t]}function E0(){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 $0(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function T0(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 P0(){let t={...this.opts};for(let e of x0)delete t[e];return t}var R0={log(){},warn(){},error(){}};function O0(t){if(t===!1)return R0;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 C0=/^[a-z_$][a-z0-9_$:-]*$/i;function I0(t,e){let{RULES:r}=this;if((0,cd.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!C0.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 ad(t,e,r){var n;let o=e?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(i||(i={type:r,rules:[]},s.rules.push(i)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,Ui.getJSONTypes)(e.type),schemaType:(0,Ui.getJSONTypes)(e.schemaType)}};e.before?z0.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 z0(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 N0(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=p_(e)),t.validateSchema=this.compile(e,!0))}var A0={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function p_(t){return{anyOf:[t,A0]}}});var m_=$(ud=>{"use strict";Object.defineProperty(ud,"__esModule",{value:!0});var j0={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};ud.default=j0});var y_=$(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.callRef=en.getValidate=void 0;var M0=Fo(),h_=dt(),Qe=q(),Nn=Gt(),g_=ji(),Hi=X(),D0={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=g_.resolveRef.call(c,u,o,r);if(l===void 0)throw new M0.default(n.opts.uriResolver,o,r);if(l instanceof g_.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return qi(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return qi(t,(0,Qe._)`${p}.validate`,u,u.$async)}function f(p){let h=__(t,p);qi(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"),_=t.subschema({schema:p,dataTypes:[],schemaPath:Qe.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(_),t.ok(g)}}};function __(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Qe._)`${r.scopeValue("wrapper",{ref:e})}.validate`}en.getValidate=__;function qi(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Nn.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,h_.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,h_.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,Qe._)`${p}.errors`;o.assign(Nn.default.vErrors,(0,Qe._)`${Nn.default.vErrors} === null ? ${h} : ${Nn.default.vErrors}.concat(${h})`),o.assign(Nn.default.errors,(0,Qe._)`${Nn.default.vErrors}.length`)}function m(p){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=Hi.mergeEvaluated.props(o,g.props,s.props));else{let _=o.var("props",(0,Qe._)`${p}.evaluated.props`);s.props=Hi.mergeEvaluated.props(o,_,s.props,Qe.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Hi.mergeEvaluated.items(o,g.items,s.items));else{let _=o.var("items",(0,Qe._)`${p}.evaluated.items`);s.items=Hi.mergeEvaluated.items(o,_,s.items,Qe.Name)}}}en.callRef=qi;en.default=D0});var v_=$(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});var L0=m_(),Z0=y_(),U0=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",L0.default,Z0.default];ld.default=U0});var x_=$(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});var Fi=q(),hr=Fi.operators,Vi={maximum:{okStr:"<=",ok:hr.LTE,fail:hr.GT},minimum:{okStr:">=",ok:hr.GTE,fail:hr.LT},exclusiveMaximum:{okStr:"<",ok:hr.LT,fail:hr.GTE},exclusiveMinimum:{okStr:">",ok:hr.GT,fail:hr.LTE}},H0={message:({keyword:t,schemaCode:e})=>(0,Fi.str)`must be ${Vi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Fi._)`{comparison: ${Vi[t].okStr}, limit: ${e}}`},q0={keyword:Object.keys(Vi),type:"number",schemaType:"number",$data:!0,error:H0,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Fi._)`${r} ${Vi[e].fail} ${n} || isNaN(${r})`)}};dd.default=q0});var S_=$(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});var Go=q(),F0={message:({schemaCode:t})=>(0,Go.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Go._)`{multipleOf: ${t}}`},V0={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:F0,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Go._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Go._)`${i} !== parseInt(${i})`;t.fail$data((0,Go._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};pd.default=V0});var b_=$(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});function k_(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}fd.default=k_;k_.code='require("ajv/dist/runtime/ucs2length").default'});var w_=$(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});var tn=q(),B0=X(),K0=b_(),J0={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,tn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,tn._)`{limit: ${t}}`},G0={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:J0,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?tn.operators.GT:tn.operators.LT,i=o.opts.unicode===!1?(0,tn._)`${r}.length`:(0,tn._)`${(0,B0.useFunc)(t.gen,K0.default)}(${r})`;t.fail$data((0,tn._)`${i} ${s} ${n}`)}};md.default=G0});var E_=$(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var W0=dt(),Y0=X(),An=q(),X0={message:({schemaCode:t})=>(0,An.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,An._)`{pattern: ${t}}`},Q0={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:X0,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,An._)`new RegExp`:(0,Y0.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,An._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,An._)`!${l}`)}else{let c=(0,W0.usePattern)(t,o);t.fail$data((0,An._)`!${c}.test(${r})`)}}};hd.default=Q0});var $_=$(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var Wo=q(),eP={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Wo.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Wo._)`{limit: ${t}}`},tP={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:eP,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Wo.operators.GT:Wo.operators.LT;t.fail$data((0,Wo._)`Object.keys(${r}).length ${o} ${n}`)}};gd.default=tP});var T_=$(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var Yo=dt(),Xo=q(),rP=X(),nP={message:({params:{missingProperty:t}})=>(0,Xo.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Xo._)`{missingProperty: ${t}}`},oP={keyword:"required",type:"object",schemaType:"array",$data:!0,error:nP,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,_=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,rP.checkStrictMode)(i,_,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(Xo.nil,d);else for(let m of r)(0,Yo.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,Yo.checkMissingProp)(t,r,m)),(0,Yo.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,Yo.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,Yo.propertyInData)(e,o,m,a.ownProperties)),e.if((0,Xo.not)(p),()=>{t.error(),e.break()})},Xo.nil)}}};_d.default=oP});var P_=$(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var Qo=q(),sP={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Qo.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Qo._)`{limit: ${t}}`},iP={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:sP,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?Qo.operators.GT:Qo.operators.LT;t.fail$data((0,Qo._)`${r}.length ${o} ${n}`)}};yd.default=iP});var Bi=$(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var R_=ql();R_.code='require("ajv/dist/runtime/equal").default';vd.default=R_});var O_=$(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var xd=Lo(),ze=q(),aP=X(),cP=Bi(),uP={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}}`},lP={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:uP,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,xd.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"),_=(0,xd.checkDataTypes)(u,g,a.opts.strictNumbers,xd.DataType.Wrong),x=e.const("indices",(0,ze._)`{}`);e.for((0,ze._)`;${p}--;`,()=>{e.let(g,(0,ze._)`${r}[${p}]`),e.if(_,(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,aP.useFunc)(e,cP.default),_=e.name("outer");e.label(_).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(_)})))}}};Sd.default=lP});var C_=$(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var kd=q(),dP=X(),pP=Bi(),fP={message:"must be equal to constant",params:({schemaCode:t})=>(0,kd._)`{allowedValue: ${t}}`},mP={keyword:"const",$data:!0,error:fP,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,kd._)`!${(0,dP.useFunc)(e,pP.default)}(${r}, ${o})`):t.fail((0,kd._)`${s} !== ${r}`)}};bd.default=mP});var I_=$(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var es=q(),hP=X(),gP=Bi(),_P={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,es._)`{allowedValues: ${t}}`},yP={keyword:"enum",schemaType:"array",$data:!0,error:_P,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t;if(!n&&o.length===0)throw new Error("enum must have non-empty array");let a=o.length>=i.opts.loopEnum,c,u=()=>c??(c=(0,hP.useFunc)(e,gP.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,es.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,es._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,es._)`${u()}(${r}, ${m}[${p}])`:(0,es._)`${r} === ${h}`}}};wd.default=yP});var z_=$(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var vP=x_(),xP=S_(),SP=w_(),kP=E_(),bP=$_(),wP=T_(),EP=P_(),$P=O_(),TP=C_(),PP=I_(),RP=[vP.default,xP.default,SP.default,kP.default,bP.default,wP.default,EP.default,$P.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},TP.default,PP.default];Ed.default=RP});var Td=$(ts=>{"use strict";Object.defineProperty(ts,"__esModule",{value:!0});ts.validateAdditionalItems=void 0;var rn=q(),$d=X(),OP={message:({params:{len:t}})=>(0,rn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,rn._)`{limit: ${t}}`},CP={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:OP,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,$d.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}N_(t,n)}};function N_(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,rn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,rn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,$d.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,rn._)`${a} <= ${e.length}`);r.if((0,rn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:$d.Type.Num},u),i.allErrors||r.if((0,rn.not)(u),()=>r.break())})}}ts.validateAdditionalItems=N_;ts.default=CP});var Pd=$(rs=>{"use strict";Object.defineProperty(rs,"__esModule",{value:!0});rs.validateTuple=void 0;var A_=q(),Ki=X(),IP=dt(),zP={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return j_(t,"additionalItems",e);r.items=!0,!(0,Ki.alwaysValidSchema)(r,e)&&t.ok((0,IP.validateArray)(t))}};function j_(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;l(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Ki.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,A_._)`${s}.length`);r.forEach((d,f)=>{(0,Ki.alwaysValidSchema)(a,d)||(n.if((0,A_._)`${u} > ${f}`,()=>t.subschema({keyword:i,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:m}=a,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,Ki.checkStrictMode)(a,g,f.strictTuples)}}}rs.validateTuple=j_;rs.default=zP});var M_=$(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var NP=Pd(),AP={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,NP.validateTuple)(t,"items")};Rd.default=AP});var L_=$(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var D_=q(),jP=X(),MP=dt(),DP=Td(),LP={message:({params:{len:t}})=>(0,D_.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,D_._)`{limit: ${t}}`},ZP={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:LP,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,jP.alwaysValidSchema)(n,e)&&(o?(0,DP.validateAdditionalItems)(t,o):t.ok((0,MP.validateArray)(t)))}};Od.default=ZP});var Z_=$(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});var ft=q(),Ji=X(),UP={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}}`},HP={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:UP,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,i,a,{minContains:c,maxContains:u}=n;s.opts.next?(i=c===void 0?1:c,a=u):i=1;let l=e.const("len",(0,ft._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Ji.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Ji.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Ji.alwaysValidSchema)(s,r)){let h=(0,ft._)`${l} >= ${i}`;a!==void 0&&(h=(0,ft._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?m(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,ft._)`${o}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),g=e.let("count",0);m(h,()=>e.if(h,()=>p(g)))}function m(h,g){e.forRange("i",0,l,_=>{t.subschema({keyword:"contains",dataProp:_,dataPropType:Ji.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,ft._)`${h}++`),a===void 0?e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,ft._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Cd.default=HP});var q_=$(jt=>{"use strict";Object.defineProperty(jt,"__esModule",{value:!0});jt.validateSchemaDeps=jt.validatePropertyDeps=jt.error=void 0;var Id=q(),qP=X(),ns=dt();jt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Id.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Id._)`{property: ${t},
6
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,U._)`[${o}]`)}}}function E$({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,U._)`${e} !== undefined`,()=>t.assign((0,U._)`${e}[${r}]`,n))}function Ml(t,e,r,n=Rn.Correct){let o=n===Rn.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===Rn.Correct?s:(0,U.not)(s);function i(a=U.nil){return(0,U.and)((0,U._)`typeof ${e} == "number"`,a,r?(0,U._)`isFinite(${e})`:U.nil)}}Le.checkDataType=Ml;function Dl(t,e,r,n){if(t.length===1)return Ml(t[0],e,r,n);let o,s=(0,pg.toHash)(t);if(s.array&&s.object){let i=(0,U._)`typeof ${e} != "object"`;o=s.null?i:(0,U._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=U.nil;s.number&&delete s.integer;for(let i in s)o=(0,U.and)(o,Ml(i,e,r,n));return o}Le.checkDataTypes=Dl;var $$={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,U._)`{type: ${t}}`:(0,U._)`{type: ${e}}`};function Ll(t){let e=T$(t);(0,x$.reportError)(e,$$)}Le.reportTypeError=Ll;function T$(t){let{gen:e,data:r,schema:n}=t,o=(0,pg.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var gg=$(Oi=>{"use strict";Object.defineProperty(Oi,"__esModule",{value:!0});Oi.assignDefaults=void 0;var On=q(),P$=X();function R$(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)hg(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>hg(t,s,o.default))}Oi.assignDefaults=R$;function hg(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,On._)`${s}${(0,On.getProperty)(e)}`;if(o){(0,P$.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,On._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,On._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,On._)`${a} = ${(0,On.stringify)(r)}`)}});var dt=$(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});ne.validateUnion=ne.validateArray=ne.usePattern=ne.callValidateCode=ne.schemaProperties=ne.allSchemaProperties=ne.noPropertyInData=ne.propertyInData=ne.isOwnProperty=ne.hasPropFunc=ne.reportMissingProp=ne.checkMissingProp=ne.checkReportMissingProp=void 0;var le=q(),Zl=X(),dr=Gt(),O$=X();function C$(t,e){let{gen:r,data:n,it:o}=t;r.if(Hl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,le._)`${e}`},!0),t.error()})}ne.checkReportMissingProp=C$;function I$({gen:t,data:e,it:{opts:r}},n,o){return(0,le.or)(...n.map(s=>(0,le.and)(Hl(t,e,s,r.ownProperties),(0,le._)`${o} = ${s}`)))}ne.checkMissingProp=I$;function z$(t,e){t.setParams({missingProperty:e},!0),t.error()}ne.reportMissingProp=z$;function _g(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,le._)`Object.prototype.hasOwnProperty`})}ne.hasPropFunc=_g;function Ul(t,e,r){return(0,le._)`${_g(t)}.call(${e}, ${r})`}ne.isOwnProperty=Ul;function N$(t,e,r,n){let o=(0,le._)`${e}${(0,le.getProperty)(r)} !== undefined`;return n?(0,le._)`${o} && ${Ul(t,e,r)}`:o}ne.propertyInData=N$;function Hl(t,e,r,n){let o=(0,le._)`${e}${(0,le.getProperty)(r)} === undefined`;return n?(0,le.or)(o,(0,le.not)(Ul(t,e,r))):o}ne.noPropertyInData=Hl;function yg(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ne.allSchemaProperties=yg;function A$(t,e){return yg(e).filter(r=>!(0,Zl.alwaysValidSchema)(t,e[r]))}ne.schemaProperties=A$;function j$({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,le._)`${t}, ${e}, ${n}${o}`:e,d=[[dr.default.instancePath,(0,le.strConcat)(dr.default.instancePath,s)],[dr.default.parentData,i.parentData],[dr.default.parentDataProperty,i.parentDataProperty],[dr.default.rootData,dr.default.rootData]];i.opts.dynamicRef&&d.push([dr.default.dynamicAnchors,dr.default.dynamicAnchors]);let f=(0,le._)`${l}, ${r.object(...d)}`;return c!==le.nil?(0,le._)`${a}.call(${c}, ${f})`:(0,le._)`${a}(${f})`}ne.callValidateCode=j$;var M$=(0,le._)`new RegExp`;function D$({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,le._)`${o.code==="new RegExp"?M$:(0,O$.useFunc)(t,o)}(${r}, ${n})`})}ne.usePattern=D$;function L$(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,le._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Zl.Type.Num},s),e.if((0,le.not)(s),a)})}}ne.validateArray=L$;function Z$(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,Zl.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,le._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,le.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}ne.validateUnion=Z$});var Sg=$(zt=>{"use strict";Object.defineProperty(zt,"__esModule",{value:!0});zt.validateKeywordUsage=zt.validSchemaType=zt.funcKeywordCode=zt.macroKeywordCode=void 0;var Fe=q(),Xr=Gt(),U$=dt(),H$=Lo();function q$(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=xg(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Fe.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}zt.macroKeywordCode=q$;function F$(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;B$(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=xg(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&&vg(t),g(()=>t.error());else{let _=e.async?m():p();e.modifying&&vg(t),g(()=>V$(t,_))}}function m(){let _=n.let("ruleErrs",null);return n.try(()=>h((0,Fe._)`await `),x=>n.assign(d,!1).if((0,Fe._)`${x} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,Fe._)`${x}.errors`),()=>n.throw(x))),_}function p(){let _=(0,Fe._)`${l}.errors`;return n.assign(_,null),h(Fe.nil),_}function h(_=e.async?(0,Fe._)`await `:Fe.nil){let x=c.opts.passContext?Xr.default.this:Xr.default.self,S=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Fe._)`${_}${(0,U$.callValidateCode)(t,l,x,S)}`,e.modifying)}function g(_){var x;n.if((0,Fe.not)((x=e.valid)!==null&&x!==void 0?x:d),_)}}zt.funcKeywordCode=F$;function vg(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Fe._)`${n.parentData}[${n.parentDataProperty}]`))}function V$(t,e){let{gen:r}=t;r.if((0,Fe._)`Array.isArray(${e})`,()=>{r.assign(Xr.default.vErrors,(0,Fe._)`${Xr.default.vErrors} === null ? ${e} : ${Xr.default.vErrors}.concat(${e})`).assign(Xr.default.errors,(0,Fe._)`${Xr.default.vErrors}.length`),(0,H$.extendErrors)(t)},()=>t.error())}function B$({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function xg(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Fe.stringify)(r)})}function K$(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}zt.validSchemaType=K$;function J$({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}zt.validateKeywordUsage=J$});var bg=$(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.extendSubschemaMode=pr.extendSubschemaData=pr.getSubschema=void 0;var Nt=q(),kg=X();function G$(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,Nt._)`${t.schemaPath}${(0,Nt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Nt._)`${t.schemaPath}${(0,Nt.getProperty)(e)}${(0,Nt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,kg.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')}pr.getSubschema=G$;function W$(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=a.let("data",(0,Nt._)`${e.data}${(0,Nt.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Nt.str)`${u}${(0,kg.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Nt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof Nt.Name?o:a.let("data",o,!0);c(u),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}pr.extendSubschemaData=W$;function Y$(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}pr.extendSubschemaMode=Y$});var ql=$((x1,wg)=>{"use strict";wg.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 $g=$((S1,Eg)=>{"use strict";var fr=Eg.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};Ci(e,n,o,t,"",t)};fr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};fr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};fr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};fr.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Ci(t,e,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in fr.arrayKeywords)for(var f=0;f<d.length;f++)Ci(t,e,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in fr.propsKeywords){if(d&&typeof d=="object")for(var m in d)Ci(t,e,r,d[m],o+"/"+l+"/"+X$(m),s,o,l,n,m)}else(l in fr.keywords||t.allKeys&&!(l in fr.skipKeywords))&&Ci(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function X$(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Uo=$(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.getSchemaRefs=Xe.resolveUrl=Xe.normalizeId=Xe._getFullPath=Xe.getFullPath=Xe.inlineRef=void 0;var Q$=X(),eT=ql(),tT=$g(),rT=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function nT(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Fl(t):e?Tg(t)<=e:!1}Xe.inlineRef=nT;var oT=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Fl(t){for(let e in t){if(oT.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Fl)||typeof r=="object"&&Fl(r))return!0}return!1}function Tg(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!rT.has(r)&&(typeof t[r]=="object"&&(0,Q$.eachItem)(t[r],n=>e+=Tg(n)),e===1/0))return 1/0}return e}function Pg(t,e="",r){r!==!1&&(e=Cn(e));let n=t.parse(e);return Rg(t,n)}Xe.getFullPath=Pg;function Rg(t,e){return t.serialize(e).split("#")[0]+"#"}Xe._getFullPath=Rg;var sT=/#\/?$/;function Cn(t){return t?t.replace(sT,""):""}Xe.normalizeId=Cn;function iT(t,e,r){return r=Cn(r),t.resolve(e,r)}Xe.resolveUrl=iT;var aT=/^[a-z_][-a-z0-9._]*$/i;function cT(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Cn(t[r]||e),s={"":o},i=Pg(n,o,!1),a={},c=new Set;return tT(t,{allKeys:!0},(d,f,m,p)=>{if(p===void 0)return;let h=i+f,g=s[p];typeof d[r]=="string"&&(g=_.call(this,d[r])),x.call(this,d.$anchor),x.call(this,d.$dynamicAnchor),s[f]=g;function _(S){let w=this.opts.uriResolver.resolve;if(S=Cn(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!==Cn(h)&&(S[0]==="#"?(u(d,a[S],S),a[S]=d):this.refs[S]=h),S}function x(S){if(typeof S=="string"){if(!aT.test(S))throw new Error(`invalid anchor "${S}"`);_.call(this,`#${S}`)}}}),a;function u(d,f,m){if(f!==void 0&&!eT(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Xe.getSchemaRefs=cT});var Fo=$(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.getData=mr.KeywordCxt=mr.validateFunctionCode=void 0;var Ng=ug(),Og=Zo(),Bl=jl(),Ii=Zo(),uT=gg(),qo=Sg(),Vl=bg(),z=q(),D=Gt(),lT=Uo(),Wt=X(),Ho=Lo();function dT(t){if(Mg(t)&&(Dg(t),jg(t))){mT(t);return}Ag(t,()=>(0,Ng.topBoolOrEmptySchema)(t))}mr.validateFunctionCode=dT;function Ag({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"; ${Cg(r,o)}`),fT(t,o),t.code(s)}):t.func(e,(0,z._)`${D.default.data}, ${pT(o)}`,n.$async,()=>t.code(Cg(r,o)).code(s))}function pT(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 fT(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 mT(t){let{schema:e,opts:r,gen:n}=t;Ag(t,()=>{r.$comment&&e.$comment&&Zg(t),vT(t),n.let(D.default.vErrors,null),n.let(D.default.errors,0),r.unevaluated&&hT(t),Lg(t),kT(t)})}function hT(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 Cg(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 gT(t,e){if(Mg(t)&&(Dg(t),jg(t))){_T(t,e);return}(0,Ng.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 Mg(t){return typeof t.schema!="boolean"}function _T(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&Zg(t),xT(t),ST(t);let s=n.const("_errs",D.default.errors);Lg(t,s),n.var(e,(0,z._)`${s} === ${D.default.errors}`)}function Dg(t){(0,Wt.checkUnknownRules)(t),yT(t)}function Lg(t,e){if(t.opts.jtd)return Ig(t,[],!1,e);let r=(0,Og.getSchemaTypes)(t.schema),n=(0,Og.coerceAndCheckDataType)(t,r);Ig(t,r,!n,e)}function yT(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Wt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function vT(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Wt.checkStrictMode)(t,"default is ignored in the schema root")}function xT(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,lT.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function ST(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Zg({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 kT(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&&bT(t),e.return((0,z._)`${D.default.errors} === 0`))}function bT({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 Ig(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Wt.schemaHasRulesButRef)(s,l))){o.block(()=>Hg(t,"$ref",l.all.$ref.definition));return}c.jtd||wT(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Bl.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Ii.checkDataType)(f.type,i,c.strictNumbers)),zg(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,Ii.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,uT.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Bl.shouldUseRule)(n,s)&&Hg(t,s.keyword,s.definition,e.type)})}function wT(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(ET(t,e),t.opts.allowUnionTypes||$T(t,e),TT(t,t.dataTypes))}function ET(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Ug(t.dataTypes,r)||Kl(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),RT(t,e)}}function $T(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Kl(t,"use allowUnionTypes to allow union type keyword")}function TT(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Bl.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>PT(e,i))&&Kl(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function PT(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Ug(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function RT(t,e){let r=[];for(let n of t.dataTypes)Ug(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Kl(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Wt.checkStrictMode)(t,e,t.opts.strictTypes)}var zi=class{constructor(e,r,n){if((0,qo.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Wt.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",qg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,qo.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?Ho.reportExtraError:Ho.reportError)(this,this.def.error,r)}$dataError(){(0,Ho.reportError)(this,this.def.$dataError||Ho.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Ho.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=z.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=z.nil,r=z.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,z.or)((0,z._)`${o} === undefined`,r)),e!==z.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==z.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,z.or)(i(),a());function i(){if(n.length){if(!(r instanceof z.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,z._)`${(0,Ii.checkDataTypes)(c,r,s.opts.strictNumbers,Ii.DataType.Wrong)}`}return z.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,z._)`!${c}(${r})`}return z.nil}}subschema(e,r){let n=(0,Vl.getSubschema)(this.it,e);(0,Vl.extendSubschemaData)(n,this.it,e),(0,Vl.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return gT(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Wt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Wt.mergeEvaluated.items(o,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(e,z.Name)),!0}};mr.KeywordCxt=zi;function Hg(t,e,r,n){let o=new zi(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,qo.funcKeywordCode)(o,r):"macro"in r?(0,qo.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,qo.funcKeywordCode)(o,r)}var OT=/^\/(?:[^~]|~0|~1)*$/,CT=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function qg(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return D.default.rootData;if(t[0]==="/"){if(!OT.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=D.default.rootData}else{let u=CT.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,z._)`${s}${(0,z.getProperty)((0,Wt.unescapeJsonPointer)(u))}`,i=(0,z._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}mr.getData=qg});var Ni=$(Gl=>{"use strict";Object.defineProperty(Gl,"__esModule",{value:!0});var Jl=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Gl.default=Jl});var Vo=$(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});var Wl=Uo(),Yl=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Wl.resolveUrl)(e,r,n),this.missingSchema=(0,Wl.normalizeId)((0,Wl.getFullPath)(e,this.missingRef))}};Xl.default=Yl});var ji=$(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.resolveSchema=pt.getCompilingSchema=pt.resolveRef=pt.compileSchema=pt.SchemaEnv=void 0;var St=q(),IT=Ni(),Qr=Gt(),kt=Uo(),Fg=X(),zT=Fo(),In=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=In;function ed(t){let e=Vg.call(this,t);if(e)return e;let r=(0,kt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new St.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:IT.default,code:(0,St._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Qr.default.data,parentData:Qr.default.parentData,parentDataProperty:Qr.default.parentDataProperty,dataNames:[Qr.default.data],dataPathArr:[St.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,St.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:St.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,St._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,zT.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Qr.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${Qr.default.self}`,`${Qr.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof St.Name?void 0:p,items:h instanceof St.Name?void 0:h,dynamicProps:p instanceof St.Name,dynamicItems:h instanceof St.Name},m.source&&(m.source.evaluated=(0,St.stringify)(m.evaluated))}return t.validate=m,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}pt.compileSchema=ed;function NT(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=MT.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 In({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=AT.call(this,s)}pt.resolveRef=NT;function AT(t){return(0,kt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:ed.call(this,t)}function Vg(t){for(let e of this._compilations)if(jT(e,t))return e}pt.getCompilingSchema=Vg;function jT(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function MT(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Ai.call(this,t,e)}function Ai(t,e){let r=this.opts.uriResolver.parse(e),n=(0,kt._getFullPath)(this.opts.uriResolver,r),o=(0,kt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Ql.call(this,r,t);let s=(0,kt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Ai.call(this,t,i);return typeof a?.schema!="object"?void 0:Ql.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||ed.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 In({schema:a,schemaId:c,root:t,baseId:o})}return Ql.call(this,r,i)}}pt.resolveSchema=Ai;var DT=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Ql(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,Fg.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!DT.has(a)&&u&&(e=(0,kt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,Fg.schemaHasRulesButRef)(r,this.RULES)){let a=(0,kt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Ai.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new In({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var Bg=$((T1,LT)=>{LT.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 rd=$((P1,Wg)=>{"use strict";var ZT=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Jg=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 td(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 UT=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Kg(t){return t.length=0,!0}function HT(t,e,r){if(t.length){let n=td(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function qT(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=HT;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=Kg}else{o.push(u);continue}}return o.length&&(a===Kg?r.zone=o.join(""):i?n.push(o.join("")):n.push(td(o))),r.address=n.join(""),r}function Gg(t){if(FT(t,":")<2)return{host:t,isIPV6:!1};let e=qT(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 FT(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function VT(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 BT(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 KT(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!Jg(r)){let n=Gg(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}Wg.exports={nonSimpleDomain:UT,recomposeAuthority:KT,normalizeComponentEncoding:BT,removeDotSegments:VT,isIPv4:Jg,isUUID:ZT,normalizeIPv6:Gg,stringArrayToHexStripped:td}});var t_=$((R1,e_)=>{"use strict";var{isUUID:JT}=rd(),GT=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,WT=["http","https","ws","wss","urn","urn:uuid"];function YT(t){return WT.indexOf(t)!==-1}function nd(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 Yg(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Xg(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 XT(t){return t.secure=nd(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function QT(t){if((t.port===(nd(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function e0(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(GT);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=od(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function t0(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),o=`${r}:${e.nid||n}`,s=od(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 r0(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!JT(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function n0(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Qg={scheme:"http",domainHost:!0,parse:Yg,serialize:Xg},o0={scheme:"https",domainHost:Qg.domainHost,parse:Yg,serialize:Xg},Mi={scheme:"ws",domainHost:!0,parse:XT,serialize:QT},s0={scheme:"wss",domainHost:Mi.domainHost,parse:Mi.parse,serialize:Mi.serialize},i0={scheme:"urn",parse:e0,serialize:t0,skipNormalize:!0},a0={scheme:"urn:uuid",parse:r0,serialize:n0,skipNormalize:!0},Di={http:Qg,https:o0,ws:Mi,wss:s0,urn:i0,"urn:uuid":a0};Object.setPrototypeOf(Di,null);function od(t){return t&&(Di[t]||Di[t.toLowerCase()])||void 0}e_.exports={wsIsSecure:nd,SCHEMES:Di,isValidSchemeName:YT,getSchemeHandler:od}});var o_=$((O1,Zi)=>{"use strict";var{normalizeIPv6:c0,removeDotSegments:Bo,recomposeAuthority:u0,normalizeComponentEncoding:Li,isIPv4:l0,nonSimpleDomain:d0}=rd(),{SCHEMES:p0,getSchemeHandler:r_}=t_();function f0(t,e){return typeof t=="string"?t=At(Yt(t,e),e):typeof t=="object"&&(t=Yt(At(t,e),e)),t}function m0(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=n_(Yt(t,n),Yt(e,n),n,!0);return n.skipEscape=!0,At(o,n)}function n_(t,e,r,n){let o={};return n||(t=Yt(At(t,r),r),e=Yt(At(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Bo(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=Bo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Bo(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=Bo(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 h0(t,e,r){return typeof t=="string"?(t=unescape(t),t=At(Li(Yt(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=At(Li(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=At(Li(Yt(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=At(Li(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function At(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),o=[],s=r_(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=u0(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=Bo(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 g0=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Yt(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(g0);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(l0(n.host)===!1){let c=c0(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=r_(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&d0(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 sd={SCHEMES:p0,normalize:f0,resolve:m0,resolveComponent:n_,equal:h0,serialize:At,parse:Yt};Zi.exports=sd;Zi.exports.default=sd;Zi.exports.fastUri=sd});var i_=$(id=>{"use strict";Object.defineProperty(id,"__esModule",{value:!0});var s_=o_();s_.code='require("ajv/dist/runtime/uri").default';id.default=s_});var m_=$(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 _0=Fo();Object.defineProperty(Ie,"KeywordCxt",{enumerable:!0,get:function(){return _0.KeywordCxt}});var zn=q();Object.defineProperty(Ie,"_",{enumerable:!0,get:function(){return zn._}});Object.defineProperty(Ie,"str",{enumerable:!0,get:function(){return zn.str}});Object.defineProperty(Ie,"stringify",{enumerable:!0,get:function(){return zn.stringify}});Object.defineProperty(Ie,"nil",{enumerable:!0,get:function(){return zn.nil}});Object.defineProperty(Ie,"Name",{enumerable:!0,get:function(){return zn.Name}});Object.defineProperty(Ie,"CodeGen",{enumerable:!0,get:function(){return zn.CodeGen}});var y0=Ni(),d_=Vo(),v0=Al(),Ko=ji(),x0=q(),Jo=Uo(),Ui=Zo(),cd=X(),a_=Bg(),S0=i_(),p_=(t,e)=>new RegExp(t,e);p_.code="new RegExp";var k0=["removeAdditional","useDefaults","coerceTypes"],b0=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),w0={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},E0={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},c_=200;function $0(t){var e,r,n,o,s,i,a,c,u,l,d,f,m,p,h,g,_,x,S,w,R,oe,ge,Ae,Ut;let ht=t.strict,be=(e=t.code)===null||e===void 0?void 0:e.optimize,br=be===!0||be===void 0?1:be||0,Ze=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:p_,Oa=(o=t.uriResolver)!==null&&o!==void 0?o:S0.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:ht)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:ht)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:ht)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:ht)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:ht)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:br,regExp:Ze}:{optimize:br,regExp:Ze},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:c_,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:c_,meta:(_=t.meta)!==null&&_!==void 0?_:!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:(oe=t.validateSchema)!==null&&oe!==void 0?oe:!0,validateFormats:(ge=t.validateFormats)!==null&&ge!==void 0?ge:!0,unicodeRegExp:(Ae=t.unicodeRegExp)!==null&&Ae!==void 0?Ae:!0,int32range:(Ut=t.int32range)!==null&&Ut!==void 0?Ut:!0,uriResolver:Oa}}var Go=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...$0(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new x0.ValueScope({scope:{},prefixes:b0,es5:r,lines:n}),this.logger=I0(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,v0.getRules)(),u_.call(this,w0,e,"NOT SUPPORTED"),u_.call(this,E0,e,"DEPRECATED","warn"),this._metaOpts=O0.call(this),e.formats&&P0.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&R0.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),T0.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=a_;n==="id"&&(o={...a_},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 d_.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,Jo.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=l_.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Ko.SchemaEnv({schema:{},schemaId:n});if(r=Ko.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=l_.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,Jo.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(N0.call(this,n,r),!r)return(0,cd.eachItem)(n,s=>ad.call(this,s)),this;j0.call(this,r);let o={...r,type:(0,Ui.getJSONTypes)(r.type),schemaType:(0,Ui.getJSONTypes)(r.schemaType)};return(0,cd.eachItem)(n,o.type.length===0?s=>ad.call(this,s,o):s=>o.type.forEach(i=>ad.call(this,s,o,i))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let o=n.rules.findIndex(s=>s.keyword===e);o>=0&&n.rules.splice(o,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(o=>`${n}${o.instancePath} ${o.message}`).reduce((o,s)=>o+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let o of r){let s=o.split("/").slice(1),i=e;for(let a of s)i=i[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:u}=c.definition,l=i[a];u&&l&&(i[a]=f_(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let o=e[n];(!r||r.test(n))&&(typeof o=="string"?delete e[n]:o&&!o.meta&&(this._cache.delete(o.schema),delete e[n]))}}_addSchema(e,r,n,o=this.opts.validateSchema,s=this.opts.addUsedSchema){let i,{schemaId:a}=this.opts;if(typeof e=="object")i=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,Jo.normalizeId)(i||n);let u=Jo.getSchemaRefs.call(this,e,n);return c=new Ko.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):Ko.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{Ko.compileSchema.call(this,e)}finally{this.opts=r}}};Go.ValidationError=y0.default;Go.MissingRefError=d_.default;Ie.default=Go;function u_(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 l_(t){return t=(0,Jo.normalizeId)(t),this.schemas[t]||this.refs[t]}function T0(){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 P0(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function R0(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 O0(){let t={...this.opts};for(let e of k0)delete t[e];return t}var C0={log(){},warn(){},error(){}};function I0(t){if(t===!1)return C0;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 z0=/^[a-z_$][a-z0-9_$:-]*$/i;function N0(t,e){let{RULES:r}=this;if((0,cd.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!z0.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 ad(t,e,r){var n;let o=e?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(i||(i={type:r,rules:[]},s.rules.push(i)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,Ui.getJSONTypes)(e.type),schemaType:(0,Ui.getJSONTypes)(e.schemaType)}};e.before?A0.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 A0(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 j0(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=f_(e)),t.validateSchema=this.compile(e,!0))}var M0={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function f_(t){return{anyOf:[t,M0]}}});var h_=$(ud=>{"use strict";Object.defineProperty(ud,"__esModule",{value:!0});var D0={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};ud.default=D0});var v_=$(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.callRef=en.getValidate=void 0;var L0=Vo(),g_=dt(),Qe=q(),Nn=Gt(),__=ji(),Hi=X(),Z0={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=__.resolveRef.call(c,u,o,r);if(l===void 0)throw new L0.default(n.opts.uriResolver,o,r);if(l instanceof __.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return qi(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return qi(t,(0,Qe._)`${p}.validate`,u,u.$async)}function f(p){let h=y_(t,p);qi(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"),_=t.subschema({schema:p,dataTypes:[],schemaPath:Qe.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(_),t.ok(g)}}};function y_(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Qe._)`${r.scopeValue("wrapper",{ref:e})}.validate`}en.getValidate=y_;function qi(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Nn.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,g_.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,g_.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,Qe._)`${p}.errors`;o.assign(Nn.default.vErrors,(0,Qe._)`${Nn.default.vErrors} === null ? ${h} : ${Nn.default.vErrors}.concat(${h})`),o.assign(Nn.default.errors,(0,Qe._)`${Nn.default.vErrors}.length`)}function m(p){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=Hi.mergeEvaluated.props(o,g.props,s.props));else{let _=o.var("props",(0,Qe._)`${p}.evaluated.props`);s.props=Hi.mergeEvaluated.props(o,_,s.props,Qe.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Hi.mergeEvaluated.items(o,g.items,s.items));else{let _=o.var("items",(0,Qe._)`${p}.evaluated.items`);s.items=Hi.mergeEvaluated.items(o,_,s.items,Qe.Name)}}}en.callRef=qi;en.default=Z0});var x_=$(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});var U0=h_(),H0=v_(),q0=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",U0.default,H0.default];ld.default=q0});var S_=$(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});var Fi=q(),hr=Fi.operators,Vi={maximum:{okStr:"<=",ok:hr.LTE,fail:hr.GT},minimum:{okStr:">=",ok:hr.GTE,fail:hr.LT},exclusiveMaximum:{okStr:"<",ok:hr.LT,fail:hr.GTE},exclusiveMinimum:{okStr:">",ok:hr.GT,fail:hr.LTE}},F0={message:({keyword:t,schemaCode:e})=>(0,Fi.str)`must be ${Vi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Fi._)`{comparison: ${Vi[t].okStr}, limit: ${e}}`},V0={keyword:Object.keys(Vi),type:"number",schemaType:"number",$data:!0,error:F0,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Fi._)`${r} ${Vi[e].fail} ${n} || isNaN(${r})`)}};dd.default=V0});var k_=$(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});var Wo=q(),B0={message:({schemaCode:t})=>(0,Wo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Wo._)`{multipleOf: ${t}}`},K0={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:B0,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Wo._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Wo._)`${i} !== parseInt(${i})`;t.fail$data((0,Wo._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};pd.default=K0});var w_=$(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});function b_(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}fd.default=b_;b_.code='require("ajv/dist/runtime/ucs2length").default'});var E_=$(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});var tn=q(),J0=X(),G0=w_(),W0={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,tn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,tn._)`{limit: ${t}}`},Y0={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:W0,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?tn.operators.GT:tn.operators.LT,i=o.opts.unicode===!1?(0,tn._)`${r}.length`:(0,tn._)`${(0,J0.useFunc)(t.gen,G0.default)}(${r})`;t.fail$data((0,tn._)`${i} ${s} ${n}`)}};md.default=Y0});var $_=$(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var X0=dt(),Q0=X(),An=q(),eP={message:({schemaCode:t})=>(0,An.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,An._)`{pattern: ${t}}`},tP={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:eP,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=i.opts.code,u=c.code==="new RegExp"?(0,An._)`new RegExp`:(0,Q0.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,An._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,An._)`!${l}`)}else{let c=(0,X0.usePattern)(t,o);t.fail$data((0,An._)`!${c}.test(${r})`)}}};hd.default=tP});var T_=$(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var Yo=q(),rP={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Yo.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Yo._)`{limit: ${t}}`},nP={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:rP,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Yo.operators.GT:Yo.operators.LT;t.fail$data((0,Yo._)`Object.keys(${r}).length ${o} ${n}`)}};gd.default=nP});var P_=$(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var Xo=dt(),Qo=q(),oP=X(),sP={message:({params:{missingProperty:t}})=>(0,Qo.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Qo._)`{missingProperty: ${t}}`},iP={keyword:"required",type:"object",schemaType:"array",$data:!0,error:sP,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,_=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,oP.checkStrictMode)(i,_,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(Qo.nil,d);else for(let m of r)(0,Xo.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,Xo.checkMissingProp)(t,r,m)),(0,Xo.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,Xo.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,Xo.propertyInData)(e,o,m,a.ownProperties)),e.if((0,Qo.not)(p),()=>{t.error(),e.break()})},Qo.nil)}}};_d.default=iP});var R_=$(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var es=q(),aP={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,es.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,es._)`{limit: ${t}}`},cP={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:aP,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?es.operators.GT:es.operators.LT;t.fail$data((0,es._)`${r}.length ${o} ${n}`)}};yd.default=cP});var Bi=$(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var O_=ql();O_.code='require("ajv/dist/runtime/equal").default';vd.default=O_});var C_=$(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var xd=Zo(),ze=q(),uP=X(),lP=Bi(),dP={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}}`},pP={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:dP,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,xd.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"),_=(0,xd.checkDataTypes)(u,g,a.opts.strictNumbers,xd.DataType.Wrong),x=e.const("indices",(0,ze._)`{}`);e.for((0,ze._)`;${p}--;`,()=>{e.let(g,(0,ze._)`${r}[${p}]`),e.if(_,(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,uP.useFunc)(e,lP.default),_=e.name("outer");e.label(_).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(_)})))}}};Sd.default=pP});var I_=$(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var kd=q(),fP=X(),mP=Bi(),hP={message:"must be equal to constant",params:({schemaCode:t})=>(0,kd._)`{allowedValue: ${t}}`},gP={keyword:"const",$data:!0,error:hP,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,kd._)`!${(0,fP.useFunc)(e,mP.default)}(${r}, ${o})`):t.fail((0,kd._)`${s} !== ${r}`)}};bd.default=gP});var z_=$(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var ts=q(),_P=X(),yP=Bi(),vP={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,ts._)`{allowedValues: ${t}}`},xP={keyword:"enum",schemaType:"array",$data:!0,error:vP,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,_P.useFunc)(e,yP.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,ts.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,ts._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,ts._)`${u()}(${r}, ${m}[${p}])`:(0,ts._)`${r} === ${h}`}}};wd.default=xP});var N_=$(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var SP=S_(),kP=k_(),bP=E_(),wP=$_(),EP=T_(),$P=P_(),TP=R_(),PP=C_(),RP=I_(),OP=z_(),CP=[SP.default,kP.default,bP.default,wP.default,EP.default,$P.default,TP.default,PP.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},RP.default,OP.default];Ed.default=CP});var Td=$(rs=>{"use strict";Object.defineProperty(rs,"__esModule",{value:!0});rs.validateAdditionalItems=void 0;var rn=q(),$d=X(),IP={message:({params:{len:t}})=>(0,rn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,rn._)`{limit: ${t}}`},zP={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:IP,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,$d.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}A_(t,n)}};function A_(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,rn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,rn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,$d.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,rn._)`${a} <= ${e.length}`);r.if((0,rn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:$d.Type.Num},u),i.allErrors||r.if((0,rn.not)(u),()=>r.break())})}}rs.validateAdditionalItems=A_;rs.default=zP});var Pd=$(ns=>{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.validateTuple=void 0;var j_=q(),Ki=X(),NP=dt(),AP={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return M_(t,"additionalItems",e);r.items=!0,!(0,Ki.alwaysValidSchema)(r,e)&&t.ok((0,NP.validateArray)(t))}};function M_(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;l(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Ki.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,j_._)`${s}.length`);r.forEach((d,f)=>{(0,Ki.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,Ki.checkStrictMode)(a,g,f.strictTuples)}}}ns.validateTuple=M_;ns.default=AP});var D_=$(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var jP=Pd(),MP={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,jP.validateTuple)(t,"items")};Rd.default=MP});var Z_=$(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var L_=q(),DP=X(),LP=dt(),ZP=Td(),UP={message:({params:{len:t}})=>(0,L_.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,L_._)`{limit: ${t}}`},HP={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:UP,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,DP.alwaysValidSchema)(n,e)&&(o?(0,ZP.validateAdditionalItems)(t,o):t.ok((0,LP.validateArray)(t)))}};Od.default=HP});var U_=$(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});var ft=q(),Ji=X(),qP={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}}`},FP={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:qP,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,i,a,{minContains:c,maxContains:u}=n;s.opts.next?(i=c===void 0?1:c,a=u):i=1;let l=e.const("len",(0,ft._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Ji.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Ji.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Ji.alwaysValidSchema)(s,r)){let h=(0,ft._)`${l} >= ${i}`;a!==void 0&&(h=(0,ft._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?m(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,ft._)`${o}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),g=e.let("count",0);m(h,()=>e.if(h,()=>p(g)))}function m(h,g){e.forRange("i",0,l,_=>{t.subschema({keyword:"contains",dataProp:_,dataPropType:Ji.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,ft._)`${h}++`),a===void 0?e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,ft._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Cd.default=FP});var F_=$(jt=>{"use strict";Object.defineProperty(jt,"__esModule",{value:!0});jt.validateSchemaDeps=jt.validatePropertyDeps=jt.error=void 0;var Id=q(),VP=X(),os=dt();jt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Id.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Id._)`{property: ${t},
7
7
  missingProperty: ${n},
8
8
  depsCount: ${e},
9
- deps: ${r}}`};var FP={keyword:"dependencies",type:"object",schemaType:"object",error:jt.error,code(t){let[e,r]=VP(t);U_(t,e),H_(t,r)}};function VP({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 U_(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,ns.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,ns.checkReportMissingProp)(t,u)}):(r.if((0,Id._)`${c} && (${(0,ns.checkMissingProp)(t,a,s)})`),(0,ns.reportMissingProp)(t,s),r.else())}}jt.validatePropertyDeps=U_;function H_(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,qP.alwaysValidSchema)(s,e[a])||(r.if((0,ns.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}jt.validateSchemaDeps=H_;jt.default=FP});var V_=$(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var F_=q(),BP=X(),KP={message:"property name must be valid",params:({params:t})=>(0,F_._)`{propertyName: ${t.propertyName}}`},JP={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:KP,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,BP.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,F_.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};zd.default=JP});var Ad=$(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var Gi=dt(),bt=q(),GP=Gt(),Wi=X(),WP={message:"must NOT have additional properties",params:({params:t})=>(0,bt._)`{additionalProperty: ${t.additionalProperty}}`},YP={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:WP,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,Wi.alwaysValidSchema)(i,r))return;let u=(0,Gi.allSchemaProperties)(n.properties),l=(0,Gi.allSchemaProperties)(n.patternProperties);d(),t.ok((0,bt._)`${s} === ${GP.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 _;if(u.length>8){let x=(0,Wi.schemaRefOrVal)(i,n.properties,"properties");_=(0,Gi.isOwnProperty)(e,x,g)}else u.length?_=(0,bt.or)(...u.map(x=>(0,bt._)`${g} === ${x}`)):_=bt.nil;return l.length&&(_=(0,bt.or)(_,...l.map(x=>(0,bt._)`${(0,Gi.usePattern)(t,x)}.test(${g})`))),(0,bt.not)(_)}function m(g){e.code((0,bt._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,Wi.alwaysValidSchema)(i,r)){let _=e.name("valid");c.removeAdditional==="failing"?(h(g,_,!1),e.if((0,bt.not)(_),()=>{t.reset(),m(g)})):(h(g,_),a||e.if((0,bt.not)(_),()=>e.break()))}}function h(g,_,x){let S={keyword:"additionalProperties",dataProp:g,dataPropType:Wi.Type.Str};x===!1&&Object.assign(S,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(S,_)}}};Nd.default=YP});var J_=$(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});var XP=qo(),B_=dt(),jd=X(),K_=Ad(),QP={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&&K_.default.code(new XP.KeywordCxt(s,K_.default,"additionalProperties"));let i=(0,B_.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=jd.mergeEvaluated.props(e,(0,jd.toHash)(i),s.props));let a=i.filter(d=>!(0,jd.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,B_.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)}}};Md.default=QP});var X_=$(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var G_=dt(),Yi=q(),W_=X(),Y_=X(),eR={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,G_.allSchemaProperties)(r),c=a.filter(h=>(0,W_.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof Yi.Name)&&(s.props=(0,Y_.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,W_.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,Yi._)`${(0,G_.usePattern)(t,h)}.test(${g})`,()=>{let _=c.includes(h);_||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:Y_.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Yi._)`${d}[${g}]`,!0):!_&&!s.allErrors&&e.if((0,Yi.not)(l),()=>e.break())})})}}};Dd.default=eR});var Q_=$(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});var tR=X(),rR={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,tR.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"}};Ld.default=rR});var ey=$(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});var nR=dt(),oR={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:nR.validateUnion,error:{message:"must match a schema in anyOf"}};Zd.default=oR});var ty=$(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});var Xi=q(),sR=X(),iR={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Xi._)`{passingSchemas: ${t.passing}}`},aR={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:iR,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,sR.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Xi._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Xi._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,Xi.Name)})})}}};Ud.default=aR});var ry=$(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});var cR=X(),uR={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,cR.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Hd.default=uR});var sy=$(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var Qi=q(),oy=X(),lR={message:({params:t})=>(0,Qi.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Qi._)`{failingKeyword: ${t.ifClause}}`},dR={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:lR,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,oy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=ny(n,"then"),s=ny(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else o?e.if(a,u("then")):e.if((0,Qi.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(f,i),d?e.assign(d,(0,Qi._)`${l}`):t.setParams({ifClause:l})}}}};function ny(t,e){let r=t.schema[e];return r!==void 0&&!(0,oy.alwaysValidSchema)(t,r)}qd.default=dR});var iy=$(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});var pR=X(),fR={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,pR.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Fd.default=fR});var ay=$(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var mR=Td(),hR=M_(),gR=Pd(),_R=L_(),yR=Z_(),vR=q_(),xR=V_(),SR=Ad(),kR=J_(),bR=X_(),wR=Q_(),ER=ey(),$R=ty(),TR=ry(),PR=sy(),RR=iy();function OR(t=!1){let e=[wR.default,ER.default,$R.default,TR.default,PR.default,RR.default,xR.default,SR.default,vR.default,kR.default,bR.default];return t?e.push(hR.default,_R.default):e.push(mR.default,gR.default),e.push(yR.default),e}Vd.default=OR});var cy=$(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});var ve=q(),CR={message:({schemaCode:t})=>(0,ve.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ve._)`{format: ${t}}`},IR={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:CR,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?f():m();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ve._)`${p}[${i}]`),g=r.let("fType"),_=r.let("format");r.if((0,ve._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,ve._)`${h}.type || "string"`).assign(_,(0,ve._)`${h}.validate`),()=>r.assign(g,(0,ve._)`"string"`).assign(_,h)),t.fail$data((0,ve.or)(x(),S()));function x(){return c.strictSchema===!1?ve.nil:(0,ve._)`${i} && !${_}`}function S(){let w=l.$async?(0,ve._)`(${h}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,ve._)`${_}(${n})`,R=(0,ve._)`(typeof ${_} == "function" ? ${w} : ${_}.test(${n}))`;return(0,ve._)`${_} && ${_} !== true && ${g} === ${e} && !${R}`}}function m(){let p=d.formats[s];if(!p){x();return}if(p===!0)return;let[h,g,_]=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 oe=R instanceof RegExp?(0,ve.regexpCode)(R):c.code.formats?(0,ve._)`${c.code.formats}${(0,ve.getProperty)(s)}`:void 0,ge=r.scopeValue("formats",{key:s,ref:R,code:oe});return typeof R=="object"&&!(R instanceof RegExp)?[R.type||"string",R.validate,(0,ve._)`${ge}.validate`]:["string",R,ge]}function w(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ve._)`await ${_}(${n})`}return typeof g=="function"?(0,ve._)`${_}(${n})`:(0,ve._)`${_}.test(${n})`}}}};Bd.default=IR});var uy=$(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});var zR=cy(),NR=[zR.default];Kd.default=NR});var ly=$(jn=>{"use strict";Object.defineProperty(jn,"__esModule",{value:!0});jn.contentVocabulary=jn.metadataVocabulary=void 0;jn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];jn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var py=$(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});var AR=v_(),jR=z_(),MR=ay(),DR=uy(),dy=ly(),LR=[AR.default,jR.default,(0,MR.default)(),DR.default,dy.metadataVocabulary,dy.contentVocabulary];Jd.default=LR});var my=$(ea=>{"use strict";Object.defineProperty(ea,"__esModule",{value:!0});ea.DiscrError=void 0;var fy;(function(t){t.Tag="tag",t.Mapping="mapping"})(fy||(ea.DiscrError=fy={}))});var gy=$(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});var Mn=q(),Gd=my(),hy=ji(),ZR=Fo(),UR=X(),HR={message:({params:{discrError:t,tagName:e}})=>t===Gd.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Mn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},qR={keyword:"discriminator",type:"object",schemaType:"object",error:HR,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,Mn._)`${r}${(0,Mn.getProperty)(a)}`);e.if((0,Mn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Gd.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,Mn._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:Gd.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,Mn.Name),p}function f(){var m;let p={},h=_(o),g=!0;for(let w=0;w<i.length;w++){let R=i[w];if(R?.$ref&&!(0,UR.schemaHasRulesButRef)(R,s.self.RULES)){let ge=R.$ref;if(R=hy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,ge),R instanceof hy.SchemaEnv&&(R=R.schema),R===void 0)throw new ZR.default(s.opts.uriResolver,s.baseId,ge)}let oe=(m=R?.properties)===null||m===void 0?void 0:m[a];if(typeof oe!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||_(R)),x(oe,w)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function _({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 oe of w.enum)S(oe,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}}}};Wd.default=qR});var _y=$((yM,FR)=>{FR.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 Xd=$((de,Yd)=>{"use strict";Object.defineProperty(de,"__esModule",{value:!0});de.MissingRefError=de.ValidationError=de.CodeGen=de.Name=de.nil=de.stringify=de.str=de._=de.KeywordCxt=de.Ajv=void 0;var VR=f_(),BR=py(),KR=gy(),yy=_y(),JR=["/properties"],ta="http://json-schema.org/draft-07/schema",Dn=class extends VR.default{_addVocabularies(){super._addVocabularies(),BR.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(KR.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(yy,JR):yy;this.addMetaSchema(e,ta,!1),this.refs["http://json-schema.org/schema"]=ta}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ta)?ta:void 0)}};de.Ajv=Dn;Yd.exports=de=Dn;Yd.exports.Ajv=Dn;Object.defineProperty(de,"__esModule",{value:!0});de.default=Dn;var GR=qo();Object.defineProperty(de,"KeywordCxt",{enumerable:!0,get:function(){return GR.KeywordCxt}});var Ln=q();Object.defineProperty(de,"_",{enumerable:!0,get:function(){return Ln._}});Object.defineProperty(de,"str",{enumerable:!0,get:function(){return Ln.str}});Object.defineProperty(de,"stringify",{enumerable:!0,get:function(){return Ln.stringify}});Object.defineProperty(de,"nil",{enumerable:!0,get:function(){return Ln.nil}});Object.defineProperty(de,"Name",{enumerable:!0,get:function(){return Ln.Name}});Object.defineProperty(de,"CodeGen",{enumerable:!0,get:function(){return Ln.CodeGen}});var WR=Ni();Object.defineProperty(de,"ValidationError",{enumerable:!0,get:function(){return WR.default}});var YR=Fo();Object.defineProperty(de,"MissingRefError",{enumerable:!0,get:function(){return YR.default}})});var $y=$(Dt=>{"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});Dt.formatNames=Dt.fastFormats=Dt.fullFormats=void 0;function Mt(t,e){return{validate:t,compare:e}}Dt.fullFormats={date:Mt(ky,rp),time:Mt(ep(!0),np),"date-time":Mt(vy(!0),wy),"iso-time":Mt(ep(),by),"iso-date-time":Mt(vy(),Ey),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:nO,"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:lO,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:oO,int32:{type:"number",validate:aO},int64:{type:"number",validate:cO},float:{type:"number",validate:Sy},double:{type:"number",validate:Sy},password:!0,binary:!0};Dt.fastFormats={...Dt.fullFormats,date:Mt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,rp),time:Mt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,np),"date-time":Mt(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,wy),"iso-time":Mt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,by),"iso-date-time":Mt(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Ey),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Dt.formatNames=Object.keys(Dt.fullFormats);function XR(t){return t%4===0&&(t%100!==0||t%400===0)}var QR=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,eO=[0,31,28,31,30,31,30,31,31,30,31,30,31];function ky(t){let e=QR.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&&XR(r)?29:eO[n])}function rp(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Qd=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function ep(t){return function(r){let n=Qd.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 np(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 by(t,e){if(!(t&&e))return;let r=Qd.exec(t),n=Qd.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 tp=/t|\s/i;function vy(t){let e=ep(t);return function(n){let o=n.split(tp);return o.length===2&&ky(o[0])&&e(o[1])}}function wy(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Ey(t,e){if(!(t&&e))return;let[r,n]=t.split(tp),[o,s]=e.split(tp),i=rp(r,o);if(i!==void 0)return i||np(n,s)}var tO=/\/|:/,rO=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function nO(t){return tO.test(t)&&rO.test(t)}var xy=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function oO(t){return xy.lastIndex=0,xy.test(t)}var sO=-(2**31),iO=2**31-1;function aO(t){return Number.isInteger(t)&&t<=iO&&t>=sO}function cO(t){return Number.isInteger(t)}function Sy(){return!0}var uO=/[^\\]\\Z/;function lO(t){if(uO.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Ty=$(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.formatLimitDefinition=void 0;var dO=Xd(),wt=q(),gr=wt.operators,ra={formatMaximum:{okStr:"<=",ok:gr.LTE,fail:gr.GT},formatMinimum:{okStr:">=",ok:gr.GTE,fail:gr.LT},formatExclusiveMaximum:{okStr:"<",ok:gr.LT,fail:gr.GTE},formatExclusiveMinimum:{okStr:">",ok:gr.GT,fail:gr.LTE}},pO={message:({keyword:t,schemaCode:e})=>(0,wt.str)`should be ${ra[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,wt._)`{comparison: ${ra[t].okStr}, limit: ${e}}`};Zn.formatLimitDefinition={keyword:Object.keys(ra),type:"string",schemaType:"string",$data:!0,error:pO,code(t){let{gen:e,data:r,schemaCode:n,keyword:o,it:s}=t,{opts:i,self:a}=s;if(!i.validateFormats)return;let c=new dO.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,wt._)`${f}[${c.schemaCode}]`);t.fail$data((0,wt.or)((0,wt._)`typeof ${m} != "object"`,(0,wt._)`${m} instanceof RegExp`,(0,wt._)`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=a.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${o}": format "${f}" does not define "compare" function`);let p=e.scopeValue("formats",{key:f,ref:m,code:i.code.formats?(0,wt._)`${i.code.formats}${(0,wt.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,wt._)`${f}.compare(${r}, ${n}) ${ra[o].fail} 0`}},dependencies:["format"]};var fO=t=>(t.addKeyword(Zn.formatLimitDefinition),t);Zn.default=fO});var Cy=$((os,Oy)=>{"use strict";Object.defineProperty(os,"__esModule",{value:!0});var Un=$y(),mO=Ty(),op=q(),Py=new op.Name("fullFormats"),hO=new op.Name("fastFormats"),sp=(t,e={keywords:!0})=>{if(Array.isArray(e))return Ry(t,e,Un.fullFormats,Py),t;let[r,n]=e.mode==="fast"?[Un.fastFormats,hO]:[Un.fullFormats,Py],o=e.formats||Un.formatNames;return Ry(t,o,r,n),e.keywords&&(0,mO.default)(t),t};sp.get=(t,e="full")=>{let n=(e==="fast"?Un.fastFormats:Un.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function Ry(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,op._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}Oy.exports=os=sp;Object.defineProperty(os,"__esModule",{value:!0});os.default=sp});var hv,gv=we(()=>{"use strict";hv={"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"}});function as(t,e){let r=ma[e],n=_p(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function _p(t,e){if(e){let r=ma[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}var Tt,GO,_v,ma,CD,ID,yv=we(()=>{"use strict";Tt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},GO=["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"],_v=GO.join("|"),ma={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},CD=[Tt.PRE_TOOL_USE,Tt.SESSION_START],ID=[Tt.POST_TOOL_USE,Tt.PRE_COMPACT,Tt.USER_PROMPT_SUBMIT]});var vp={};tt(vp,{ClaudeCodeAdapter:()=>yp});import{createHash as vv}from"node:crypto";import{readFileSync as qn,writeFileSync as ha,mkdirSync as WO,copyFileSync as YO,accessSync as xv,readdirSync as XO,chmodSync as QO,constants as Sv}from"node:fs";import{resolve as Lt,join as cs}from"node:path";import{homedir as nn}from"node:os";var yp,xp=we(()=>{"use strict";yv();yp=class{name="Claude Code";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{updatedInput:e.updatedInput};if(e.decision==="context"&&e.additionalContext)return{additionalContext:e.additionalContext};if(e.decision==="ask")return{permissionDecision:"ask"}}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),e.updatedOutput&&(r.updatedMCPToolOutput=e.updatedOutput),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Lt(nn(),".claude","settings.json")}getSessionDir(){let e=cs(nn(),".claude","context-mode","sessions");return WO(e,{recursive:!0}),e}getSessionDBPath(e){let r=vv("sha256").update(e).digest("hex").slice(0,16);return cs(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=vv("sha256").update(e).digest("hex").slice(0,16);return cs(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=qn(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){ha(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=[cs(e,"hooks","hooks.json"),cs(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=qn(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=>as(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>as(i,n)))}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read settings.json"};let r=e.enabledPlugins;if(!r)return{check:"Plugin registration",status:"warn",message:"No enabledPlugins section found (might be using standalone MCP mode)"};let n=Object.keys(r).find(o=>o.startsWith("context-mode"));return n&&r[n]?{check:"Plugin registration",status:"pass",message:`Plugin enabled: ${n}`}:{check:"Plugin registration",status:"warn",message:"context-mode not in enabledPlugins (might be using standalone MCP mode)"}}getInstalledVersion(){try{let r=Lt(nn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(qn(r,"utf-8")).plugins??{};for(let[s,i]of Object.entries(o)){if(!s.toLowerCase().includes("context-mode"))continue;let a=i;if(a.length>0&&typeof a[0].version=="string")return a[0].version}}catch{}let e=[Lt(nn(),".claude"),Lt(nn(),".config","claude")];for(let r of e){let n=Lt(r,"plugins","cache","context-mode","context-mode");try{let s=XO(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=_p(i,e);if(i===Tt.PRE_TOOL_USE){let c={matcher:_v,hooks:[{type:"command",command:a}]},u=n.PreToolUse;if(u&&Array.isArray(u)){let l=u.findIndex(d=>as(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=>as(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{xv(e,Sv.R_OK);let r=e+".bak";return YO(e,r),r}catch{return null}}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(ma)){let o=Lt(e,"hooks",n);try{xv(o,Sv.R_OK),QO(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=Lt(nn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(qn(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();ha(n,JSON.stringify(o,null,2)+`
9
+ deps: ${r}}`};var BP={keyword:"dependencies",type:"object",schemaType:"object",error:jt.error,code(t){let[e,r]=KP(t);H_(t,e),q_(t,r)}};function KP({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 H_(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,os.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,os.checkReportMissingProp)(t,u)}):(r.if((0,Id._)`${c} && (${(0,os.checkMissingProp)(t,a,s)})`),(0,os.reportMissingProp)(t,s),r.else())}}jt.validatePropertyDeps=H_;function q_(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,VP.alwaysValidSchema)(s,e[a])||(r.if((0,os.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}jt.validateSchemaDeps=q_;jt.default=BP});var B_=$(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var V_=q(),JP=X(),GP={message:"property name must be valid",params:({params:t})=>(0,V_._)`{propertyName: ${t.propertyName}}`},WP={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:GP,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,JP.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,V_.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};zd.default=WP});var Ad=$(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var Gi=dt(),bt=q(),YP=Gt(),Wi=X(),XP={message:"must NOT have additional properties",params:({params:t})=>(0,bt._)`{additionalProperty: ${t.additionalProperty}}`},QP={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:XP,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,Wi.alwaysValidSchema)(i,r))return;let u=(0,Gi.allSchemaProperties)(n.properties),l=(0,Gi.allSchemaProperties)(n.patternProperties);d(),t.ok((0,bt._)`${s} === ${YP.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 _;if(u.length>8){let x=(0,Wi.schemaRefOrVal)(i,n.properties,"properties");_=(0,Gi.isOwnProperty)(e,x,g)}else u.length?_=(0,bt.or)(...u.map(x=>(0,bt._)`${g} === ${x}`)):_=bt.nil;return l.length&&(_=(0,bt.or)(_,...l.map(x=>(0,bt._)`${(0,Gi.usePattern)(t,x)}.test(${g})`))),(0,bt.not)(_)}function m(g){e.code((0,bt._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,Wi.alwaysValidSchema)(i,r)){let _=e.name("valid");c.removeAdditional==="failing"?(h(g,_,!1),e.if((0,bt.not)(_),()=>{t.reset(),m(g)})):(h(g,_),a||e.if((0,bt.not)(_),()=>e.break()))}}function h(g,_,x){let S={keyword:"additionalProperties",dataProp:g,dataPropType:Wi.Type.Str};x===!1&&Object.assign(S,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(S,_)}}};Nd.default=QP});var G_=$(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});var eR=Fo(),K_=dt(),jd=X(),J_=Ad(),tR={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&J_.default.code(new eR.KeywordCxt(s,J_.default,"additionalProperties"));let i=(0,K_.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=jd.mergeEvaluated.props(e,(0,jd.toHash)(i),s.props));let a=i.filter(d=>!(0,jd.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,K_.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)}}};Md.default=tR});var Q_=$(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var W_=dt(),Yi=q(),Y_=X(),X_=X(),rR={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,W_.allSchemaProperties)(r),c=a.filter(h=>(0,Y_.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof Yi.Name)&&(s.props=(0,X_.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,Y_.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,Yi._)`${(0,W_.usePattern)(t,h)}.test(${g})`,()=>{let _=c.includes(h);_||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:X_.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Yi._)`${d}[${g}]`,!0):!_&&!s.allErrors&&e.if((0,Yi.not)(l),()=>e.break())})})}}};Dd.default=rR});var ey=$(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});var nR=X(),oR={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,nR.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"}};Ld.default=oR});var ty=$(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});var sR=dt(),iR={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:sR.validateUnion,error:{message:"must match a schema in anyOf"}};Zd.default=iR});var ry=$(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});var Xi=q(),aR=X(),cR={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Xi._)`{passingSchemas: ${t.passing}}`},uR={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:cR,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let f;(0,aR.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Xi._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Xi._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,Xi.Name)})})}}};Ud.default=uR});var ny=$(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});var lR=X(),dR={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,lR.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Hd.default=dR});var iy=$(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var Qi=q(),sy=X(),pR={message:({params:t})=>(0,Qi.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Qi._)`{failingKeyword: ${t.ifClause}}`},fR={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:pR,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,sy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=oy(n,"then"),s=oy(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else o?e.if(a,u("then")):e.if((0,Qi.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(f,i),d?e.assign(d,(0,Qi._)`${l}`):t.setParams({ifClause:l})}}}};function oy(t,e){let r=t.schema[e];return r!==void 0&&!(0,sy.alwaysValidSchema)(t,r)}qd.default=fR});var ay=$(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});var mR=X(),hR={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,mR.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Fd.default=hR});var cy=$(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var gR=Td(),_R=D_(),yR=Pd(),vR=Z_(),xR=U_(),SR=F_(),kR=B_(),bR=Ad(),wR=G_(),ER=Q_(),$R=ey(),TR=ty(),PR=ry(),RR=ny(),OR=iy(),CR=ay();function IR(t=!1){let e=[$R.default,TR.default,PR.default,RR.default,OR.default,CR.default,kR.default,bR.default,SR.default,wR.default,ER.default];return t?e.push(_R.default,vR.default):e.push(gR.default,yR.default),e.push(xR.default),e}Vd.default=IR});var uy=$(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});var ve=q(),zR={message:({schemaCode:t})=>(0,ve.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ve._)`{format: ${t}}`},NR={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:zR,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?f():m();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ve._)`${p}[${i}]`),g=r.let("fType"),_=r.let("format");r.if((0,ve._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,ve._)`${h}.type || "string"`).assign(_,(0,ve._)`${h}.validate`),()=>r.assign(g,(0,ve._)`"string"`).assign(_,h)),t.fail$data((0,ve.or)(x(),S()));function x(){return c.strictSchema===!1?ve.nil:(0,ve._)`${i} && !${_}`}function S(){let w=l.$async?(0,ve._)`(${h}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,ve._)`${_}(${n})`,R=(0,ve._)`(typeof ${_} == "function" ? ${w} : ${_}.test(${n}))`;return(0,ve._)`${_} && ${_} !== true && ${g} === ${e} && !${R}`}}function m(){let p=d.formats[s];if(!p){x();return}if(p===!0)return;let[h,g,_]=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 oe=R instanceof RegExp?(0,ve.regexpCode)(R):c.code.formats?(0,ve._)`${c.code.formats}${(0,ve.getProperty)(s)}`:void 0,ge=r.scopeValue("formats",{key:s,ref:R,code:oe});return typeof R=="object"&&!(R instanceof RegExp)?[R.type||"string",R.validate,(0,ve._)`${ge}.validate`]:["string",R,ge]}function w(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ve._)`await ${_}(${n})`}return typeof g=="function"?(0,ve._)`${_}(${n})`:(0,ve._)`${_}.test(${n})`}}}};Bd.default=NR});var ly=$(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});var AR=uy(),jR=[AR.default];Kd.default=jR});var dy=$(jn=>{"use strict";Object.defineProperty(jn,"__esModule",{value:!0});jn.contentVocabulary=jn.metadataVocabulary=void 0;jn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];jn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var fy=$(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});var MR=x_(),DR=N_(),LR=cy(),ZR=ly(),py=dy(),UR=[MR.default,DR.default,(0,LR.default)(),ZR.default,py.metadataVocabulary,py.contentVocabulary];Jd.default=UR});var hy=$(ea=>{"use strict";Object.defineProperty(ea,"__esModule",{value:!0});ea.DiscrError=void 0;var my;(function(t){t.Tag="tag",t.Mapping="mapping"})(my||(ea.DiscrError=my={}))});var _y=$(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});var Mn=q(),Gd=hy(),gy=ji(),HR=Vo(),qR=X(),FR={message:({params:{discrError:t,tagName:e}})=>t===Gd.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Mn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},VR={keyword:"discriminator",type:"object",schemaType:"object",error:FR,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,Mn._)`${r}${(0,Mn.getProperty)(a)}`);e.if((0,Mn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Gd.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,Mn._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:Gd.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,Mn.Name),p}function f(){var m;let p={},h=_(o),g=!0;for(let w=0;w<i.length;w++){let R=i[w];if(R?.$ref&&!(0,qR.schemaHasRulesButRef)(R,s.self.RULES)){let ge=R.$ref;if(R=gy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,ge),R instanceof gy.SchemaEnv&&(R=R.schema),R===void 0)throw new HR.default(s.opts.uriResolver,s.baseId,ge)}let oe=(m=R?.properties)===null||m===void 0?void 0:m[a];if(typeof oe!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||_(R)),x(oe,w)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function _({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 oe of w.enum)S(oe,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}}}};Wd.default=VR});var yy=$((yM,BR)=>{BR.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 Xd=$((de,Yd)=>{"use strict";Object.defineProperty(de,"__esModule",{value:!0});de.MissingRefError=de.ValidationError=de.CodeGen=de.Name=de.nil=de.stringify=de.str=de._=de.KeywordCxt=de.Ajv=void 0;var KR=m_(),JR=fy(),GR=_y(),vy=yy(),WR=["/properties"],ta="http://json-schema.org/draft-07/schema",Dn=class extends KR.default{_addVocabularies(){super._addVocabularies(),JR.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(GR.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(vy,WR):vy;this.addMetaSchema(e,ta,!1),this.refs["http://json-schema.org/schema"]=ta}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ta)?ta:void 0)}};de.Ajv=Dn;Yd.exports=de=Dn;Yd.exports.Ajv=Dn;Object.defineProperty(de,"__esModule",{value:!0});de.default=Dn;var YR=Fo();Object.defineProperty(de,"KeywordCxt",{enumerable:!0,get:function(){return YR.KeywordCxt}});var Ln=q();Object.defineProperty(de,"_",{enumerable:!0,get:function(){return Ln._}});Object.defineProperty(de,"str",{enumerable:!0,get:function(){return Ln.str}});Object.defineProperty(de,"stringify",{enumerable:!0,get:function(){return Ln.stringify}});Object.defineProperty(de,"nil",{enumerable:!0,get:function(){return Ln.nil}});Object.defineProperty(de,"Name",{enumerable:!0,get:function(){return Ln.Name}});Object.defineProperty(de,"CodeGen",{enumerable:!0,get:function(){return Ln.CodeGen}});var XR=Ni();Object.defineProperty(de,"ValidationError",{enumerable:!0,get:function(){return XR.default}});var QR=Vo();Object.defineProperty(de,"MissingRefError",{enumerable:!0,get:function(){return QR.default}})});var Ty=$(Dt=>{"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});Dt.formatNames=Dt.fastFormats=Dt.fullFormats=void 0;function Mt(t,e){return{validate:t,compare:e}}Dt.fullFormats={date:Mt(by,rp),time:Mt(ep(!0),np),"date-time":Mt(xy(!0),Ey),"iso-time":Mt(ep(),wy),"iso-date-time":Mt(xy(),$y),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:sO,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:pO,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:iO,int32:{type:"number",validate:uO},int64:{type:"number",validate:lO},float:{type:"number",validate:ky},double:{type:"number",validate:ky},password:!0,binary:!0};Dt.fastFormats={...Dt.fullFormats,date:Mt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,rp),time:Mt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,np),"date-time":Mt(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Ey),"iso-time":Mt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,wy),"iso-date-time":Mt(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,$y),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Dt.formatNames=Object.keys(Dt.fullFormats);function eO(t){return t%4===0&&(t%100!==0||t%400===0)}var tO=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,rO=[0,31,28,31,30,31,30,31,31,30,31,30,31];function by(t){let e=tO.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],o=+e[3];return n>=1&&n<=12&&o>=1&&o<=(n===2&&eO(r)?29:rO[n])}function rp(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Qd=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function ep(t){return function(r){let n=Qd.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 np(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 wy(t,e){if(!(t&&e))return;let r=Qd.exec(t),n=Qd.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 tp=/t|\s/i;function xy(t){let e=ep(t);return function(n){let o=n.split(tp);return o.length===2&&by(o[0])&&e(o[1])}}function Ey(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function $y(t,e){if(!(t&&e))return;let[r,n]=t.split(tp),[o,s]=e.split(tp),i=rp(r,o);if(i!==void 0)return i||np(n,s)}var nO=/\/|:/,oO=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function sO(t){return nO.test(t)&&oO.test(t)}var Sy=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function iO(t){return Sy.lastIndex=0,Sy.test(t)}var aO=-(2**31),cO=2**31-1;function uO(t){return Number.isInteger(t)&&t<=cO&&t>=aO}function lO(t){return Number.isInteger(t)}function ky(){return!0}var dO=/[^\\]\\Z/;function pO(t){if(dO.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Py=$(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.formatLimitDefinition=void 0;var fO=Xd(),wt=q(),gr=wt.operators,ra={formatMaximum:{okStr:"<=",ok:gr.LTE,fail:gr.GT},formatMinimum:{okStr:">=",ok:gr.GTE,fail:gr.LT},formatExclusiveMaximum:{okStr:"<",ok:gr.LT,fail:gr.GTE},formatExclusiveMinimum:{okStr:">",ok:gr.GT,fail:gr.LTE}},mO={message:({keyword:t,schemaCode:e})=>(0,wt.str)`should be ${ra[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,wt._)`{comparison: ${ra[t].okStr}, limit: ${e}}`};Zn.formatLimitDefinition={keyword:Object.keys(ra),type:"string",schemaType:"string",$data:!0,error:mO,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 fO.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,wt._)`${f}[${c.schemaCode}]`);t.fail$data((0,wt.or)((0,wt._)`typeof ${m} != "object"`,(0,wt._)`${m} instanceof RegExp`,(0,wt._)`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=a.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${o}": format "${f}" does not define "compare" function`);let p=e.scopeValue("formats",{key:f,ref:m,code:i.code.formats?(0,wt._)`${i.code.formats}${(0,wt.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,wt._)`${f}.compare(${r}, ${n}) ${ra[o].fail} 0`}},dependencies:["format"]};var hO=t=>(t.addKeyword(Zn.formatLimitDefinition),t);Zn.default=hO});var Iy=$((ss,Cy)=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});var Un=Ty(),gO=Py(),op=q(),Ry=new op.Name("fullFormats"),_O=new op.Name("fastFormats"),sp=(t,e={keywords:!0})=>{if(Array.isArray(e))return Oy(t,e,Un.fullFormats,Ry),t;let[r,n]=e.mode==="fast"?[Un.fastFormats,_O]:[Un.fullFormats,Ry],o=e.formats||Un.formatNames;return Oy(t,o,r,n),e.keywords&&(0,gO.default)(t),t};sp.get=(t,e="full")=>{let n=(e==="fast"?Un.fastFormats:Un.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function Oy(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,op._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}Cy.exports=ss=sp;Object.defineProperty(ss,"__esModule",{value:!0});ss.default=sp});var gv,_v=we(()=>{"use strict";gv={"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"}});function cs(t,e){let r=ma[e],n=_p(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function _p(t,e){if(e){let r=ma[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}var Tt,YO,yv,ma,CD,ID,vv=we(()=>{"use strict";Tt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},YO=["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"],yv=YO.join("|"),ma={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},CD=[Tt.PRE_TOOL_USE,Tt.SESSION_START],ID=[Tt.POST_TOOL_USE,Tt.PRE_COMPACT,Tt.USER_PROMPT_SUBMIT]});var vp={};tt(vp,{ClaudeCodeAdapter:()=>yp});import{createHash as xv}from"node:crypto";import{readFileSync as qn,writeFileSync as ha,mkdirSync as XO,copyFileSync as QO,accessSync as Sv,readdirSync as eC,chmodSync as tC,constants as kv}from"node:fs";import{resolve as Lt,join as us}from"node:path";import{homedir as nn}from"node:os";var yp,xp=we(()=>{"use strict";vv();yp=class{name="Claude Code";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{updatedInput:e.updatedInput};if(e.decision==="context"&&e.additionalContext)return{additionalContext:e.additionalContext};if(e.decision==="ask")return{permissionDecision:"ask"}}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),e.updatedOutput&&(r.updatedMCPToolOutput=e.updatedOutput),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Lt(nn(),".claude","settings.json")}getSessionDir(){let e=us(nn(),".claude","context-mode","sessions");return XO(e,{recursive:!0}),e}getSessionDBPath(e){let r=xv("sha256").update(e).digest("hex").slice(0,16);return us(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=xv("sha256").update(e).digest("hex").slice(0,16);return us(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=qn(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){ha(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=[us(e,"hooks","hooks.json"),us(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=qn(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=>cs(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>cs(i,n)))}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read settings.json"};let r=e.enabledPlugins;if(!r)return{check:"Plugin registration",status:"warn",message:"No enabledPlugins section found (might be using standalone MCP mode)"};let n=Object.keys(r).find(o=>o.startsWith("context-mode"));return n&&r[n]?{check:"Plugin registration",status:"pass",message:`Plugin enabled: ${n}`}:{check:"Plugin registration",status:"warn",message:"context-mode not in enabledPlugins (might be using standalone MCP mode)"}}getInstalledVersion(){try{let r=Lt(nn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(qn(r,"utf-8")).plugins??{};for(let[s,i]of Object.entries(o)){if(!s.toLowerCase().includes("context-mode"))continue;let a=i;if(a.length>0&&typeof a[0].version=="string")return a[0].version}}catch{}let e=[Lt(nn(),".claude"),Lt(nn(),".config","claude")];for(let r of e){let n=Lt(r,"plugins","cache","context-mode","context-mode");try{let s=eC(n).filter(i=>/^\d+\.\d+\.\d+/.test(i)).sort((i,a)=>{let c=i.split(".").map(Number),u=a.split(".").map(Number);for(let l=0;l<3;l++)if((c[l]??0)!==(u[l]??0))return(c[l]??0)-(u[l]??0);return 0});if(s.length>0)return s[s.length-1]}catch{}}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[],s=[Tt.PRE_TOOL_USE,Tt.SESSION_START];for(let i of s){let a=_p(i,e);if(i===Tt.PRE_TOOL_USE){let c={matcher:yv,hooks:[{type:"command",command:a}]},u=n.PreToolUse;if(u&&Array.isArray(u)){let l=u.findIndex(d=>cs(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=>cs(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{Sv(e,kv.R_OK);let r=e+".bak";return QO(e,r),r}catch{return null}}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(ma)){let o=Lt(e,"hooks",n);try{Sv(o,kv.R_OK),tC(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=Lt(nn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(qn(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();ha(n,JSON.stringify(o,null,2)+`
11
11
  `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"CLAUDE.md",globalPath:Lt(nn(),".claude","CLAUDE.md"),projectRelativePath:"CLAUDE.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Lt(e,n.projectRelativePath),s=Lt(r,"configs","claude-code",n.fileName);try{let i=qn(s,"utf-8");try{let a=qn(o,"utf-8");return a.includes("context-mode")?null:(ha(o,a.trimEnd()+`
12
12
 
13
- `+i,"utf-8"),o)}catch{return ha(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 Fn(t,e){let r=Sp[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var xe,Sp,LD,ZD,kv=we(()=>{"use strict";xe={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},Sp={[xe.BEFORE_TOOL]:"beforetool.mjs",[xe.AFTER_TOOL]:"aftertool.mjs",[xe.PRE_COMPRESS]:"precompress.mjs",[xe.SESSION_START]:"sessionstart.mjs"},LD=[xe.BEFORE_TOOL,xe.SESSION_START],ZD=[xe.AFTER_TOOL,xe.PRE_COMPRESS]});var Tv={};tt(Tv,{GeminiCLIAdapter:()=>kp});import{createHash as bv}from"node:crypto";import{readFileSync as us,writeFileSync as ga,mkdirSync as wv,copyFileSync as eC,accessSync as Ev,chmodSync as tC,constants as $v}from"node:fs";import{resolve as yr,join as _a}from"node:path";import{homedir as Vn}from"node:os";var kp,Pv=we(()=>{"use strict";kv();kp=class{name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return yr(Vn(),".gemini","settings.json")}getSessionDir(){let e=_a(Vn(),".gemini","context-mode","sessions");return wv(e,{recursive:!0}),e}getSessionDBPath(e){let r=bv("sha256").update(e).digest("hex").slice(0,16);return _a(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=bv("sha256").update(e).digest("hex").slice(0,16);return _a(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[xe.BEFORE_TOOL]:[{matcher:"",hooks:[{type:"command",command:Fn(xe.BEFORE_TOOL,e)}]}],[xe.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Fn(xe.AFTER_TOOL,e)}]}],[xe.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Fn(xe.PRE_COMPRESS,e)}]}],[xe.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Fn(xe.SESSION_START,e)}]}]}}readSettings(){try{let e=us(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=yr(Vn(),".gemini");wv(r,{recursive:!0}),ga(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?.[xe.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?.[xe.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=yr(Vn(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(us(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:xe.BEFORE_TOOL},{name:xe.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:Fn(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{Ev(e,$v.R_OK);let r=e+".bak";return eC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=_a(e,"hooks","gemini-cli");for(let o of Object.values(Sp)){let s=yr(n,o);try{Ev(s,$v.R_OK),tC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=yr(Vn(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(us(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),ga(n,JSON.stringify(o,null,2)+`
15
- `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:yr(Vn(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=yr(e,n.projectRelativePath),s=yr(r,"configs","gemini-cli",n.fileName);try{let i=us(s,"utf-8");try{let a=us(o,"utf-8");return a.includes("context-mode")?null:(ga(o,a.trimEnd()+`
13
+ `+i,"utf-8"),o)}catch{return ha(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 Fn(t,e){let r=Sp[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var xe,Sp,LD,ZD,bv=we(()=>{"use strict";xe={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},Sp={[xe.BEFORE_TOOL]:"beforetool.mjs",[xe.AFTER_TOOL]:"aftertool.mjs",[xe.PRE_COMPRESS]:"precompress.mjs",[xe.SESSION_START]:"sessionstart.mjs"},LD=[xe.BEFORE_TOOL,xe.SESSION_START],ZD=[xe.AFTER_TOOL,xe.PRE_COMPRESS]});var Pv={};tt(Pv,{GeminiCLIAdapter:()=>kp});import{createHash as wv}from"node:crypto";import{readFileSync as ls,writeFileSync as ga,mkdirSync as Ev,copyFileSync as rC,accessSync as $v,chmodSync as nC,constants as Tv}from"node:fs";import{resolve as yr,join as _a}from"node:path";import{homedir as Vn}from"node:os";var kp,Rv=we(()=>{"use strict";bv();kp=class{name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return yr(Vn(),".gemini","settings.json")}getSessionDir(){let e=_a(Vn(),".gemini","context-mode","sessions");return Ev(e,{recursive:!0}),e}getSessionDBPath(e){let r=wv("sha256").update(e).digest("hex").slice(0,16);return _a(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=wv("sha256").update(e).digest("hex").slice(0,16);return _a(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[xe.BEFORE_TOOL]:[{matcher:"",hooks:[{type:"command",command:Fn(xe.BEFORE_TOOL,e)}]}],[xe.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Fn(xe.AFTER_TOOL,e)}]}],[xe.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Fn(xe.PRE_COMPRESS,e)}]}],[xe.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Fn(xe.SESSION_START,e)}]}]}}readSettings(){try{let e=ls(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=yr(Vn(),".gemini");Ev(r,{recursive:!0}),ga(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?.[xe.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?.[xe.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=yr(Vn(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(ls(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:xe.BEFORE_TOOL},{name:xe.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:Fn(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{$v(e,Tv.R_OK);let r=e+".bak";return rC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=_a(e,"hooks","gemini-cli");for(let o of Object.values(Sp)){let s=yr(n,o);try{$v(s,Tv.R_OK),nC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=yr(Vn(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(ls(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),ga(n,JSON.stringify(o,null,2)+`
15
+ `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:yr(Vn(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=yr(e,n.projectRelativePath),s=yr(r,"configs","gemini-cli",n.fileName);try{let i=ls(s,"utf-8");try{let a=ls(o,"utf-8");return a.includes("context-mode")?null:(ga(o,a.trimEnd()+`
16
16
 
17
- `+i,"utf-8"),o)}catch{return ga(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 on,KD,JD,Rv=we(()=>{"use strict";on={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},KD=[on.BEFORE,on.AFTER],JD=[on.COMPACTING]});var Cv={};tt(Cv,{OpenCodeAdapter:()=>wp});import{createHash as Ov}from"node:crypto";import{readFileSync as ya,writeFileSync as bp,mkdirSync as rC,copyFileSync as nC,accessSync as oC,constants as sC}from"node:fs";import{resolve as Zt,join as ls}from"node:path";import{homedir as ds}from"node:os";var wp,Iv=we(()=>{"use strict";Rv();wp=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 Zt("opencode.json")}getSessionDir(){let e=ls(ds(),".config","opencode","context-mode","sessions");return rC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Ov("sha256").update(e).digest("hex").slice(0,16);return ls(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Ov("sha256").update(e).digest("hex").slice(0,16);return ls(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[on.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[on.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[on.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[Zt("opencode.json"),Zt(".opencode","opencode.json"),ls(ds(),".config","opencode","opencode.json")];for(let r of e)try{let n=ya(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=Zt("opencode.json");bp(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=Zt(ds(),".cache","opencode","node_modules","context-mode","package.json"),r=JSON.parse(ya(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=[Zt("opencode.json"),Zt(".opencode","opencode.json"),ls(ds(),".config","opencode","opencode.json")];for(let r of e)try{oC(r,sC.R_OK);let n=r+".bak";return nC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:Zt(ds(),".config","opencode","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Zt(e,n.projectRelativePath),s=Zt(r,"configs","opencode",n.fileName);try{let i=ya(s,"utf-8");try{let a=ya(o,"utf-8");return a.includes("context-mode")?null:(bp(o,a.trimEnd()+`
17
+ `+i,"utf-8"),o)}catch{return ga(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 on,KD,JD,Ov=we(()=>{"use strict";on={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},KD=[on.BEFORE,on.AFTER],JD=[on.COMPACTING]});var Iv={};tt(Iv,{OpenCodeAdapter:()=>wp});import{createHash as Cv}from"node:crypto";import{readFileSync as ya,writeFileSync as bp,mkdirSync as oC,copyFileSync as sC,accessSync as iC,constants as aC}from"node:fs";import{resolve as Zt,join as ds}from"node:path";import{homedir as ps}from"node:os";var wp,zv=we(()=>{"use strict";Ov();wp=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 Zt("opencode.json")}getSessionDir(){let e=ds(ps(),".config","opencode","context-mode","sessions");return oC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Cv("sha256").update(e).digest("hex").slice(0,16);return ds(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Cv("sha256").update(e).digest("hex").slice(0,16);return ds(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[on.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[on.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[on.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[Zt("opencode.json"),Zt(".opencode","opencode.json"),ds(ps(),".config","opencode","opencode.json")];for(let r of e)try{let n=ya(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=Zt("opencode.json");bp(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=Zt(ps(),".cache","opencode","node_modules","context-mode","package.json"),r=JSON.parse(ya(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=[Zt("opencode.json"),Zt(".opencode","opencode.json"),ds(ps(),".config","opencode","opencode.json")];for(let r of e)try{iC(r,aC.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:Zt(ps(),".config","opencode","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Zt(e,n.projectRelativePath),s=Zt(r,"configs","opencode",n.fileName);try{let i=ya(s,"utf-8");try{let a=ya(o,"utf-8");return a.includes("context-mode")?null:(bp(o,a.trimEnd()+`
19
19
 
20
- `+i,"utf-8"),o)}catch{return bp(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var sn,tL,rL,zv=we(()=>{"use strict";sn={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},tL=[sn.TOOL_CALL_BEFORE,sn.TOOL_CALL_AFTER],rL=[sn.COMMAND_NEW]});var Av={};tt(Av,{OpenClawAdapter:()=>$p});import{createHash as Nv}from"node:crypto";import{readFileSync as Bn,writeFileSync as Ep,mkdirSync as iC,copyFileSync as aC,accessSync as cC,constants as uC}from"node:fs";import{resolve as mt,join as ps}from"node:path";import{homedir as fs}from"node:os";var $p,jv=we(()=>{"use strict";zv();$p=class{name="OpenClaw";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.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=ps(fs(),".openclaw","context-mode","sessions");return iC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Nv("sha256").update(e).digest("hex").slice(0,16);return ps(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Nv("sha256").update(e).digest("hex").slice(0,16);return ps(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[sn.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[sn.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[sn.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[mt("openclaw.json"),mt(".openclaw","openclaw.json"),ps(fs(),".openclaw","openclaw.json")];for(let r of e)try{let n=Bn(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=mt("openclaw.json");Ep(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(fs(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Bn(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(Bn(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"),ps(fs(),".openclaw","openclaw.json")];for(let r of e)try{cC(r,uC.R_OK);let n=r+".bak";return aC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:mt(fs(),".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=Bn(s,"utf-8")}catch{let a=mt(r,"configs","opencode",n.fileName);i=Bn(a,"utf-8")}try{let a=Bn(o,"utf-8");return a.includes("context-mode")?null:(Ep(o,a.trimEnd()+`
20
+ `+i,"utf-8"),o)}catch{return bp(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var sn,tL,rL,Nv=we(()=>{"use strict";sn={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},tL=[sn.TOOL_CALL_BEFORE,sn.TOOL_CALL_AFTER],rL=[sn.COMMAND_NEW]});var jv={};tt(jv,{OpenClawAdapter:()=>$p});import{createHash as Av}from"node:crypto";import{readFileSync as Bn,writeFileSync as Ep,mkdirSync as cC,copyFileSync as uC,accessSync as lC,constants as dC}from"node:fs";import{resolve as mt,join as fs}from"node:path";import{homedir as ms}from"node:os";var $p,Mv=we(()=>{"use strict";Nv();$p=class{name="OpenClaw";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.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=fs(ms(),".openclaw","context-mode","sessions");return cC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Av("sha256").update(e).digest("hex").slice(0,16);return fs(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Av("sha256").update(e).digest("hex").slice(0,16);return fs(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[sn.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[sn.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[sn.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[mt("openclaw.json"),mt(".openclaw","openclaw.json"),fs(ms(),".openclaw","openclaw.json")];for(let r of e)try{let n=Bn(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=mt("openclaw.json");Ep(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(ms(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Bn(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(Bn(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"),fs(ms(),".openclaw","openclaw.json")];for(let r of e)try{lC(r,dC.R_OK);let n=r+".bak";return uC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:mt(ms(),".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=Bn(s,"utf-8")}catch{let a=mt(r,"configs","opencode",n.fileName);i=Bn(a,"utf-8")}try{let a=Bn(o,"utf-8");return a.includes("context-mode")?null:(Ep(o,a.trimEnd()+`
22
22
 
23
- `+i,"utf-8"),o)}catch{return Ep(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var Lv={};tt(Lv,{CodexAdapter:()=>Rp});import{createHash as Mv}from"node:crypto";import{readFileSync as ms,writeFileSync as Dv,mkdirSync as lC,copyFileSync as dC,accessSync as pC,constants as fC}from"node:fs";import{resolve as hs,join as Tp,dirname as mC}from"node:path";import{fileURLToPath as hC}from"node:url";import{homedir as Pp}from"node:os";var Rp,Zv=we(()=>{"use strict";Rp=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 hs(Pp(),".codex","config.toml")}getSessionDir(){let e=Tp(Pp(),".codex","context-mode","sessions");return lC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Mv("sha256").update(e).digest("hex").slice(0,16);return Tp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Mv("sha256").update(e).digest("hex").slice(0,16);return Tp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{return{_raw_toml:ms(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=ms(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{pC(e,fC.R_OK);let r=e+".bak";return dC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:hs(Pp(),".codex","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=hs(e,n.projectRelativePath),s=hs(r,"configs","codex",n.fileName);try{let i=ms(s,"utf-8");try{let a=ms(o,"utf-8");return a.includes("context-mode")?null:(Dv(o,a.trimEnd()+`
23
+ `+i,"utf-8"),o)}catch{return Ep(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var Zv={};tt(Zv,{CodexAdapter:()=>Rp});import{createHash as Dv}from"node:crypto";import{readFileSync as hs,writeFileSync as Lv,mkdirSync as pC,copyFileSync as fC,accessSync as mC,constants as hC}from"node:fs";import{resolve as gs,join as Tp,dirname as gC}from"node:path";import{fileURLToPath as _C}from"node:url";import{homedir as Pp}from"node:os";var Rp,Uv=we(()=>{"use strict";Rp=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 gs(Pp(),".codex","config.toml")}getSessionDir(){let e=Tp(Pp(),".codex","context-mode","sessions");return pC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Dv("sha256").update(e).digest("hex").slice(0,16);return Tp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Dv("sha256").update(e).digest("hex").slice(0,16);return Tp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{return{_raw_toml:hs(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=hs(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{mC(e,hC.R_OK);let r=e+".bak";return fC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:gs(Pp(),".codex","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=gs(e,n.projectRelativePath),s=gs(r,"configs","codex",n.fileName);try{let i=hs(s,"utf-8");try{let a=hs(o,"utf-8");return a.includes("context-mode")?null:(Lv(o,a.trimEnd()+`
24
24
 
25
- `+i,"utf-8"),o)}catch{return Dv(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=hs(mC(hC(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return ms(e,"utf-8")}catch{return`# context-mode
25
+ `+i,"utf-8"),o)}catch{return Lv(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=gs(gC(_C(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return hs(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 Kn(t,e){let r=va[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/${r}"`:`context-mode hook vscode-copilot ${t.toLowerCase()}`}var ie,va,hL,gL,Uv=we(()=>{"use strict";ie={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},va={[ie.PRE_TOOL_USE]:"pretooluse.mjs",[ie.POST_TOOL_USE]:"posttooluse.mjs",[ie.PRE_COMPACT]:"precompact.mjs",[ie.SESSION_START]:"sessionstart.mjs"},hL=[ie.PRE_TOOL_USE,ie.SESSION_START],gL=[ie.POST_TOOL_USE,ie.PRE_COMPACT]});var qv={};tt(qv,{VSCodeCopilotAdapter:()=>zp});import{createHash as Hv}from"node:crypto";import{readFileSync as Jn,writeFileSync as xa,mkdirSync as Sa,copyFileSync as gC,accessSync as Op,existsSync as _C,chmodSync as yC,constants as Cp}from"node:fs";import{resolve as et,join as vr}from"node:path";import{homedir as Ip}from"node:os";var zp,Fv=we(()=>{"use strict";Uv();zp=class{name="VS Code Copilot";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:ie.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:ie.PRE_TOOL_USE,additionalContext:e.additionalContext}};if(e.decision==="ask")return{permissionDecision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{hookSpecificOutput:{hookEventName:ie.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:ie.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return et(".github","hooks","context-mode.json")}getSessionDir(){let e=et(".github","context-mode","sessions"),r=vr(Ip(),".vscode","context-mode","sessions"),n=_C(et(".github"))?e:r;return Sa(n,{recursive:!0}),n}getSessionDBPath(e){let r=Hv("sha256").update(e).digest("hex").slice(0,16);return vr(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Hv("sha256").update(e).digest("hex").slice(0,16);return vr(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ie.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Kn(ie.PRE_TOOL_USE,e)}]}],[ie.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Kn(ie.POST_TOOL_USE,e)}]}],[ie.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:Kn(ie.PRE_COMPACT,e)}]}],[ie.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Kn(ie.SESSION_START,e)}]}]}}readSettings(){let e=[this.getSettingsPath(),et(".claude","settings.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=this.getSettingsPath(),n=et(".github","hooks");Sa(n,{recursive:!0}),xa(r,JSON.stringify(e,null,2)+`
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 Kn(t,e){let r=va[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/${r}"`:`context-mode hook vscode-copilot ${t.toLowerCase()}`}var ie,va,hL,gL,Hv=we(()=>{"use strict";ie={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},va={[ie.PRE_TOOL_USE]:"pretooluse.mjs",[ie.POST_TOOL_USE]:"posttooluse.mjs",[ie.PRE_COMPACT]:"precompact.mjs",[ie.SESSION_START]:"sessionstart.mjs"},hL=[ie.PRE_TOOL_USE,ie.SESSION_START],gL=[ie.POST_TOOL_USE,ie.PRE_COMPACT]});var Fv={};tt(Fv,{VSCodeCopilotAdapter:()=>zp});import{createHash as qv}from"node:crypto";import{readFileSync as Jn,writeFileSync as xa,mkdirSync as Sa,copyFileSync as yC,accessSync as Op,existsSync as vC,chmodSync as xC,constants as Cp}from"node:fs";import{resolve as et,join as vr}from"node:path";import{homedir as Ip}from"node:os";var zp,Vv=we(()=>{"use strict";Hv();zp=class{name="VS Code Copilot";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:ie.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:ie.PRE_TOOL_USE,additionalContext:e.additionalContext}};if(e.decision==="ask")return{permissionDecision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{hookSpecificOutput:{hookEventName:ie.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:ie.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return et(".github","hooks","context-mode.json")}getSessionDir(){let e=et(".github","context-mode","sessions"),r=vr(Ip(),".vscode","context-mode","sessions"),n=vC(et(".github"))?e:r;return Sa(n,{recursive:!0}),n}getSessionDBPath(e){let r=qv("sha256").update(e).digest("hex").slice(0,16);return vr(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=qv("sha256").update(e).digest("hex").slice(0,16);return vr(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ie.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Kn(ie.PRE_TOOL_USE,e)}]}],[ie.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Kn(ie.POST_TOOL_USE,e)}]}],[ie.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:Kn(ie.PRE_COMPACT,e)}]}],[ie.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Kn(ie.SESSION_START,e)}]}]}}readSettings(){let e=[this.getSettingsPath(),et(".claude","settings.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=this.getSettingsPath(),n=et(".github","hooks");Sa(n,{recursive:!0}),xa(r,JSON.stringify(e,null,2)+`
28
28
  `,"utf-8")}validateHooks(e){let r=[],n=et(".github","hooks");try{Op(n,Cp.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=Jn(o,"utf-8"),a=JSON.parse(s).hooks;a?.[ie.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in context-mode.json",fix:"context-mode upgrade"}),a?.[ie.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in context-mode.json",fix:"context-mode upgrade"})}catch{r.push({check:"Hook configuration",status:"fail",message:"Could not read .github/hooks/context-mode.json",fix:"context-mode upgrade"})}return r.push({check:"API stability",status:"warn",message:"VS Code Copilot hooks are in preview \u2014 API may change without notice"}),r.push({check:"Matcher support",status:"warn",message:"Matchers are parsed but IGNORED \u2014 all hooks fire on all tools"}),r}checkPluginRegistration(){try{let e=et(".vscode","mcp.json"),r=Jn(e,"utf-8"),o=JSON.parse(r).servers;return o&&Object.keys(o).some(i=>i.includes("context-mode"))?{check:"MCP registration",status:"pass",message:"context-mode found in .vscode/mcp.json"}:{check:"MCP registration",status:"fail",message:"context-mode not found in .vscode/mcp.json",fix:"Add context-mode server to .vscode/mcp.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read .vscode/mcp.json"}}}getInstalledVersion(){let e=[vr(Ip(),".vscode","extensions"),vr(Ip(),".vscode-insiders","extensions")];for(let r of e)try{let n=Jn(vr(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}configureAllHooks(e){let r=[],n={hooks:{}},o=n.hooks,s=[ie.PRE_TOOL_USE,ie.POST_TOOL_USE,ie.PRE_COMPACT,ie.SESSION_START];for(let c of s)va[c]&&(o[c]=[{matcher:"",hooks:[{type:"command",command:Kn(c,e)}]}],r.push(`Configured ${c} hook`));let i=et(".github","hooks");Sa(i,{recursive:!0});let a=et(i,"context-mode.json");return xa(a,JSON.stringify(n,null,2)+`
29
- `,"utf-8"),r.push(`Wrote hook config to ${a}`),r}backupSettings(){let e=this.getSettingsPath();try{Op(e,Cp.R_OK);let r=e+".bak";return gC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=vr(e,"hooks","vscode-copilot");for(let o of Object.values(va)){let s=et(n,o);try{Op(s,Cp.R_OK),yC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"copilot-instructions.md",globalPath:"",projectRelativePath:vr(".github","copilot-instructions.md")}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=et(e,n.projectRelativePath),s=et(r,"configs","vscode-copilot",n.fileName);try{let i=Jn(s,"utf-8");Sa(et(e,".github"),{recursive:!0});try{let a=Jn(o,"utf-8");return a.includes("context-mode")?null:(xa(o,a.trimEnd()+`
29
+ `,"utf-8"),r.push(`Wrote hook config to ${a}`),r}backupSettings(){let e=this.getSettingsPath();try{Op(e,Cp.R_OK);let r=e+".bak";return yC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=vr(e,"hooks","vscode-copilot");for(let o of Object.values(va)){let s=et(n,o);try{Op(s,Cp.R_OK),xC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"copilot-instructions.md",globalPath:"",projectRelativePath:vr(".github","copilot-instructions.md")}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=et(e,n.projectRelativePath),s=et(r,"configs","vscode-copilot",n.fileName);try{let i=Jn(s,"utf-8");Sa(et(e,".github"),{recursive:!0});try{let a=Jn(o,"utf-8");return a.includes("context-mode")?null:(xa(o,a.trimEnd()+`
30
30
 
31
- `+i,"utf-8"),o)}catch{return xa(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 ka(t,e){let r=Np[e],n=xr(e);return"command"in t?t.command?.includes(r)||t.command?.includes(n)||!1:t.hooks?.some(s=>s.command?.includes(r)||s.command?.includes(n))??!1}function xr(t){return`context-mode hook cursor ${t.toLowerCase()}`}var $e,Np,vC,Ap,Vv,Bv,Kv=we(()=>{"use strict";$e={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart"},Np={[$e.PRE_TOOL_USE]:"pretooluse.mjs",[$e.POST_TOOL_USE]:"posttooluse.mjs",[$e.SESSION_START]:"sessionstart.mjs"},vC=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],Ap=vC.join("|"),Vv=[$e.PRE_TOOL_USE],Bv=[$e.POST_TOOL_USE]});var ex={};tt(ex,{CursorAdapter:()=>Mp});import{createHash as Jv}from"node:crypto";import{readFileSync as jp,writeFileSync as xC,mkdirSync as Gv,copyFileSync as SC,accessSync as Wv,chmodSync as kC,constants as Yv,existsSync as Xv}from"node:fs";import{execSync as bC}from"node:child_process";import{resolve as Gn,join as an}from"node:path";import{homedir as ba}from"node:os";var Qv,Mp,tx=we(()=>{"use strict";Kv();Qv="/Library/Application Support/Cursor/hooks.json",Mp=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 Gn(".cursor","hooks.json")}getSessionDir(){let e=an(ba(),".cursor","context-mode","sessions");return Gv(e,{recursive:!0}),e}getSessionDBPath(e){let r=Jv("sha256").update(e).digest("hex").slice(0,16);return an(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Jv("sha256").update(e).digest("hex").slice(0,16);return an(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[$e.PRE_TOOL_USE]:[{type:"command",command:xr($e.PRE_TOOL_USE),matcher:Ap,loop_limit:null,failClosed:!1}],[$e.POST_TOOL_USE]:[{type:"command",command:xr($e.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[$e.SESSION_START]:[{type:"command",command:xr($e.SESSION_START),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=jp(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();Gv(Gn(".cursor"),{recursive:!0}),xC(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 Vv){let i=o[s],a=Array.isArray(i)&&i.some(c=>ka(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 Bv){let i=o[s],a=Array.isArray(i)&&i.some(c=>ka(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 Xv(Qv)&&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=[Gn(".cursor","mcp.json"),an(ba(),".cursor","mcp.json")];for(let r of e)try{let n=jp(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,$e.PRE_TOOL_USE,{type:"command",command:xr($e.PRE_TOOL_USE),matcher:Ap,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,$e.POST_TOOL_USE,{type:"command",command:xr($e.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,$e.SESSION_START,{type:"command",command:xr($e.SESSION_START),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}backupSettings(){let e=this.getSettingsPath();try{Wv(e,Yv.R_OK);let r=e+".bak";return SC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=an(e,"hooks","cursor");for(let o of Object.values(Np)){let s=Gn(n,o);try{Wv(s,Yv.R_OK),kC(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(),an(ba(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(Qv),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=jp(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[Gn(".claude","settings.json"),Gn(".claude","settings.local.json"),an(ba(),".claude","settings.json")].some(r=>Xv(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>ka(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 sx={};tt(sx,{AntigravityAdapter:()=>Zp});import{createHash as rx}from"node:crypto";import{readFileSync as Wn,writeFileSync as Dp,mkdirSync as nx,copyFileSync as wC,accessSync as EC,constants as $C}from"node:fs";import{resolve as Yn,join as Lp,dirname as ox}from"node:path";import{fileURLToPath as TC}from"node:url";import{homedir as wa}from"node:os";var Zp,ix=we(()=>{"use strict";Zp=class{name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Yn(wa(),".gemini","antigravity","mcp_config.json")}getSessionDir(){let e=Lp(wa(),".gemini","context-mode","sessions");return nx(e,{recursive:!0}),e}getSessionDBPath(e){let r=rx("sha256").update(e).digest("hex").slice(0,16);return Lp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=rx("sha256").update(e).digest("hex").slice(0,16);return Lp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=Wn(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();nx(ox(r),{recursive:!0}),Dp(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=Wn(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=Yn(wa(),".gemini","extensions","context-mode","package.json");return JSON.parse(Wn(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{EC(e,$C.R_OK);let r=e+".bak";return wC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:Yn(wa(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Yn(e,n.projectRelativePath),s=Yn(r,"configs","antigravity",n.fileName);try{let i=Wn(s,"utf-8");try{let a=Wn(o,"utf-8");return a.includes("context-mode")?null:(Dp(o,a.trimEnd()+`
31
+ `+i,"utf-8"),o)}catch{return xa(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 ka(t,e){let r=Np[e],n=xr(e);return"command"in t?t.command?.includes(r)||t.command?.includes(n)||!1:t.hooks?.some(s=>s.command?.includes(r)||s.command?.includes(n))??!1}function xr(t){return`context-mode hook cursor ${t.toLowerCase()}`}var $e,Np,SC,Ap,Bv,Kv,Jv=we(()=>{"use strict";$e={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart"},Np={[$e.PRE_TOOL_USE]:"pretooluse.mjs",[$e.POST_TOOL_USE]:"posttooluse.mjs",[$e.SESSION_START]:"sessionstart.mjs"},SC=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],Ap=SC.join("|"),Bv=[$e.PRE_TOOL_USE],Kv=[$e.POST_TOOL_USE]});var tx={};tt(tx,{CursorAdapter:()=>Mp});import{createHash as Gv}from"node:crypto";import{readFileSync as jp,writeFileSync as kC,mkdirSync as Wv,copyFileSync as bC,accessSync as Yv,chmodSync as wC,constants as Xv,existsSync as Qv}from"node:fs";import{execSync as EC}from"node:child_process";import{resolve as Gn,join as an}from"node:path";import{homedir as ba}from"node:os";var ex,Mp,rx=we(()=>{"use strict";Jv();ex="/Library/Application Support/Cursor/hooks.json",Mp=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 Gn(".cursor","hooks.json")}getSessionDir(){let e=an(ba(),".cursor","context-mode","sessions");return Wv(e,{recursive:!0}),e}getSessionDBPath(e){let r=Gv("sha256").update(e).digest("hex").slice(0,16);return an(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Gv("sha256").update(e).digest("hex").slice(0,16);return an(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[$e.PRE_TOOL_USE]:[{type:"command",command:xr($e.PRE_TOOL_USE),matcher:Ap,loop_limit:null,failClosed:!1}],[$e.POST_TOOL_USE]:[{type:"command",command:xr($e.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[$e.SESSION_START]:[{type:"command",command:xr($e.SESSION_START),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=jp(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();Wv(Gn(".cursor"),{recursive:!0}),kC(r,JSON.stringify(e,null,2)+`
32
+ `,"utf-8")}validateHooks(e){let r=[],n=this.loadNativeHookConfig();if(!n)r.push({check:"Native hook config",status:"fail",message:"No readable native Cursor hook config found in .cursor/hooks.json or ~/.cursor/hooks.json",fix:"context-mode upgrade"});else{let o=n.config.hooks??{};r.push({check:"Native hook config",status:"pass",message:`Loaded ${n.path}`});for(let s of Bv){let i=o[s],a=Array.isArray(i)&&i.some(c=>ka(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 Kv){let i=o[s],a=Array.isArray(i)&&i.some(c=>ka(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 Qv(ex)&&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=[Gn(".cursor","mcp.json"),an(ba(),".cursor","mcp.json")];for(let r of e)try{let n=jp(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 EC("cursor --version",{encoding:"utf-8",stdio:["ignore","pipe","ignore"]}).trim().split(/\r?\n/)[0]||"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=this.readSettings()??{version:1,hooks:{}},n=r.hooks??{},o=[];return this.upsertHookEntry(n,$e.PRE_TOOL_USE,{type:"command",command:xr($e.PRE_TOOL_USE),matcher:Ap,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,$e.POST_TOOL_USE,{type:"command",command:xr($e.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,$e.SESSION_START,{type:"command",command:xr($e.SESSION_START),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}backupSettings(){let e=this.getSettingsPath();try{Yv(e,Xv.R_OK);let r=e+".bak";return bC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=an(e,"hooks","cursor");for(let o of Object.values(Np)){let s=Gn(n,o);try{Yv(s,Xv.R_OK),wC(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(),an(ba(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(ex),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=jp(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[Gn(".claude","settings.json"),Gn(".claude","settings.local.json"),an(ba(),".claude","settings.json")].some(r=>Qv(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>ka(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 ix={};tt(ix,{AntigravityAdapter:()=>Zp});import{createHash as nx}from"node:crypto";import{readFileSync as Wn,writeFileSync as Dp,mkdirSync as ox,copyFileSync as $C,accessSync as TC,constants as PC}from"node:fs";import{resolve as Yn,join as Lp,dirname as sx}from"node:path";import{fileURLToPath as RC}from"node:url";import{homedir as wa}from"node:os";var Zp,ax=we(()=>{"use strict";Zp=class{name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Yn(wa(),".gemini","antigravity","mcp_config.json")}getSessionDir(){let e=Lp(wa(),".gemini","context-mode","sessions");return ox(e,{recursive:!0}),e}getSessionDBPath(e){let r=nx("sha256").update(e).digest("hex").slice(0,16);return Lp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=nx("sha256").update(e).digest("hex").slice(0,16);return Lp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=Wn(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();ox(sx(r),{recursive:!0}),Dp(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=Wn(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=Yn(wa(),".gemini","extensions","context-mode","package.json");return JSON.parse(Wn(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{TC(e,PC.R_OK);let r=e+".bak";return $C(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:Yn(wa(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Yn(e,n.projectRelativePath),s=Yn(r,"configs","antigravity",n.fileName);try{let i=Wn(s,"utf-8");try{let a=Wn(o,"utf-8");return a.includes("context-mode")?null:(Dp(o,a.trimEnd()+`
33
33
 
34
- `+i,"utf-8"),o)}catch{return Dp(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Yn(ox(TC(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return Wn(e,"utf-8")}catch{return`# context-mode
34
+ `+i,"utf-8"),o)}catch{return Dp(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Yn(sx(RC(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return Wn(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 gs(t,e){let r=ax[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function _s(t,e){let r=ax[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var Se,ax,AL,jL,cx=we(()=>{"use strict";Se={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},ax={[Se.PRE_TOOL_USE]:"pretooluse.mjs",[Se.POST_TOOL_USE]:"posttooluse.mjs"},AL=[Se.PRE_TOOL_USE],jL=[Se.POST_TOOL_USE]});var dx={};tt(dx,{KiroAdapter:()=>qp});import{createHash as ux}from"node:crypto";import{readFileSync as Sr,writeFileSync as Ea,mkdirSync as Up,copyFileSync as PC,accessSync as RC,constants as OC}from"node:fs";import{resolve as Xt,join as Hp,dirname as lx}from"node:path";import{fileURLToPath as CC}from"node:url";import{homedir as Xn}from"node:os";var qp,px=we(()=>{"use strict";cx();qp=class{name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e,n=r.tool_response;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:typeof n=="string"?n:JSON.stringify(n??""),sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePreCompactInput(e){throw new Error("Kiro does not support PreCompact hooks")}parseSessionStartInput(e){throw new Error("Kiro does not support SessionStart hooks (yet)")}formatPreToolUseResponse(e){switch(e.decision){case"deny":return{exitCode:2,stderr:e.reason??"Blocked by context-mode"};case"context":return{exitCode:0,stdout:e.additionalContext??""};default:return}}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Xt(Xn(),".kiro","settings","mcp_config.json")}getSessionDir(){let e=Hp(Xn(),".kiro","context-mode","sessions");return Up(e,{recursive:!0}),e}getSessionDBPath(e){let r=ux("sha256").update(e).digest("hex").slice(0,16);return Hp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=ux("sha256").update(e).digest("hex").slice(0,16);return Hp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[Se.PRE_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:_s(Se.PRE_TOOL_USE,e)}]}],[Se.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:_s(Se.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=Sr(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Up(lx(r),{recursive:!0}),Ea(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=Xt(Xn(),".kiro","agents","default.json");try{let s=JSON.parse(Sr(n,"utf-8")).hooks??{};for(let i of[Se.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>gs(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=>gs(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"warn",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured (optional)`})}}catch{r.push({check:"Hook configuration",status:"warn",message:"Could not read ~/.kiro/agents/default.json",fix:"Run: context-mode upgrade"})}return r}checkPluginRegistration(){try{let e=Sr(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.kiro/settings/mcp_config.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.kiro/settings/mcp_config.json"}}}getInstalledVersion(){try{let e=Xt(Xn(),".kiro","extensions","context-mode","package.json");return JSON.parse(Sr(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=Xt(Xn(),".kiro","agents"),o=Xt(n,"default.json");try{Up(n,{recursive:!0});let s={};try{s=JSON.parse(Sr(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[Se.PRE_TOOL_USE]??[];a.some(u=>gs(u,Se.PRE_TOOL_USE))||(a.push({matcher:"*",command:_s(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=>gs(u,Se.POST_TOOL_USE))||(c.push({matcher:"*",command:_s(Se.POST_TOOL_USE,e)}),i[Se.POST_TOOL_USE]=c,r.push(`Added ${Se.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,Ea(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{RC(e,OC.R_OK);let r=e+".bak";return PC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"KIRO.md",globalPath:Xt(Xn(),".kiro","KIRO.md"),projectRelativePath:"KIRO.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Xt(e,n.projectRelativePath),s=Xt(r,"configs","kiro",n.fileName);try{let i=Sr(s,"utf-8");try{let a=Sr(o,"utf-8");return a.includes("context-mode")?null:(Ea(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 _s(t,e){let r=cx[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function ys(t,e){let r=cx[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var Se,cx,AL,jL,ux=we(()=>{"use strict";Se={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},cx={[Se.PRE_TOOL_USE]:"pretooluse.mjs",[Se.POST_TOOL_USE]:"posttooluse.mjs"},AL=[Se.PRE_TOOL_USE],jL=[Se.POST_TOOL_USE]});var px={};tt(px,{KiroAdapter:()=>qp});import{createHash as lx}from"node:crypto";import{readFileSync as Sr,writeFileSync as Ea,mkdirSync as Up,copyFileSync as OC,accessSync as CC,constants as IC}from"node:fs";import{resolve as Xt,join as Hp,dirname as dx}from"node:path";import{fileURLToPath as zC}from"node:url";import{homedir as Xn}from"node:os";var qp,fx=we(()=>{"use strict";ux();qp=class{name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e,n=r.tool_response;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:typeof n=="string"?n:JSON.stringify(n??""),sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePreCompactInput(e){throw new Error("Kiro does not support PreCompact hooks")}parseSessionStartInput(e){throw new Error("Kiro does not support SessionStart hooks (yet)")}formatPreToolUseResponse(e){switch(e.decision){case"deny":return{exitCode:2,stderr:e.reason??"Blocked by context-mode"};case"context":return{exitCode:0,stdout:e.additionalContext??""};default:return}}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Xt(Xn(),".kiro","settings","mcp_config.json")}getSessionDir(){let e=Hp(Xn(),".kiro","context-mode","sessions");return Up(e,{recursive:!0}),e}getSessionDBPath(e){let r=lx("sha256").update(e).digest("hex").slice(0,16);return Hp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=lx("sha256").update(e).digest("hex").slice(0,16);return Hp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[Se.PRE_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:ys(Se.PRE_TOOL_USE,e)}]}],[Se.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:ys(Se.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=Sr(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Up(dx(r),{recursive:!0}),Ea(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=Xt(Xn(),".kiro","agents","default.json");try{let s=JSON.parse(Sr(n,"utf-8")).hooks??{};for(let i of[Se.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>_s(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"fail",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured`,...c?{}:{fix:"Run: context-mode upgrade"}})}for(let i of[Se.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>_s(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"warn",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured (optional)`})}}catch{r.push({check:"Hook configuration",status:"warn",message:"Could not read ~/.kiro/agents/default.json",fix:"Run: context-mode upgrade"})}return r}checkPluginRegistration(){try{let e=Sr(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.kiro/settings/mcp_config.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.kiro/settings/mcp_config.json"}}}getInstalledVersion(){try{let e=Xt(Xn(),".kiro","extensions","context-mode","package.json");return JSON.parse(Sr(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=Xt(Xn(),".kiro","agents"),o=Xt(n,"default.json");try{Up(n,{recursive:!0});let s={};try{s=JSON.parse(Sr(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[Se.PRE_TOOL_USE]??[];a.some(u=>_s(u,Se.PRE_TOOL_USE))||(a.push({matcher:"*",command:ys(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=>_s(u,Se.POST_TOOL_USE))||(c.push({matcher:"*",command:ys(Se.POST_TOOL_USE,e)}),i[Se.POST_TOOL_USE]=c,r.push(`Added ${Se.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,Ea(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{CC(e,IC.R_OK);let r=e+".bak";return OC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"KIRO.md",globalPath:Xt(Xn(),".kiro","KIRO.md"),projectRelativePath:"KIRO.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Xt(e,n.projectRelativePath),s=Xt(r,"configs","kiro",n.fileName);try{let i=Sr(s,"utf-8");try{let a=Sr(o,"utf-8");return a.includes("context-mode")?null:(Ea(o,a.trimEnd()+`
37
37
 
38
- `+i,"utf-8"),o)}catch{return Ea(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Xt(lx(CC(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return Sr(e,"utf-8")}catch{return`# context-mode
38
+ `+i,"utf-8"),o)}catch{return Ea(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Xt(dx(zC(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return Sr(e,"utf-8")}catch{return`# context-mode
39
39
 
40
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});var mx={};tt(mx,{detectPlatform:()=>fx,getAdapter:()=>zC});import{existsSync as Qn}from"node:fs";import{resolve as eo}from"node:path";import{homedir as IC}from"node:os";function fx(t){if(t?.name){let n=hv[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"].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=IC();return Qn(eo(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Qn(eo(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Qn(eo(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Qn(eo(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Qn(eo(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Qn(eo(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:{platform:"claude-code",confidence:"low",reason:"No platform detected, defaulting to Claude Code"}}async function zC(t){switch(t??fx().platform){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(xp(),vp));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(Pv(),Tv));return new r}case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(Iv(),Cv));return new r}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(jv(),Av));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(Zv(),Lv));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(Fv(),qv));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(tx(),ex));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(ix(),sx));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(px(),dx));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(xp(),vp));return new r}}}var hx=we(()=>{"use strict";gv()});var Z={};tt(Z,{BRAND:()=>tS,DIRTY:()=>wr,EMPTY_PATH:()=>zx,INVALID:()=>A,NEVER:()=>DS,OK:()=>je,ParseStatus:()=>Te,Schema:()=>H,ZodAny:()=>tr,ZodArray:()=>Vt,ZodBigInt:()=>$r,ZodBoolean:()=>Tr,ZodBranded:()=>no,ZodCatch:()=>Dr,ZodDate:()=>Pr,ZodDefault:()=>Mr,ZodDiscriminatedUnion:()=>bs,ZodEffects:()=>it,ZodEnum:()=>Ar,ZodError:()=>Be,ZodFirstPartyTypeKind:()=>b,ZodFunction:()=>Es,ZodIntersection:()=>Ir,ZodIssueCode:()=>k,ZodLazy:()=>zr,ZodLiteral:()=>Nr,ZodMap:()=>mn,ZodNaN:()=>gn,ZodNativeEnum:()=>jr,ZodNever:()=>gt,ZodNull:()=>Or,ZodNullable:()=>Ct,ZodNumber:()=>Er,ZodObject:()=>Je,ZodOptional:()=>Ke,ZodParsedType:()=>T,ZodPipeline:()=>oo,ZodPromise:()=>rr,ZodReadonly:()=>Lr,ZodRecord:()=>ws,ZodSchema:()=>H,ZodSet:()=>hn,ZodString:()=>er,ZodSymbol:()=>pn,ZodTransformer:()=>it,ZodTuple:()=>Ot,ZodType:()=>H,ZodUndefined:()=>Rr,ZodUnion:()=>Cr,ZodUnknown:()=>Ft,ZodVoid:()=>fn,addIssueToContext:()=>E,any:()=>lS,array:()=>mS,bigint:()=>sS,boolean:()=>uf,coerce:()=>MS,custom:()=>sf,date:()=>iS,datetimeRegex:()=>nf,defaultErrorMap:()=>Ht,discriminatedUnion:()=>_S,effect:()=>RS,enum:()=>$S,function:()=>bS,getErrorMap:()=>un,getParsedType:()=>Rt,instanceof:()=>nS,intersection:()=>yS,isAborted:()=>Ss,isAsync:()=>ln,isDirty:()=>ks,isValid:()=>Qt,late:()=>rS,lazy:()=>wS,literal:()=>ES,makeIssue:()=>ro,map:()=>SS,nan:()=>oS,nativeEnum:()=>TS,never:()=>pS,null:()=>uS,nullable:()=>CS,number:()=>cf,object:()=>Aa,objectUtil:()=>Ia,oboolean:()=>jS,onumber:()=>AS,optional:()=>OS,ostring:()=>NS,pipeline:()=>zS,preprocess:()=>IS,promise:()=>PS,quotelessJson:()=>Ox,record:()=>xS,set:()=>kS,setErrorMap:()=>Ix,strictObject:()=>hS,string:()=>af,symbol:()=>aS,transformer:()=>RS,tuple:()=>vS,undefined:()=>cS,union:()=>gS,unknown:()=>dS,util:()=>B,void:()=>fS});var B;(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})(B||(B={}));var Ia;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Ia||(Ia={}));var T=B.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Rt=t=>{switch(typeof t){case"undefined":return T.undefined;case"string":return T.string;case"number":return Number.isNaN(t)?T.nan:T.number;case"boolean":return T.boolean;case"function":return T.function;case"bigint":return T.bigint;case"symbol":return T.symbol;case"object":return Array.isArray(t)?T.array:t===null?T.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?T.promise:typeof Map<"u"&&t instanceof Map?T.map:typeof Set<"u"&&t instanceof Set?T.set:typeof Date<"u"&&t instanceof Date?T.date:T.object;default:return T.unknown}};var k=B.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"]),Ox=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Be=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,B.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()}};Be.create=t=>new Be(t);var Cx=(t,e)=>{let r;switch(t.code){case k.invalid_type:t.received===T.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case k.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,B.jsonStringifyReplacer)}`;break;case k.unrecognized_keys:r=`Unrecognized key(s) in object: ${B.joinValues(t.keys,", ")}`;break;case k.invalid_union:r="Invalid input";break;case k.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${B.joinValues(t.options)}`;break;case k.invalid_enum_value:r=`Invalid enum value. Expected ${B.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}"`:B.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,B.assertNever(t)}return{message:r}},Ht=Cx;var Xp=Ht;function Ix(t){Xp=t}function un(){return Xp}var ro=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}},zx=[];function E(t,e){let r=un(),n=ro({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Ht?void 0:Ht].filter(o=>!!o)});t.common.issues.push(n)}var Te=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"}),wr=t=>({status:"dirty",value:t}),je=t=>({status:"valid",value:t}),Ss=t=>t.status==="aborted",ks=t=>t.status==="dirty",Qt=t=>t.status==="valid",ln=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}},Qp=(t,e)=>{if(Qt(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 Be(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 Rt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Rt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Te,ctx:{common:e.parent.common,data:e.data,parsedType:Rt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(ln(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Rt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return Qp(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Rt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Qt(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=>Qt(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Rt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(ln(o)?o:Promise.resolve(o));return Qp(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 Ct.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Vt.create(this)}promise(){return rr.create(this,this._def)}or(e){return Cr.create([this,e],this._def)}and(e){return Ir.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 Mr({...L(this._def),innerType:this,defaultValue:r,typeName:b.ZodDefault})}brand(){return new no({typeName:b.ZodBranded,type:this,...L(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Dr({...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 oo.create(this,e)}readonly(){return Lr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Nx=/^c[^\s-]{8,}$/i,Ax=/^[0-9a-z]+$/,jx=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Mx=/^[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,Dx=/^[a-z0-9_-]{21}$/i,Lx=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Zx=/^[-+]?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)?)??$/,Ux=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Hx="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",za,qx=/^(?:(?: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])$/,Fx=/^(?:(?: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])$/,Vx=/^(([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]))$/,Bx=/^(([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])$/,Kx=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Jx=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,tf="((\\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])))",Gx=new RegExp(`^${tf}$`);function rf(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 Wx(t){return new RegExp(`^${rf(t)}$`)}function nf(t){let e=`${tf}T${rf(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 Yx(t,e){return!!((e==="v4"||!e)&&qx.test(t)||(e==="v6"||!e)&&Vx.test(t))}function Xx(t,e){if(!Lx.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 Qx(t,e){return!!((e==="v4"||!e)&&Fx.test(t)||(e==="v6"||!e)&&Bx.test(t))}var er=class t extends H{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==T.string){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:T.string,received:s.parsedType}),A}let n=new Te,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")Ux.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(Hx,"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")Mx.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")Dx.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")Nx.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")Ax.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")jx.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"?nf(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"?Gx.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?Wx(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"?Zx.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"duration",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?Yx(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"?Xx(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"?Qx(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"?Kx.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?Jx.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64url",code:k.invalid_string,message:s.message}),n.dirty()):B.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}};er.create=t=>new er({checks:[],typeName:b.ZodString,coerce:t?.coerce??!1,...L(t)});function eS(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 Er=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)!==T.number){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:T.number,received:s.parsedType}),A}let n,o=new Te;for(let s of this._def.checks)s.kind==="int"?B.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"?eS(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()):B.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"&&B.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)}};Er.create=t=>new Er({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)!==T.bigint)return this._getInvalidInput(e);let n,o=new Te;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()):B.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return E(r,{code:k.invalid_type,expected:T.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 Tr=class extends H{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==T.boolean){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:T.boolean,received:n.parsedType}),A}return je(e.data)}};Tr.create=t=>new Tr({typeName:b.ZodBoolean,coerce:t?.coerce||!1,...L(t)});var Pr=class t extends H{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==T.date){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:T.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 Te,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()):B.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}};Pr.create=t=>new Pr({checks:[],coerce:t?.coerce||!1,typeName:b.ZodDate,...L(t)});var pn=class extends H{_parse(e){if(this._getType(e)!==T.symbol){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:T.symbol,received:n.parsedType}),A}return je(e.data)}};pn.create=t=>new pn({typeName:b.ZodSymbol,...L(t)});var Rr=class extends H{_parse(e){if(this._getType(e)!==T.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:T.undefined,received:n.parsedType}),A}return je(e.data)}};Rr.create=t=>new Rr({typeName:b.ZodUndefined,...L(t)});var Or=class extends H{_parse(e){if(this._getType(e)!==T.null){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:T.null,received:n.parsedType}),A}return je(e.data)}};Or.create=t=>new Or({typeName:b.ZodNull,...L(t)});var tr=class extends H{constructor(){super(...arguments),this._any=!0}_parse(e){return je(e.data)}};tr.create=t=>new tr({typeName:b.ZodAny,...L(t)});var Ft=class extends H{constructor(){super(...arguments),this._unknown=!0}_parse(e){return je(e.data)}};Ft.create=t=>new Ft({typeName:b.ZodUnknown,...L(t)});var gt=class extends H{_parse(e){let r=this._getOrReturnCtx(e);return E(r,{code:k.invalid_type,expected:T.never,received:r.parsedType}),A}};gt.create=t=>new gt({typeName:b.ZodNever,...L(t)});var fn=class extends H{_parse(e){if(this._getType(e)!==T.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:T.void,received:n.parsedType}),A}return je(e.data)}};fn.create=t=>new fn({typeName:b.ZodVoid,...L(t)});var Vt=class t extends H{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==T.array)return E(r,{code:k.invalid_type,expected:T.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=>Te.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new st(r,i,r.path,a)));return Te.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)}};Vt.create=(t,e)=>new Vt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:b.ZodArray,...L(e)});function dn(t){if(t instanceof Je){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Ke.create(dn(n))}return new Je({...t._def,shape:()=>e})}else return t instanceof Vt?new Vt({...t._def,type:dn(t.element)}):t instanceof Ke?Ke.create(dn(t.unwrap())):t instanceof Ct?Ct.create(dn(t.unwrap())):t instanceof Ot?Ot.create(t.items.map(e=>dn(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=B.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==T.object){let u=this._getOrReturnCtx(e);return E(u,{code:k.invalid_type,expected:T.object,received:u.parsedType}),A}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof gt&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new st(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof gt){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(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=>Te.mergeObjectSync(n,u)):Te.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 B.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 B.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return dn(this)}partial(e){let r={};for(let n of B.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 B.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 of(B.objectKeys(this.shape))}};Je.create=(t,e)=>new Je({shape:()=>t,unknownKeys:"strip",catchall:gt.create(),typeName:b.ZodObject,...L(e)});Je.strictCreate=(t,e)=>new Je({shape:()=>t,unknownKeys:"strict",catchall:gt.create(),typeName:b.ZodObject,...L(e)});Je.lazycreate=(t,e)=>new Je({shape:t,unknownKeys:"strip",catchall:gt.create(),typeName:b.ZodObject,...L(e)});var Cr=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 Be(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 Be(c));return E(r,{code:k.invalid_union,unionErrors:a}),A}}get options(){return this._def.options}};Cr.create=(t,e)=>new Cr({options:t,typeName:b.ZodUnion,...L(e)});var qt=t=>t instanceof zr?qt(t.schema):t instanceof it?qt(t.innerType()):t instanceof Nr?[t.value]:t instanceof Ar?t.options:t instanceof jr?B.objectValues(t.enum):t instanceof Mr?qt(t._def.innerType):t instanceof Rr?[void 0]:t instanceof Or?[null]:t instanceof Ke?[void 0,...qt(t.unwrap())]:t instanceof Ct?[null,...qt(t.unwrap())]:t instanceof no||t instanceof Lr?qt(t.unwrap()):t instanceof Dr?qt(t._def.innerType):[],bs=class t extends H{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==T.object)return E(r,{code:k.invalid_type,expected:T.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=qt(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 Na(t,e){let r=Rt(t),n=Rt(e);if(t===e)return{valid:!0,data:t};if(r===T.object&&n===T.object){let o=B.objectKeys(e),s=B.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=Na(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===T.array&&n===T.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=Na(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===T.date&&n===T.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var Ir=class extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Ss(s)||Ss(i))return A;let a=Na(s.value,i.value);return a.valid?((ks(s)||ks(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}))}};Ir.create=(t,e,r)=>new Ir({left:t,right:e,typeName:b.ZodIntersection,...L(r)});var Ot=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==T.array)return E(n,{code:k.invalid_type,expected:T.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=>Te.mergeArray(r,i)):Te.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Ot.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Ot({items:t,typeName:b.ZodTuple,rest:null,...L(e)})};var ws=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!==T.object)return E(n,{code:k.invalid_type,expected:T.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?Te.mergeObjectAsync(r,o):Te.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:er.create(),valueType:e,typeName:b.ZodRecord,...L(r)})}},mn=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!==T.map)return E(n,{code:k.invalid_type,expected:T.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}}}};mn.create=(t,e,r)=>new mn({valueType:e,keyType:t,typeName:b.ZodMap,...L(r)});var hn=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==T.set)return E(n,{code:k.invalid_type,expected:T.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)}};hn.create=(t,e)=>new hn({valueType:t,minSize:null,maxSize:null,typeName:b.ZodSet,...L(e)});var Es=class t extends H{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==T.function)return E(r,{code:k.invalid_type,expected:T.function,received:r.parsedType}),A;function n(a,c){return ro({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,un(),Ht].filter(u=>!!u),issueData:{code:k.invalid_arguments,argumentsError:c}})}function o(a,c){return ro({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,un(),Ht].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 rr){let a=this;return je(async function(...c){let u=new Be([]),l=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(m=>{throw u.addIssue(o(d,m)),u})})}else{let a=this;return je(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Be([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Be([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Ot.create(e).rest(Ft.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Ot.create([]).rest(Ft.create()),returns:r||Ft.create(),typeName:b.ZodFunction,...L(n)})}},zr=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})}};zr.create=(t,e)=>new zr({getter:t,typeName:b.ZodLazy,...L(e)});var Nr=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}};Nr.create=(t,e)=>new Nr({value:t,typeName:b.ZodLiteral,...L(e)});function of(t,e){return new Ar({values:t,typeName:b.ZodEnum,...L(e)})}var Ar=class t extends H{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return E(r,{expected:B.joinValues(n),received:r.parsedType,code:k.invalid_type}),A}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return E(r,{received:r.data,code:k.invalid_enum_value,options:n}),A}return je(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};Ar.create=of;var jr=class extends H{_parse(e){let r=B.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==T.string&&n.parsedType!==T.number){let o=B.objectValues(r);return E(n,{expected:B.joinValues(o),received:n.parsedType,code:k.invalid_type}),A}if(this._cache||(this._cache=new Set(B.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=B.objectValues(r);return E(n,{received:n.data,code:k.invalid_enum_value,options:o}),A}return je(e.data)}get enum(){return this._def.values}};jr.create=(t,e)=>new jr({values:t,typeName:b.ZodNativeEnum,...L(e)});var rr=class extends H{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==T.promise&&r.common.async===!1)return E(r,{code:k.invalid_type,expected:T.promise,received:r.parsedType}),A;let n=r.parsedType===T.promise?r.data:Promise.resolve(r.data);return je(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};rr.create=(t,e)=>new rr({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"?wr(c.value):r.value==="dirty"?wr(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"?wr(a.value):r.value==="dirty"?wr(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(!Qt(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=>Qt(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):A);B.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)===T.undefined?je(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ke.create=(t,e)=>new Ke({innerType:t,typeName:b.ZodOptional,...L(e)});var Ct=class extends H{_parse(e){return this._getType(e)===T.null?je(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ct.create=(t,e)=>new Ct({innerType:t,typeName:b.ZodNullable,...L(e)});var Mr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===T.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Mr.create=(t,e)=>new Mr({innerType:t,typeName:b.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...L(e)});var Dr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return ln(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Be(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Be(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Dr.create=(t,e)=>new Dr({innerType:t,typeName:b.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...L(e)});var gn=class extends H{_parse(e){if(this._getType(e)!==T.nan){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:T.nan,received:n.parsedType}),A}return{status:"valid",value:e.data}}};gn.create=t=>new gn({typeName:b.ZodNaN,...L(t)});var tS=Symbol("zod_brand"),no=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}},oo=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(),wr(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})}},Lr=class extends H{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Qt(o)&&(o.value=Object.freeze(o.value)),o);return ln(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Lr.create=(t,e)=>new Lr({innerType:t,typeName:b.ZodReadonly,...L(e)});function ef(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function sf(t,e={},r){return t?tr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=ef(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=ef(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):tr.create()}var rS={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 nS=(t,e={message:`Input not instance of ${t.name}`})=>sf(r=>r instanceof t,e),af=er.create,cf=Er.create,oS=gn.create,sS=$r.create,uf=Tr.create,iS=Pr.create,aS=pn.create,cS=Rr.create,uS=Or.create,lS=tr.create,dS=Ft.create,pS=gt.create,fS=fn.create,mS=Vt.create,Aa=Je.create,hS=Je.strictCreate,gS=Cr.create,_S=bs.create,yS=Ir.create,vS=Ot.create,xS=ws.create,SS=mn.create,kS=hn.create,bS=Es.create,wS=zr.create,ES=Nr.create,$S=Ar.create,TS=jr.create,PS=rr.create,RS=it.create,OS=Ke.create,CS=Ct.create,IS=it.createWithPreprocess,zS=oo.create,NS=()=>af().optional(),AS=()=>cf().optional(),jS=()=>uf().optional(),MS={string:(t=>er.create({...t,coerce:!0})),number:(t=>Er.create({...t,coerce:!0})),boolean:(t=>Tr.create({...t,coerce:!0})),bigint:(t=>$r.create({...t,coerce:!0})),date:(t=>Pr.create({...t,coerce:!0}))};var DS=A;var LS=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.")}},$s={};function rt(t){return t&&Object.assign($s,t),$s}var K={};tt(K,{BIGINT_FORMAT_RANGES:()=>df,Class:()=>Ma,NUMBER_FORMAT_RANGES:()=>Fa,aborted:()=>Ur,allowsEval:()=>Ua,assert:()=>FS,assertEqual:()=>ZS,assertIs:()=>HS,assertNever:()=>qS,assertNotEqual:()=>US,assignProp:()=>Za,cached:()=>ao,captureStackTrace:()=>Ps,cleanEnum:()=>nk,cleanRegex:()=>uo,clone:()=>nt,createTransparentProxy:()=>WS,defineLazy:()=>ae,esc:()=>Zr,escapeRegex:()=>nr,extend:()=>QS,finalizeIssue:()=>_t,floatSafeRemainder:()=>La,getElementAtPath:()=>VS,getEnumValues:()=>io,getLengthableOrigin:()=>lo,getParsedType:()=>GS,getSizableOrigin:()=>pf,isObject:()=>_n,isPlainObject:()=>yn,issue:()=>Va,joinValues:()=>Ts,jsonStringifyReplacer:()=>Da,merge:()=>ek,normalizeParams:()=>j,nullish:()=>co,numKeys:()=>JS,omit:()=>XS,optionalKeys:()=>qa,partial:()=>tk,pick:()=>YS,prefixIssues:()=>It,primitiveTypes:()=>lf,promiseAllObject:()=>BS,propertyKeyTypes:()=>Ha,randomString:()=>KS,required:()=>rk,stringifyPrimitive:()=>Rs,unwrapMessage:()=>so});function ZS(t){return t}function US(t){return t}function HS(t){}function qS(t){throw new Error}function FS(t){}function io(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 Ts(t,e="|"){return t.map(r=>Rs(r)).join(e)}function Da(t,e){return typeof e=="bigint"?e.toString():e}function ao(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function co(t){return t==null}function uo(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function La(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function ae(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function Za(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function VS(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function BS(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 KS(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Zr(t){return JSON.stringify(t)}var Ps=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function _n(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Ua=ao(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function yn(t){if(_n(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(_n(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function JS(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var GS=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}`)}},Ha=new Set(["string","number","symbol"]),lf=new Set(["string","number","bigint","boolean","symbol","undefined"]);function nr(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 WS(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 Rs(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function qa(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Fa={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]},df={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function YS(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 XS(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 QS(t,e){if(!yn(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 Za(this,"shape",n),n},checks:[]};return nt(t,r)}function ek(t,e){return nt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Za(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function tk(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 rk(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 Ur(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function It(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function so(t){return typeof t=="string"?t:t?.message}function _t(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=so(t.inst?._zod.def?.error?.(t))??so(e?.error?.(t))??so(r.customError?.(t))??so(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function pf(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function lo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Va(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function nk(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Ma=class{constructor(...e){}};var ff=(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,Da,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Os=v("$ZodError",ff),po=v("$ZodError",ff,{Parent:Error});function Ba(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 Ka(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 Ja=t=>(e,r,n,o)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new Bt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>_t(c,s,rt())));throw Ps(a,o?.callee),a}return i.value},Ga=Ja(po),Wa=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>_t(c,s,rt())));throw Ps(a,o?.callee),a}return i.value},Ya=Wa(po),Xa=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??Os)(s.issues.map(i=>_t(i,o,rt())))}:{success:!0,data:s.value}},Hr=Xa(po),Qa=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>_t(i,o,rt())))}:{success:!0,data:s.value}},qr=Qa(po);var mf=/^[cC][^\s-]{8,}$/,hf=/^[0-9a-z]+$/,gf=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,_f=/^[0-9a-vA-V]{20}$/,yf=/^[A-Za-z0-9]{27}$/,vf=/^[a-zA-Z0-9_-]{21}$/,xf=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Sf=/^([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})$/,ec=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 kf=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var sk="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function bf(){return new RegExp(sk,"u")}var wf=/^(?:(?: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])$/,Ef=/^(([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})$/,$f=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Tf=/^(([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])$/,Pf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,tc=/^[A-Za-z0-9_-]*$/,Rf=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Of=/^\+(?:[0-9]){6,14}[0-9]$/,Cf="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",If=new RegExp(`^${Cf}$`);function zf(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 Nf(t){return new RegExp(`^${zf(t)}$`)}function Af(t){let e=zf({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(`^${Cf}T(?:${n})$`)}var jf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Mf=/^\d+$/,Df=/^-?\d+(?:\.\d+)?/i,Lf=/true|false/i,Zf=/null/i;var Uf=/^[^A-Z]*$/,Hf=/^[^a-z]*$/;var Pe=v("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),qf={number:"number",bigint:"bigint",object:"date"},rc=v("$ZodCheckLessThan",(t,e)=>{Pe.init(t,e);let r=qf[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})}}),nc=v("$ZodCheckGreaterThan",(t,e)=>{Pe.init(t,e);let r=qf[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})}}),Ff=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):La(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})}}),Vf=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]=Fa[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=Mf)}),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 Bf=v("$ZodCheckMaxLength",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!co(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=lo(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Kf=v("$ZodCheckMinLength",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!co(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=lo(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Jf=v("$ZodCheckLengthEquals",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!co(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=lo(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})}}),fo=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=()=>{})}),Gf=v("$ZodCheckRegex",(t,e)=>{fo.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})}}),Wf=v("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Uf),fo.init(t,e)}),Yf=v("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Hf),fo.init(t,e)}),Xf=v("$ZodCheckIncludes",(t,e)=>{Pe.init(t,e);let r=nr(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})}}),Qf=v("$ZodCheckStartsWith",(t,e)=>{Pe.init(t,e);let r=new RegExp(`^${nr(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})}}),em=v("$ZodCheckEndsWith",(t,e)=>{Pe.init(t,e);let r=new RegExp(`.*${nr(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 tm=v("$ZodCheckOverwrite",(t,e)=>{Pe.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Is=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(`
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 hx={};tt(hx,{detectPlatform:()=>mx,getAdapter:()=>AC});import{existsSync as Qn}from"node:fs";import{resolve as eo}from"node:path";import{homedir as NC}from"node:os";function mx(t){if(t?.name){let n=gv[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"].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=NC();return Qn(eo(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Qn(eo(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Qn(eo(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Qn(eo(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Qn(eo(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Qn(eo(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:{platform:"claude-code",confidence:"low",reason:"No platform detected, defaulting to Claude Code"}}async function AC(t){switch(t??mx().platform){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(xp(),vp));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(Rv(),Pv));return new r}case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(zv(),Iv));return new r}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(Mv(),jv));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(Uv(),Zv));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(Vv(),Fv));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(rx(),tx));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(ax(),ix));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(fx(),px));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(xp(),vp));return new r}}}var gx=we(()=>{"use strict";_v()});var Z={};tt(Z,{BRAND:()=>nS,DIRTY:()=>wr,EMPTY_PATH:()=>Ax,INVALID:()=>A,NEVER:()=>ZS,OK:()=>je,ParseStatus:()=>Te,Schema:()=>H,ZodAny:()=>tr,ZodArray:()=>Vt,ZodBigInt:()=>$r,ZodBoolean:()=>Tr,ZodBranded:()=>oo,ZodCatch:()=>Dr,ZodDate:()=>Pr,ZodDefault:()=>Mr,ZodDiscriminatedUnion:()=>bs,ZodEffects:()=>it,ZodEnum:()=>Ar,ZodError:()=>Be,ZodFirstPartyTypeKind:()=>b,ZodFunction:()=>Es,ZodIntersection:()=>Ir,ZodIssueCode:()=>k,ZodLazy:()=>zr,ZodLiteral:()=>Nr,ZodMap:()=>mn,ZodNaN:()=>gn,ZodNativeEnum:()=>jr,ZodNever:()=>gt,ZodNull:()=>Or,ZodNullable:()=>Ct,ZodNumber:()=>Er,ZodObject:()=>Je,ZodOptional:()=>Ke,ZodParsedType:()=>T,ZodPipeline:()=>so,ZodPromise:()=>rr,ZodReadonly:()=>Lr,ZodRecord:()=>ws,ZodSchema:()=>H,ZodSet:()=>hn,ZodString:()=>er,ZodSymbol:()=>pn,ZodTransformer:()=>it,ZodTuple:()=>Ot,ZodType:()=>H,ZodUndefined:()=>Rr,ZodUnion:()=>Cr,ZodUnknown:()=>Ft,ZodVoid:()=>fn,addIssueToContext:()=>E,any:()=>pS,array:()=>gS,bigint:()=>aS,boolean:()=>lf,coerce:()=>LS,custom:()=>af,date:()=>cS,datetimeRegex:()=>of,defaultErrorMap:()=>Ht,discriminatedUnion:()=>vS,effect:()=>CS,enum:()=>PS,function:()=>ES,getErrorMap:()=>un,getParsedType:()=>Rt,instanceof:()=>sS,intersection:()=>xS,isAborted:()=>Ss,isAsync:()=>ln,isDirty:()=>ks,isValid:()=>Qt,late:()=>oS,lazy:()=>$S,literal:()=>TS,makeIssue:()=>no,map:()=>bS,nan:()=>iS,nativeEnum:()=>RS,never:()=>mS,null:()=>dS,nullable:()=>zS,number:()=>uf,object:()=>Aa,objectUtil:()=>Ia,oboolean:()=>DS,onumber:()=>MS,optional:()=>IS,ostring:()=>jS,pipeline:()=>AS,preprocess:()=>NS,promise:()=>OS,quotelessJson:()=>Ix,record:()=>kS,set:()=>wS,setErrorMap:()=>Nx,strictObject:()=>_S,string:()=>cf,symbol:()=>uS,transformer:()=>CS,tuple:()=>SS,undefined:()=>lS,union:()=>yS,unknown:()=>fS,util:()=>B,void:()=>hS});var B;(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})(B||(B={}));var Ia;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Ia||(Ia={}));var T=B.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Rt=t=>{switch(typeof t){case"undefined":return T.undefined;case"string":return T.string;case"number":return Number.isNaN(t)?T.nan:T.number;case"boolean":return T.boolean;case"function":return T.function;case"bigint":return T.bigint;case"symbol":return T.symbol;case"object":return Array.isArray(t)?T.array:t===null?T.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?T.promise:typeof Map<"u"&&t instanceof Map?T.map:typeof Set<"u"&&t instanceof Set?T.set:typeof Date<"u"&&t instanceof Date?T.date:T.object;default:return T.unknown}};var k=B.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"]),Ix=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Be=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,B.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()}};Be.create=t=>new Be(t);var zx=(t,e)=>{let r;switch(t.code){case k.invalid_type:t.received===T.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case k.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,B.jsonStringifyReplacer)}`;break;case k.unrecognized_keys:r=`Unrecognized key(s) in object: ${B.joinValues(t.keys,", ")}`;break;case k.invalid_union:r="Invalid input";break;case k.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${B.joinValues(t.options)}`;break;case k.invalid_enum_value:r=`Invalid enum value. Expected ${B.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}"`:B.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,B.assertNever(t)}return{message:r}},Ht=zx;var Qp=Ht;function Nx(t){Qp=t}function un(){return Qp}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}},Ax=[];function E(t,e){let r=un(),n=no({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Ht?void 0:Ht].filter(o=>!!o)});t.common.issues.push(n)}var Te=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"}),wr=t=>({status:"dirty",value:t}),je=t=>({status:"valid",value:t}),Ss=t=>t.status==="aborted",ks=t=>t.status==="dirty",Qt=t=>t.status==="valid",ln=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}},ef=(t,e)=>{if(Qt(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 Be(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 Rt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Rt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Te,ctx:{common:e.parent.common,data:e.data,parsedType:Rt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(ln(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Rt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return ef(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Rt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Qt(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=>Qt(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Rt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(ln(o)?o:Promise.resolve(o));return ef(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 Ct.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Vt.create(this)}promise(){return rr.create(this,this._def)}or(e){return Cr.create([this,e],this._def)}and(e){return Ir.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 Mr({...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 Dr({...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 Lr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},jx=/^c[^\s-]{8,}$/i,Mx=/^[0-9a-z]+$/,Dx=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Lx=/^[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,Zx=/^[a-z0-9_-]{21}$/i,Ux=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Hx=/^[-+]?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)?)??$/,qx=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Fx="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",za,Vx=/^(?:(?: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])$/,Bx=/^(?:(?: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])$/,Kx=/^(([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]))$/,Jx=/^(([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])$/,Gx=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Wx=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,rf="((\\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])))",Yx=new RegExp(`^${rf}$`);function nf(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 Xx(t){return new RegExp(`^${nf(t)}$`)}function of(t){let e=`${rf}T${nf(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 Qx(t,e){return!!((e==="v4"||!e)&&Vx.test(t)||(e==="v6"||!e)&&Kx.test(t))}function eS(t,e){if(!Ux.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 tS(t,e){return!!((e==="v4"||!e)&&Bx.test(t)||(e==="v6"||!e)&&Jx.test(t))}var er=class t extends H{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==T.string){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:T.string,received:s.parsedType}),A}let n=new Te,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")qx.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(Fx,"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")Lx.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")Zx.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")jx.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")Mx.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")Dx.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"?of(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"?Yx.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?Xx(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"?Hx.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"duration",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?Qx(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"?eS(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"?tS(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"?Gx.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?Wx.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64url",code:k.invalid_string,message:s.message}),n.dirty()):B.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}};er.create=t=>new er({checks:[],typeName:b.ZodString,coerce:t?.coerce??!1,...L(t)});function rS(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 Er=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)!==T.number){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:T.number,received:s.parsedType}),A}let n,o=new Te;for(let s of this._def.checks)s.kind==="int"?B.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"?rS(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()):B.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"&&B.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)}};Er.create=t=>new Er({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)!==T.bigint)return this._getInvalidInput(e);let n,o=new Te;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()):B.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return E(r,{code:k.invalid_type,expected:T.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 Tr=class extends H{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==T.boolean){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:T.boolean,received:n.parsedType}),A}return je(e.data)}};Tr.create=t=>new Tr({typeName:b.ZodBoolean,coerce:t?.coerce||!1,...L(t)});var Pr=class t extends H{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==T.date){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:T.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 Te,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()):B.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}};Pr.create=t=>new Pr({checks:[],coerce:t?.coerce||!1,typeName:b.ZodDate,...L(t)});var pn=class extends H{_parse(e){if(this._getType(e)!==T.symbol){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:T.symbol,received:n.parsedType}),A}return je(e.data)}};pn.create=t=>new pn({typeName:b.ZodSymbol,...L(t)});var Rr=class extends H{_parse(e){if(this._getType(e)!==T.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:T.undefined,received:n.parsedType}),A}return je(e.data)}};Rr.create=t=>new Rr({typeName:b.ZodUndefined,...L(t)});var Or=class extends H{_parse(e){if(this._getType(e)!==T.null){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:T.null,received:n.parsedType}),A}return je(e.data)}};Or.create=t=>new Or({typeName:b.ZodNull,...L(t)});var tr=class extends H{constructor(){super(...arguments),this._any=!0}_parse(e){return je(e.data)}};tr.create=t=>new tr({typeName:b.ZodAny,...L(t)});var Ft=class extends H{constructor(){super(...arguments),this._unknown=!0}_parse(e){return je(e.data)}};Ft.create=t=>new Ft({typeName:b.ZodUnknown,...L(t)});var gt=class extends H{_parse(e){let r=this._getOrReturnCtx(e);return E(r,{code:k.invalid_type,expected:T.never,received:r.parsedType}),A}};gt.create=t=>new gt({typeName:b.ZodNever,...L(t)});var fn=class extends H{_parse(e){if(this._getType(e)!==T.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:T.void,received:n.parsedType}),A}return je(e.data)}};fn.create=t=>new fn({typeName:b.ZodVoid,...L(t)});var Vt=class t extends H{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==T.array)return E(r,{code:k.invalid_type,expected:T.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=>Te.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new st(r,i,r.path,a)));return Te.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)}};Vt.create=(t,e)=>new Vt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:b.ZodArray,...L(e)});function dn(t){if(t instanceof Je){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Ke.create(dn(n))}return new Je({...t._def,shape:()=>e})}else return t instanceof Vt?new Vt({...t._def,type:dn(t.element)}):t instanceof Ke?Ke.create(dn(t.unwrap())):t instanceof Ct?Ct.create(dn(t.unwrap())):t instanceof Ot?Ot.create(t.items.map(e=>dn(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=B.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==T.object){let u=this._getOrReturnCtx(e);return E(u,{code:k.invalid_type,expected:T.object,received:u.parsedType}),A}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof gt&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new st(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof gt){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(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=>Te.mergeObjectSync(n,u)):Te.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 B.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 B.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return dn(this)}partial(e){let r={};for(let n of B.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 B.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 sf(B.objectKeys(this.shape))}};Je.create=(t,e)=>new Je({shape:()=>t,unknownKeys:"strip",catchall:gt.create(),typeName:b.ZodObject,...L(e)});Je.strictCreate=(t,e)=>new Je({shape:()=>t,unknownKeys:"strict",catchall:gt.create(),typeName:b.ZodObject,...L(e)});Je.lazycreate=(t,e)=>new Je({shape:t,unknownKeys:"strip",catchall:gt.create(),typeName:b.ZodObject,...L(e)});var Cr=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 Be(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 Be(c));return E(r,{code:k.invalid_union,unionErrors:a}),A}}get options(){return this._def.options}};Cr.create=(t,e)=>new Cr({options:t,typeName:b.ZodUnion,...L(e)});var qt=t=>t instanceof zr?qt(t.schema):t instanceof it?qt(t.innerType()):t instanceof Nr?[t.value]:t instanceof Ar?t.options:t instanceof jr?B.objectValues(t.enum):t instanceof Mr?qt(t._def.innerType):t instanceof Rr?[void 0]:t instanceof Or?[null]:t instanceof Ke?[void 0,...qt(t.unwrap())]:t instanceof Ct?[null,...qt(t.unwrap())]:t instanceof oo||t instanceof Lr?qt(t.unwrap()):t instanceof Dr?qt(t._def.innerType):[],bs=class t extends H{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==T.object)return E(r,{code:k.invalid_type,expected:T.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=qt(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 Na(t,e){let r=Rt(t),n=Rt(e);if(t===e)return{valid:!0,data:t};if(r===T.object&&n===T.object){let o=B.objectKeys(e),s=B.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=Na(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===T.array&&n===T.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=Na(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===T.date&&n===T.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var Ir=class extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Ss(s)||Ss(i))return A;let a=Na(s.value,i.value);return a.valid?((ks(s)||ks(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}))}};Ir.create=(t,e,r)=>new Ir({left:t,right:e,typeName:b.ZodIntersection,...L(r)});var Ot=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==T.array)return E(n,{code:k.invalid_type,expected:T.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=>Te.mergeArray(r,i)):Te.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Ot.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Ot({items:t,typeName:b.ZodTuple,rest:null,...L(e)})};var ws=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!==T.object)return E(n,{code:k.invalid_type,expected:T.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?Te.mergeObjectAsync(r,o):Te.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:er.create(),valueType:e,typeName:b.ZodRecord,...L(r)})}},mn=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!==T.map)return E(n,{code:k.invalid_type,expected:T.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}}}};mn.create=(t,e,r)=>new mn({valueType:e,keyType:t,typeName:b.ZodMap,...L(r)});var hn=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==T.set)return E(n,{code:k.invalid_type,expected:T.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)}};hn.create=(t,e)=>new hn({valueType:t,minSize:null,maxSize:null,typeName:b.ZodSet,...L(e)});var Es=class t extends H{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==T.function)return E(r,{code:k.invalid_type,expected:T.function,received:r.parsedType}),A;function n(a,c){return no({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,un(),Ht].filter(u=>!!u),issueData:{code:k.invalid_arguments,argumentsError:c}})}function o(a,c){return no({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,un(),Ht].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 rr){let a=this;return je(async function(...c){let u=new Be([]),l=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(m=>{throw u.addIssue(o(d,m)),u})})}else{let a=this;return je(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Be([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Be([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Ot.create(e).rest(Ft.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Ot.create([]).rest(Ft.create()),returns:r||Ft.create(),typeName:b.ZodFunction,...L(n)})}},zr=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})}};zr.create=(t,e)=>new zr({getter:t,typeName:b.ZodLazy,...L(e)});var Nr=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}};Nr.create=(t,e)=>new Nr({value:t,typeName:b.ZodLiteral,...L(e)});function sf(t,e){return new Ar({values:t,typeName:b.ZodEnum,...L(e)})}var Ar=class t extends H{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return E(r,{expected:B.joinValues(n),received:r.parsedType,code:k.invalid_type}),A}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return E(r,{received:r.data,code:k.invalid_enum_value,options:n}),A}return je(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};Ar.create=sf;var jr=class extends H{_parse(e){let r=B.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==T.string&&n.parsedType!==T.number){let o=B.objectValues(r);return E(n,{expected:B.joinValues(o),received:n.parsedType,code:k.invalid_type}),A}if(this._cache||(this._cache=new Set(B.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=B.objectValues(r);return E(n,{received:n.data,code:k.invalid_enum_value,options:o}),A}return je(e.data)}get enum(){return this._def.values}};jr.create=(t,e)=>new jr({values:t,typeName:b.ZodNativeEnum,...L(e)});var rr=class extends H{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==T.promise&&r.common.async===!1)return E(r,{code:k.invalid_type,expected:T.promise,received:r.parsedType}),A;let n=r.parsedType===T.promise?r.data:Promise.resolve(r.data);return je(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};rr.create=(t,e)=>new rr({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"?wr(c.value):r.value==="dirty"?wr(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"?wr(a.value):r.value==="dirty"?wr(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(!Qt(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=>Qt(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):A);B.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)===T.undefined?je(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ke.create=(t,e)=>new Ke({innerType:t,typeName:b.ZodOptional,...L(e)});var Ct=class extends H{_parse(e){return this._getType(e)===T.null?je(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ct.create=(t,e)=>new Ct({innerType:t,typeName:b.ZodNullable,...L(e)});var Mr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===T.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Mr.create=(t,e)=>new Mr({innerType:t,typeName:b.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...L(e)});var Dr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return ln(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Be(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Be(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Dr.create=(t,e)=>new Dr({innerType:t,typeName:b.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...L(e)});var gn=class extends H{_parse(e){if(this._getType(e)!==T.nan){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:T.nan,received:n.parsedType}),A}return{status:"valid",value:e.data}}};gn.create=t=>new gn({typeName:b.ZodNaN,...L(t)});var nS=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(),wr(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})}},Lr=class extends H{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Qt(o)&&(o.value=Object.freeze(o.value)),o);return ln(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Lr.create=(t,e)=>new Lr({innerType:t,typeName:b.ZodReadonly,...L(e)});function tf(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function af(t,e={},r){return t?tr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=tf(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=tf(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):tr.create()}var oS={object:Je.lazycreate},b;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(b||(b={}));var sS=(t,e={message:`Input not instance of ${t.name}`})=>af(r=>r instanceof t,e),cf=er.create,uf=Er.create,iS=gn.create,aS=$r.create,lf=Tr.create,cS=Pr.create,uS=pn.create,lS=Rr.create,dS=Or.create,pS=tr.create,fS=Ft.create,mS=gt.create,hS=fn.create,gS=Vt.create,Aa=Je.create,_S=Je.strictCreate,yS=Cr.create,vS=bs.create,xS=Ir.create,SS=Ot.create,kS=ws.create,bS=mn.create,wS=hn.create,ES=Es.create,$S=zr.create,TS=Nr.create,PS=Ar.create,RS=jr.create,OS=rr.create,CS=it.create,IS=Ke.create,zS=Ct.create,NS=it.createWithPreprocess,AS=so.create,jS=()=>cf().optional(),MS=()=>uf().optional(),DS=()=>lf().optional(),LS={string:(t=>er.create({...t,coerce:!0})),number:(t=>Er.create({...t,coerce:!0})),boolean:(t=>Tr.create({...t,coerce:!0})),bigint:(t=>$r.create({...t,coerce:!0})),date:(t=>Pr.create({...t,coerce:!0}))};var ZS=A;var US=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.")}},$s={};function rt(t){return t&&Object.assign($s,t),$s}var K={};tt(K,{BIGINT_FORMAT_RANGES:()=>pf,Class:()=>Ma,NUMBER_FORMAT_RANGES:()=>Fa,aborted:()=>Ur,allowsEval:()=>Ua,assert:()=>BS,assertEqual:()=>HS,assertIs:()=>FS,assertNever:()=>VS,assertNotEqual:()=>qS,assignProp:()=>Za,cached:()=>co,captureStackTrace:()=>Ps,cleanEnum:()=>sk,cleanRegex:()=>lo,clone:()=>nt,createTransparentProxy:()=>XS,defineLazy:()=>ae,esc:()=>Zr,escapeRegex:()=>nr,extend:()=>tk,finalizeIssue:()=>_t,floatSafeRemainder:()=>La,getElementAtPath:()=>KS,getEnumValues:()=>ao,getLengthableOrigin:()=>po,getParsedType:()=>YS,getSizableOrigin:()=>ff,isObject:()=>_n,isPlainObject:()=>yn,issue:()=>Va,joinValues:()=>Ts,jsonStringifyReplacer:()=>Da,merge:()=>rk,normalizeParams:()=>j,nullish:()=>uo,numKeys:()=>WS,omit:()=>ek,optionalKeys:()=>qa,partial:()=>nk,pick:()=>QS,prefixIssues:()=>It,primitiveTypes:()=>df,promiseAllObject:()=>JS,propertyKeyTypes:()=>Ha,randomString:()=>GS,required:()=>ok,stringifyPrimitive:()=>Rs,unwrapMessage:()=>io});function HS(t){return t}function qS(t){return t}function FS(t){}function VS(t){throw new Error}function BS(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 Ts(t,e="|"){return t.map(r=>Rs(r)).join(e)}function Da(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 La(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function ae(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function Za(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function KS(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function JS(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 GS(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Zr(t){return JSON.stringify(t)}var Ps=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function _n(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Ua=co(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function yn(t){if(_n(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(_n(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function WS(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var YS=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}`)}},Ha=new Set(["string","number","symbol"]),df=new Set(["string","number","bigint","boolean","symbol","undefined"]);function nr(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 XS(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 Rs(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function qa(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Fa={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},pf={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function QS(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 ek(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 tk(t,e){if(!yn(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 Za(this,"shape",n),n},checks:[]};return nt(t,r)}function rk(t,e){return nt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Za(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function nk(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 ok(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 Ur(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function It(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function io(t){return typeof t=="string"?t:t?.message}function _t(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 ff(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 Va(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function sk(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Ma=class{constructor(...e){}};var mf=(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,Da,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Os=v("$ZodError",mf),fo=v("$ZodError",mf,{Parent:Error});function Ba(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 Ka(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 Ja=t=>(e,r,n,o)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new Bt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>_t(c,s,rt())));throw Ps(a,o?.callee),a}return i.value},Ga=Ja(fo),Wa=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>_t(c,s,rt())));throw Ps(a,o?.callee),a}return i.value},Ya=Wa(fo),Xa=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??Os)(s.issues.map(i=>_t(i,o,rt())))}:{success:!0,data:s.value}},Hr=Xa(fo),Qa=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>_t(i,o,rt())))}:{success:!0,data:s.value}},qr=Qa(fo);var hf=/^[cC][^\s-]{8,}$/,gf=/^[0-9a-z]+$/,_f=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,yf=/^[0-9a-vA-V]{20}$/,vf=/^[A-Za-z0-9]{27}$/,xf=/^[a-zA-Z0-9_-]{21}$/,Sf=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var kf=/^([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})$/,ec=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 bf=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var ak="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function wf(){return new RegExp(ak,"u")}var Ef=/^(?:(?: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])$/,$f=/^(([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})$/,Tf=/^((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])$/,Pf=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Rf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,tc=/^[A-Za-z0-9_-]*$/,Of=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Cf=/^\+(?:[0-9]){6,14}[0-9]$/,If="(?:(?:\\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(`^${If}$`);function Nf(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 Af(t){return new RegExp(`^${Nf(t)}$`)}function jf(t){let e=Nf({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(`^${If}T(?:${n})$`)}var Mf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Df=/^\d+$/,Lf=/^-?\d+(?:\.\d+)?/i,Zf=/true|false/i,Uf=/null/i;var Hf=/^[^A-Z]*$/,qf=/^[^a-z]*$/;var Pe=v("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Ff={number:"number",bigint:"bigint",object:"date"},rc=v("$ZodCheckLessThan",(t,e)=>{Pe.init(t,e);let r=Ff[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})}}),nc=v("$ZodCheckGreaterThan",(t,e)=>{Pe.init(t,e);let r=Ff[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})}}),Vf=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):La(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})}}),Bf=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]=Fa[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=Df)}),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 Kf=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})}}),Jf=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})}}),Gf=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=()=>{})}),Wf=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})}}),Yf=v("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Hf),mo.init(t,e)}),Xf=v("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=qf),mo.init(t,e)}),Qf=v("$ZodCheckIncludes",(t,e)=>{Pe.init(t,e);let r=nr(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})}}),em=v("$ZodCheckStartsWith",(t,e)=>{Pe.init(t,e);let r=new RegExp(`^${nr(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})}}),tm=v("$ZodCheckEndsWith",(t,e)=>{Pe.init(t,e);let r=new RegExp(`.*${nr(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 rm=v("$ZodCheckOverwrite",(t,e)=>{Pe.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Is=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(`
41
41
  `).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(`
42
- `))}};var nm={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=nm;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=Ur(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=Ur(s,d)))});else{if(s.issues.length===d)continue;c||(c=Ur(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=Hr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return qr(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),mo=v("$ZodString",(t,e)=>{re.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??jf(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),ce=v("$ZodStringFormat",(t,e)=>{fo.init(t,e),mo.init(t,e)}),sc=v("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Sf),ce.init(t,e)}),ic=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=ec(n))}else e.pattern??(e.pattern=ec());ce.init(t,e)}),ac=v("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=kf),ce.init(t,e)}),cc=v("$ZodURL",(t,e)=>{ce.init(t,e),t._zod.check=r=>{try{let n=r.value,o=new URL(n),s=o.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:Rf.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})}}}),uc=v("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=bf()),ce.init(t,e)}),lc=v("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=vf),ce.init(t,e)}),dc=v("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=mf),ce.init(t,e)}),pc=v("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=hf),ce.init(t,e)}),fc=v("$ZodULID",(t,e)=>{e.pattern??(e.pattern=gf),ce.init(t,e)}),mc=v("$ZodXID",(t,e)=>{e.pattern??(e.pattern=_f),ce.init(t,e)}),hc=v("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=yf),ce.init(t,e)}),fm=v("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Af(e)),ce.init(t,e)}),mm=v("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=If),ce.init(t,e)}),hm=v("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Nf(e)),ce.init(t,e)}),gm=v("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=xf),ce.init(t,e)}),gc=v("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=wf),ce.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),_c=v("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Ef),ce.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),yc=v("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=$f),ce.init(t,e)}),vc=v("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Tf),ce.init(t,e),t._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let s=Number(o);if(`${s}`!==o)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function _m(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var xc=v("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Pf),ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{_m(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function ik(t){if(!tc.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return _m(r)}var Sc=v("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=tc),ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{ik(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),kc=v("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Of),ce.init(t,e)});function ak(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 bc=v("$ZodJWT",(t,e)=>{ce.init(t,e),t._zod.check=r=>{ak(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Ns=v("$ZodNumber",(t,e)=>{re.init(t,e),t._zod.pattern=t._zod.bag.pattern??Df,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}}),wc=v("$ZodNumber",(t,e)=>{Vf.init(t,e),Ns.init(t,e)}),Ec=v("$ZodBoolean",(t,e)=>{re.init(t,e),t._zod.pattern=Lf,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 $c=v("$ZodNull",(t,e)=>{re.init(t,e),t._zod.pattern=Zf,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 Tc=v("$ZodUnknown",(t,e)=>{re.init(t,e),t._zod.parse=r=>r}),Pc=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 om(t,e,r){t.issues.length&&e.issues.push(...It(r,t.issues)),e.value[r]=t.value}var Rc=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=>om(u,r,i))):om(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function zs(t,e,r){t.issues.length&&e.issues.push(...It(r,t.issues)),e.value[r]=t.value}function sm(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...It(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var As=v("$ZodObject",(t,e)=>{re.init(t,e);let r=ao(()=>{let d=Object.keys(e.shape);for(let m of d)if(!(e.shape[m]instanceof re))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let f=qa(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});ae(t._zod,"propValues",()=>{let d=e.shape,f={};for(let m in d){let p=d[m]._zod;if(p.values){f[m]??(f[m]=new Set);for(let h of p.values)f[m].add(h)}}return f});let n=d=>{let f=new Is(["shape","payload","ctx"]),m=r.value,p=x=>{let S=Zr(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=Zr(x);f.write(`
42
+ `))}};var om={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=om;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=Ur(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=Ur(s,d)))});else{if(s.issues.length===d)continue;c||(c=Ur(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=Hr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return qr(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),ho=v("$ZodString",(t,e)=>{re.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Mf(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),ce=v("$ZodStringFormat",(t,e)=>{mo.init(t,e),ho.init(t,e)}),sc=v("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=kf),ce.init(t,e)}),ic=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=ec(n))}else e.pattern??(e.pattern=ec());ce.init(t,e)}),ac=v("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=bf),ce.init(t,e)}),cc=v("$ZodURL",(t,e)=>{ce.init(t,e),t._zod.check=r=>{try{let n=r.value,o=new URL(n),s=o.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:Of.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})}}}),uc=v("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=wf()),ce.init(t,e)}),lc=v("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=xf),ce.init(t,e)}),dc=v("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=hf),ce.init(t,e)}),pc=v("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=gf),ce.init(t,e)}),fc=v("$ZodULID",(t,e)=>{e.pattern??(e.pattern=_f),ce.init(t,e)}),mc=v("$ZodXID",(t,e)=>{e.pattern??(e.pattern=yf),ce.init(t,e)}),hc=v("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=vf),ce.init(t,e)}),mm=v("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=jf(e)),ce.init(t,e)}),hm=v("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=zf),ce.init(t,e)}),gm=v("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Af(e)),ce.init(t,e)}),_m=v("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Sf),ce.init(t,e)}),gc=v("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Ef),ce.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),_c=v("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=$f),ce.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),yc=v("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Tf),ce.init(t,e)}),vc=v("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Pf),ce.init(t,e),t._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let s=Number(o);if(`${s}`!==o)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function ym(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var xc=v("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Rf),ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{ym(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function ck(t){if(!tc.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return ym(r)}var Sc=v("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=tc),ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{ck(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),kc=v("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Cf),ce.init(t,e)});function uk(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 bc=v("$ZodJWT",(t,e)=>{ce.init(t,e),t._zod.check=r=>{uk(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Ns=v("$ZodNumber",(t,e)=>{re.init(t,e),t._zod.pattern=t._zod.bag.pattern??Lf,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}}),wc=v("$ZodNumber",(t,e)=>{Bf.init(t,e),Ns.init(t,e)}),Ec=v("$ZodBoolean",(t,e)=>{re.init(t,e),t._zod.pattern=Zf,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 $c=v("$ZodNull",(t,e)=>{re.init(t,e),t._zod.pattern=Uf,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 Tc=v("$ZodUnknown",(t,e)=>{re.init(t,e),t._zod.parse=r=>r}),Pc=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 sm(t,e,r){t.issues.length&&e.issues.push(...It(r,t.issues)),e.value[r]=t.value}var Rc=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=>sm(u,r,i))):sm(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function zs(t,e,r){t.issues.length&&e.issues.push(...It(r,t.issues)),e.value[r]=t.value}function im(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...It(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var As=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=qa(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});ae(t._zod,"propValues",()=>{let d=e.shape,f={};for(let m in d){let p=d[m]._zod;if(p.values){f[m]??(f[m]=new Set);for(let h of p.values)f[m].add(h)}}return f});let n=d=>{let f=new Is(["shape","payload","ctx"]),m=r.value,p=x=>{let S=Zr(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=Zr(x);f.write(`
43
43
  if (${S}.issues.length) {
44
44
  if (input[${w}] === undefined) {
45
45
  if (${w} in input) {
@@ -62,23 +62,23 @@ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_inde
62
62
  if (${S}.issues.length) payload.issues = payload.issues.concat(${S}.issues.map(iss => ({
63
63
  ...iss,
64
64
  path: iss.path ? [${Zr(x)}, ...iss.path] : [${Zr(x)}]
65
- })));`),f.write(`newResult[${Zr(x)}] = ${S}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let _=f.compile();return(x,S)=>_(d,x,S)},o,s=_n,i=!$s.jitless,c=i&&Ua.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],oe=R._zod.run({value:m[w],issues:[]},f),ge=R._zod.optin==="optional"&&R._zod.optout==="optional";oe instanceof Promise?p.push(oe.then(Ae=>ge?sm(Ae,d,w,m):zs(Ae,d,w))):ge?sm(oe,d,w,m):zs(oe,d,w)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,_=u._zod,x=_.def.type;for(let S of Object.keys(m)){if(g.has(S))continue;if(x==="never"){h.push(S);continue}let w=_.run({value:m[S],issues:[]},f);w instanceof Promise?p.push(w.then(R=>zs(R,d,S))):zs(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 im(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>_t(s,n,rt())))}),e}var js=v("$ZodUnion",(t,e)=>{re.init(t,e),ae(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ae(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ae(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ae(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>uo(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=>im(i,r,t,n)):im(s,r,t,n)}}),Oc=v("$ZodDiscriminatedUnion",(t,e)=>{js.init(t,e);let r=t._zod.parse;ae(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=ao(()=>{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(!_n(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)}}),Cc=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])=>am(r,c,u)):am(r,s,i)}});function oc(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(yn(t)&&yn(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=oc(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=oc(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 am(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Ur(t))return t;let n=oc(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 Ic=v("$ZodRecord",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!yn(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:o[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...It(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...It(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>_t(u,n,rt())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...It(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...It(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var zc=v("$ZodEnum",(t,e)=>{re.init(t,e);let r=io(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ha.has(typeof n)).map(n=>typeof n=="string"?nr(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}}),Nc=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"?nr(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 Ac=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}}),jc=v("$ZodOptional",(t,e)=>{re.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ae(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ae(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${uo(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)}),Mc=v("$ZodNullable",(t,e)=>{re.init(t,e),ae(t._zod,"optin",()=>e.innerType._zod.optin),ae(t._zod,"optout",()=>e.innerType._zod.optout),ae(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${uo(r.source)}|null)$`):void 0}),ae(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),Dc=v("$ZodDefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>cm(s,e)):cm(o,e)}});function cm(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Lc=v("$ZodPrefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Zc=v("$ZodNonOptional",(t,e)=>{re.init(t,e),ae(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>um(s,t)):um(o,t)}});function um(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var Uc=v("$ZodCatch",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"optout",()=>e.innerType._zod.optout),ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>_t(i,n,rt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>_t(s,n,rt()))},input:r.value}),r.issues=[]),r)}});var Hc=v("$ZodPipe",(t,e)=>{re.init(t,e),ae(t._zod,"values",()=>e.in._zod.values),ae(t._zod,"optin",()=>e.in._zod.optin),ae(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>lm(s,e,n)):lm(o,e,n)}});function lm(t,e,r){return Ur(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var qc=v("$ZodReadonly",(t,e)=>{re.init(t,e),ae(t._zod,"propValues",()=>e.innerType._zod.propValues),ae(t._zod,"values",()=>e.innerType._zod.values),ae(t._zod,"optin",()=>e.innerType._zod.optin),ae(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(dm):dm(o)}});function dm(t){return t.value=Object.freeze(t.value),t}var Fc=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=>pm(s,r,n,t));pm(o,r,n,t)}});function pm(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(Va(o))}}var ck=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},uk=()=>{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 ${ck(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Rs(n.values[0])}`:`Invalid option: expected one of ${Ts(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":""}: ${Ts(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 ym(){return{localeError:uk()}}var ho=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 vm(){return new ho}var or=vm();function Vc(t,e){return new t({type:"string",...j(e)})}function Bc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...j(e)})}function Ms(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...j(e)})}function Kc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...j(e)})}function Jc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...j(e)})}function Gc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...j(e)})}function Wc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...j(e)})}function Yc(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...j(e)})}function Xc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...j(e)})}function Qc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...j(e)})}function eu(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...j(e)})}function tu(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...j(e)})}function ru(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...j(e)})}function nu(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...j(e)})}function ou(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...j(e)})}function su(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...j(e)})}function iu(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...j(e)})}function au(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...j(e)})}function cu(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...j(e)})}function uu(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...j(e)})}function lu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...j(e)})}function du(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...j(e)})}function pu(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...j(e)})}function xm(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...j(e)})}function Sm(t,e){return new t({type:"string",format:"date",check:"string_format",...j(e)})}function km(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...j(e)})}function bm(t,e){return new t({type:"string",format:"duration",check:"string_format",...j(e)})}function fu(t,e){return new t({type:"number",checks:[],...j(e)})}function mu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...j(e)})}function hu(t,e){return new t({type:"boolean",...j(e)})}function gu(t,e){return new t({type:"null",...j(e)})}function _u(t){return new t({type:"unknown"})}function yu(t,e){return new t({type:"never",...j(e)})}function Ds(t,e){return new rc({check:"less_than",...j(e),value:t,inclusive:!1})}function go(t,e){return new rc({check:"less_than",...j(e),value:t,inclusive:!0})}function Ls(t,e){return new nc({check:"greater_than",...j(e),value:t,inclusive:!1})}function _o(t,e){return new nc({check:"greater_than",...j(e),value:t,inclusive:!0})}function Zs(t,e){return new Ff({check:"multiple_of",...j(e),value:t})}function Us(t,e){return new Bf({check:"max_length",...j(e),maximum:t})}function vn(t,e){return new Kf({check:"min_length",...j(e),minimum:t})}function Hs(t,e){return new Jf({check:"length_equals",...j(e),length:t})}function vu(t,e){return new Gf({check:"string_format",format:"regex",...j(e),pattern:t})}function xu(t){return new Wf({check:"string_format",format:"lowercase",...j(t)})}function Su(t){return new Yf({check:"string_format",format:"uppercase",...j(t)})}function ku(t,e){return new Xf({check:"string_format",format:"includes",...j(e),includes:t})}function bu(t,e){return new Qf({check:"string_format",format:"starts_with",...j(e),prefix:t})}function wu(t,e){return new em({check:"string_format",format:"ends_with",...j(e),suffix:t})}function Fr(t){return new tm({check:"overwrite",tx:t})}function Eu(t){return Fr(e=>e.normalize(t))}function $u(){return Fr(t=>t.trim())}function Tu(){return Fr(t=>t.toLowerCase())}function Pu(){return Fr(t=>t.toUpperCase())}function wm(t,e,r){return new t({type:"array",element:e,...j(r)})}function Ru(t,e,r){let n=j(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Ou(t,e,r){return new t({type:"custom",check:"custom",fn:e,...j(r)})}var qs=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??or,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:_,patterns:x,contentEncoding:S}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),_&&(p.format=s[_]??_,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:_,multipleOf:x,exclusiveMaximum:S,exclusiveMinimum:w}=e._zod.bag;typeof _=="string"&&_.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)),_=new Set([...g].filter(x=>{let S=o.shape[x]._zod;return this.io==="input"?S.optin===void 0:S.optout===void 0}));_.size>0&&(p.required=Array.from(_)),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]}),_=S=>"allOf"in S&&Object.keys(S).length===1,x=[..._(h)?h.allOf:[h],..._(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:_}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof _=="number"&&(p.maxItems=_);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=io(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:_,mime:x}=e._zod.bag;g!==void 0&&(h.minLength=g),_!==void 0&&(h.maxLength=_),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"&&ke(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 _=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=_,{defId:_,ref:`${g("__shared")}#/${d}/${_}`}}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>
65
+ })));`),f.write(`newResult[${Zr(x)}] = ${S}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let _=f.compile();return(x,S)=>_(d,x,S)},o,s=_n,i=!$s.jitless,c=i&&Ua.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],oe=R._zod.run({value:m[w],issues:[]},f),ge=R._zod.optin==="optional"&&R._zod.optout==="optional";oe instanceof Promise?p.push(oe.then(Ae=>ge?im(Ae,d,w,m):zs(Ae,d,w))):ge?im(oe,d,w,m):zs(oe,d,w)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,_=u._zod,x=_.def.type;for(let S of Object.keys(m)){if(g.has(S))continue;if(x==="never"){h.push(S);continue}let w=_.run({value:m[S],issues:[]},f);w instanceof Promise?p.push(w.then(R=>zs(R,d,S))):zs(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 am(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>_t(s,n,rt())))}),e}var js=v("$ZodUnion",(t,e)=>{re.init(t,e),ae(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ae(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ae(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ae(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>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=>am(i,r,t,n)):am(s,r,t,n)}}),Oc=v("$ZodDiscriminatedUnion",(t,e)=>{js.init(t,e);let r=t._zod.parse;ae(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=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(!_n(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)}}),Cc=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])=>cm(r,c,u)):cm(r,s,i)}});function oc(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(yn(t)&&yn(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=oc(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=oc(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 cm(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Ur(t))return t;let n=oc(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 Ic=v("$ZodRecord",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!yn(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:o[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...It(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...It(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>_t(u,n,rt())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...It(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...It(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var zc=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=>Ha.has(typeof n)).map(n=>typeof n=="string"?nr(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}}),Nc=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"?nr(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 Ac=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}}),jc=v("$ZodOptional",(t,e)=>{re.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ae(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ae(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${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)}),Mc=v("$ZodNullable",(t,e)=>{re.init(t,e),ae(t._zod,"optin",()=>e.innerType._zod.optin),ae(t._zod,"optout",()=>e.innerType._zod.optout),ae(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${lo(r.source)}|null)$`):void 0}),ae(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),Dc=v("$ZodDefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>um(s,e)):um(o,e)}});function um(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Lc=v("$ZodPrefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Zc=v("$ZodNonOptional",(t,e)=>{re.init(t,e),ae(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>lm(s,t)):lm(o,t)}});function lm(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 Uc=v("$ZodCatch",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"optout",()=>e.innerType._zod.optout),ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>_t(i,n,rt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>_t(s,n,rt()))},input:r.value}),r.issues=[]),r)}});var Hc=v("$ZodPipe",(t,e)=>{re.init(t,e),ae(t._zod,"values",()=>e.in._zod.values),ae(t._zod,"optin",()=>e.in._zod.optin),ae(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>dm(s,e,n)):dm(o,e,n)}});function dm(t,e,r){return Ur(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var qc=v("$ZodReadonly",(t,e)=>{re.init(t,e),ae(t._zod,"propValues",()=>e.innerType._zod.propValues),ae(t._zod,"values",()=>e.innerType._zod.values),ae(t._zod,"optin",()=>e.innerType._zod.optin),ae(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(pm):pm(o)}});function pm(t){return t.value=Object.freeze(t.value),t}var Fc=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=>fm(s,r,n,t));fm(o,r,n,t)}});function fm(t,e,r,n){if(!t){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(o.params=n._zod.def.params),e.issues.push(Va(o))}}var lk=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},dk=()=>{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 ${lk(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Rs(n.values[0])}`:`Invalid option: expected one of ${Ts(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":""}: ${Ts(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 vm(){return{localeError:dk()}}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 xm(){return new go}var or=xm();function Vc(t,e){return new t({type:"string",...j(e)})}function Bc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...j(e)})}function Ms(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...j(e)})}function Kc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...j(e)})}function Jc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...j(e)})}function Gc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...j(e)})}function Wc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...j(e)})}function Yc(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...j(e)})}function Xc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...j(e)})}function Qc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...j(e)})}function eu(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...j(e)})}function tu(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...j(e)})}function ru(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...j(e)})}function nu(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...j(e)})}function ou(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...j(e)})}function su(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...j(e)})}function iu(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...j(e)})}function au(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...j(e)})}function cu(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...j(e)})}function uu(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...j(e)})}function lu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...j(e)})}function du(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...j(e)})}function pu(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...j(e)})}function Sm(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...j(e)})}function km(t,e){return new t({type:"string",format:"date",check:"string_format",...j(e)})}function bm(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...j(e)})}function wm(t,e){return new t({type:"string",format:"duration",check:"string_format",...j(e)})}function fu(t,e){return new t({type:"number",checks:[],...j(e)})}function mu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...j(e)})}function hu(t,e){return new t({type:"boolean",...j(e)})}function gu(t,e){return new t({type:"null",...j(e)})}function _u(t){return new t({type:"unknown"})}function yu(t,e){return new t({type:"never",...j(e)})}function Ds(t,e){return new rc({check:"less_than",...j(e),value:t,inclusive:!1})}function _o(t,e){return new rc({check:"less_than",...j(e),value:t,inclusive:!0})}function Ls(t,e){return new nc({check:"greater_than",...j(e),value:t,inclusive:!1})}function yo(t,e){return new nc({check:"greater_than",...j(e),value:t,inclusive:!0})}function Zs(t,e){return new Vf({check:"multiple_of",...j(e),value:t})}function Us(t,e){return new Kf({check:"max_length",...j(e),maximum:t})}function vn(t,e){return new Jf({check:"min_length",...j(e),minimum:t})}function Hs(t,e){return new Gf({check:"length_equals",...j(e),length:t})}function vu(t,e){return new Wf({check:"string_format",format:"regex",...j(e),pattern:t})}function xu(t){return new Yf({check:"string_format",format:"lowercase",...j(t)})}function Su(t){return new Xf({check:"string_format",format:"uppercase",...j(t)})}function ku(t,e){return new Qf({check:"string_format",format:"includes",...j(e),includes:t})}function bu(t,e){return new em({check:"string_format",format:"starts_with",...j(e),prefix:t})}function wu(t,e){return new tm({check:"string_format",format:"ends_with",...j(e),suffix:t})}function Fr(t){return new rm({check:"overwrite",tx:t})}function Eu(t){return Fr(e=>e.normalize(t))}function $u(){return Fr(t=>t.trim())}function Tu(){return Fr(t=>t.toLowerCase())}function Pu(){return Fr(t=>t.toUpperCase())}function Em(t,e,r){return new t({type:"array",element:e,...j(r)})}function Ru(t,e,r){let n=j(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Ou(t,e,r){return new t({type:"custom",check:"custom",fn:e,...j(r)})}var qs=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??or,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:_,patterns:x,contentEncoding:S}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),_&&(p.format=s[_]??_,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:_,multipleOf:x,exclusiveMaximum:S,exclusiveMinimum:w}=e._zod.bag;typeof _=="string"&&_.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)),_=new Set([...g].filter(x=>{let S=o.shape[x]._zod;return this.io==="input"?S.optin===void 0:S.optout===void 0}));_.size>0&&(p.required=Array.from(_)),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]}),_=S=>"allOf"in S&&Object.keys(S).length===1,x=[..._(h)?h.allOf:[h],..._(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:_}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof _=="number"&&(p.maxItems=_);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:_,mime:x}=e._zod.bag;g!==void 0&&(h.minLength=g),_!==void 0&&(h.maxLength=_),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"&&ke(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 _=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=_,{defId:_,ref:`${g("__shared")}#/${d}/${_}`}}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>
66
66
 
67
- 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 Cu(t,e){if(t instanceof ho){let n=new qs(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 qs(e);return r.process(t),r.emit(t,e)}function ke(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 ke(o.element,r);case"object":{for(let s in o.shape)if(ke(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(ke(s,r))return!0;return!1}case"intersection":return ke(o.left,r)||ke(o.right,r);case"tuple":{for(let s of o.items)if(ke(s,r))return!0;return!!(o.rest&&ke(o.rest,r))}case"record":return ke(o.keyType,r)||ke(o.valueType,r);case"map":return ke(o.keyType,r)||ke(o.valueType,r);case"set":return ke(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return ke(o.innerType,r);case"lazy":return ke(o.getter(),r);case"default":return ke(o.innerType,r);case"prefault":return ke(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return ke(o.in,r)||ke(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var Fk=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)=>Ga(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Hr(t,r,n),t.parseAsync=async(r,n)=>Ya(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>qr(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>nt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var Vk=v("ZodMiniObject",(t,e)=>{As.init(t,e),Fk.init(t,e),K.defineLazy(t,"shape",()=>e.shape)});function Iu(t,e){let r={type:"object",get shape(){return K.assignProp(this,"shape",{...t}),this.shape},...K.normalizeParams(e)};return new Vk(r)}function at(t){return!!t._zod}function Br(t){let e=Object.values(t);if(e.length===0)return Iu({});let r=e.every(at),n=e.every(o=>!at(o));if(r)return Iu(t);if(n)return Aa(t);throw new Error("Mixed Zod versions detected in object shape.")}function sr(t,e){return at(t)?Hr(t,e):t.safeParse(e)}async function Fs(t,e){return at(t)?await qr(t,e):await t.safeParseAsync(e)}function ir(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 xn(t){if(t){if(typeof t=="object"){let e=t,r=t;if(!e._def&&!r._zod){let n=Object.values(t);if(n.length>0&&n.every(o=>typeof o=="object"&&o!==null&&(o._def!==void 0||o._zod!==void 0||typeof o.parse=="function")))return Br(t)}}if(at(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function Vs(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 $m(t){return t.description}function Tm(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 Bs(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 yo={};tt(yo,{ZodISODate:()=>Rm,ZodISODateTime:()=>Pm,ZodISODuration:()=>Cm,ZodISOTime:()=>Om,date:()=>Nu,datetime:()=>zu,duration:()=>ju,time:()=>Au});var Pm=v("ZodISODateTime",(t,e)=>{fm.init(t,e),pe.init(t,e)});function zu(t){return xm(Pm,t)}var Rm=v("ZodISODate",(t,e)=>{mm.init(t,e),pe.init(t,e)});function Nu(t){return Sm(Rm,t)}var Om=v("ZodISOTime",(t,e)=>{hm.init(t,e),pe.init(t,e)});function Au(t){return km(Om,t)}var Cm=v("ZodISODuration",(t,e)=>{gm.init(t,e),pe.init(t,e)});function ju(t){return bm(Cm,t)}var Im=(t,e)=>{Os.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Ka(t,r)},flatten:{value:r=>Ba(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},Nz=v("ZodError",Im),vo=v("ZodError",Im,{Parent:Error});var zm=Ja(vo),Nm=Wa(vo),Am=Xa(vo),jm=Qa(vo);var ye=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)=>zm(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Am(t,r,n),t.parseAsync=async(r,n)=>Nm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>jm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(Hb(r,n)),t.superRefine=r=>t.check(qb(r)),t.overwrite=r=>t.check(Fr(r)),t.optional=()=>_e(t),t.nullable=()=>Lm(t),t.nullish=()=>_e(Lm(t)),t.nonoptional=r=>Ab(t,r),t.array=()=>G(t),t.or=r=>ue([t,r]),t.and=r=>Js(t,r),t.transform=r=>Du(t,Fm(r)),t.default=r=>Ib(t,r),t.prefault=r=>Nb(t,r),t.catch=r=>Mb(t,r),t.pipe=r=>Du(t,r),t.readonly=()=>Zb(t),t.describe=r=>{let n=t.clone();return or.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return or.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return or.get(t);let n=t.clone();return or.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),Zm=v("_ZodString",(t,e)=>{mo.init(t,e),ye.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(vu(...n)),t.includes=(...n)=>t.check(ku(...n)),t.startsWith=(...n)=>t.check(bu(...n)),t.endsWith=(...n)=>t.check(wu(...n)),t.min=(...n)=>t.check(vn(...n)),t.max=(...n)=>t.check(Us(...n)),t.length=(...n)=>t.check(Hs(...n)),t.nonempty=(...n)=>t.check(vn(1,...n)),t.lowercase=n=>t.check(xu(n)),t.uppercase=n=>t.check(Su(n)),t.trim=()=>t.check($u()),t.normalize=(...n)=>t.check(Eu(...n)),t.toLowerCase=()=>t.check(Tu()),t.toUpperCase=()=>t.check(Pu())}),eb=v("ZodString",(t,e)=>{mo.init(t,e),Zm.init(t,e),t.email=r=>t.check(Bc(tb,r)),t.url=r=>t.check(Yc(rb,r)),t.jwt=r=>t.check(pu(_b,r)),t.emoji=r=>t.check(Xc(nb,r)),t.guid=r=>t.check(Ms(Mm,r)),t.uuid=r=>t.check(Kc(Ks,r)),t.uuidv4=r=>t.check(Jc(Ks,r)),t.uuidv6=r=>t.check(Gc(Ks,r)),t.uuidv7=r=>t.check(Wc(Ks,r)),t.nanoid=r=>t.check(Qc(ob,r)),t.guid=r=>t.check(Ms(Mm,r)),t.cuid=r=>t.check(eu(sb,r)),t.cuid2=r=>t.check(tu(ib,r)),t.ulid=r=>t.check(ru(ab,r)),t.base64=r=>t.check(uu(mb,r)),t.base64url=r=>t.check(lu(hb,r)),t.xid=r=>t.check(nu(cb,r)),t.ksuid=r=>t.check(ou(ub,r)),t.ipv4=r=>t.check(su(lb,r)),t.ipv6=r=>t.check(iu(db,r)),t.cidrv4=r=>t.check(au(pb,r)),t.cidrv6=r=>t.check(cu(fb,r)),t.e164=r=>t.check(du(gb,r)),t.datetime=r=>t.check(zu(r)),t.date=r=>t.check(Nu(r)),t.time=r=>t.check(Au(r)),t.duration=r=>t.check(ju(r))});function y(t){return Vc(eb,t)}var pe=v("ZodStringFormat",(t,e)=>{ce.init(t,e),Zm.init(t,e)}),tb=v("ZodEmail",(t,e)=>{ac.init(t,e),pe.init(t,e)});var Mm=v("ZodGUID",(t,e)=>{sc.init(t,e),pe.init(t,e)});var Ks=v("ZodUUID",(t,e)=>{ic.init(t,e),pe.init(t,e)});var rb=v("ZodURL",(t,e)=>{cc.init(t,e),pe.init(t,e)});var nb=v("ZodEmoji",(t,e)=>{uc.init(t,e),pe.init(t,e)});var ob=v("ZodNanoID",(t,e)=>{lc.init(t,e),pe.init(t,e)});var sb=v("ZodCUID",(t,e)=>{dc.init(t,e),pe.init(t,e)});var ib=v("ZodCUID2",(t,e)=>{pc.init(t,e),pe.init(t,e)});var ab=v("ZodULID",(t,e)=>{fc.init(t,e),pe.init(t,e)});var cb=v("ZodXID",(t,e)=>{mc.init(t,e),pe.init(t,e)});var ub=v("ZodKSUID",(t,e)=>{hc.init(t,e),pe.init(t,e)});var lb=v("ZodIPv4",(t,e)=>{gc.init(t,e),pe.init(t,e)});var db=v("ZodIPv6",(t,e)=>{_c.init(t,e),pe.init(t,e)});var pb=v("ZodCIDRv4",(t,e)=>{yc.init(t,e),pe.init(t,e)});var fb=v("ZodCIDRv6",(t,e)=>{vc.init(t,e),pe.init(t,e)});var mb=v("ZodBase64",(t,e)=>{xc.init(t,e),pe.init(t,e)});var hb=v("ZodBase64URL",(t,e)=>{Sc.init(t,e),pe.init(t,e)});var gb=v("ZodE164",(t,e)=>{kc.init(t,e),pe.init(t,e)});var _b=v("ZodJWT",(t,e)=>{bc.init(t,e),pe.init(t,e)});var Um=v("ZodNumber",(t,e)=>{Ns.init(t,e),ye.init(t,e),t.gt=(n,o)=>t.check(Ls(n,o)),t.gte=(n,o)=>t.check(_o(n,o)),t.min=(n,o)=>t.check(_o(n,o)),t.lt=(n,o)=>t.check(Ds(n,o)),t.lte=(n,o)=>t.check(go(n,o)),t.max=(n,o)=>t.check(go(n,o)),t.int=n=>t.check(Dm(n)),t.safe=n=>t.check(Dm(n)),t.positive=n=>t.check(Ls(0,n)),t.nonnegative=n=>t.check(_o(0,n)),t.negative=n=>t.check(Ds(0,n)),t.nonpositive=n=>t.check(go(0,n)),t.multipleOf=(n,o)=>t.check(Zs(n,o)),t.step=(n,o)=>t.check(Zs(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 fu(Um,t)}var yb=v("ZodNumberFormat",(t,e)=>{wc.init(t,e),Um.init(t,e)});function Dm(t){return mu(yb,t)}var vb=v("ZodBoolean",(t,e)=>{Ec.init(t,e),ye.init(t,e)});function Ee(t){return hu(vb,t)}var xb=v("ZodNull",(t,e)=>{$c.init(t,e),ye.init(t,e)});function Lu(t){return gu(xb,t)}var Sb=v("ZodUnknown",(t,e)=>{Tc.init(t,e),ye.init(t,e)});function fe(){return _u(Sb)}var kb=v("ZodNever",(t,e)=>{Pc.init(t,e),ye.init(t,e)});function bb(t){return yu(kb,t)}var wb=v("ZodArray",(t,e)=>{Rc.init(t,e),ye.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(vn(r,n)),t.nonempty=r=>t.check(vn(1,r)),t.max=(r,n)=>t.check(Us(r,n)),t.length=(r,n)=>t.check(Hs(r,n)),t.unwrap=()=>t.element});function G(t,e){return wm(wb,t,e)}var Hm=v("ZodObject",(t,e)=>{As.init(t,e),ye.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:fe()}),t.loose=()=>t.clone({...t._zod.def,catchall:fe()}),t.strict=()=>t.clone({...t._zod.def,catchall:bb()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>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(Vm,t,r[0]),t.required=(...r)=>K.required(Bm,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 Hm(r)}function Ue(t,e){return new Hm({type:"object",get shape(){return K.assignProp(this,"shape",{...t}),this.shape},catchall:fe(),...K.normalizeParams(e)})}var qm=v("ZodUnion",(t,e)=>{js.init(t,e),ye.init(t,e),t.options=e.options});function ue(t,e){return new qm({type:"union",options:t,...K.normalizeParams(e)})}var Eb=v("ZodDiscriminatedUnion",(t,e)=>{qm.init(t,e),Oc.init(t,e)});function Zu(t,e,r){return new Eb({type:"union",options:e,discriminator:t,...K.normalizeParams(r)})}var $b=v("ZodIntersection",(t,e)=>{Cc.init(t,e),ye.init(t,e)});function Js(t,e){return new $b({type:"intersection",left:t,right:e})}var Tb=v("ZodRecord",(t,e)=>{Ic.init(t,e),ye.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function me(t,e,r){return new Tb({type:"record",keyType:t,valueType:e,...K.normalizeParams(r)})}var Mu=v("ZodEnum",(t,e)=>{zc.init(t,e),ye.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=e.entries[i];else throw new Error(`Key ${i} not found in enum`);return new Mu({...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 Mu({...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 Mu({type:"enum",entries:r,...K.normalizeParams(e)})}var Pb=v("ZodLiteral",(t,e)=>{Nc.init(t,e),ye.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function I(t,e){return new Pb({type:"literal",values:Array.isArray(t)?t:[t],...K.normalizeParams(e)})}var Rb=v("ZodTransform",(t,e)=>{Ac.init(t,e),ye.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 Fm(t){return new Rb({type:"transform",transform:t})}var Vm=v("ZodOptional",(t,e)=>{jc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType});function _e(t){return new Vm({type:"optional",innerType:t})}var Ob=v("ZodNullable",(t,e)=>{Mc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Lm(t){return new Ob({type:"nullable",innerType:t})}var Cb=v("ZodDefault",(t,e)=>{Dc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Ib(t,e){return new Cb({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var zb=v("ZodPrefault",(t,e)=>{Lc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Nb(t,e){return new zb({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Bm=v("ZodNonOptional",(t,e)=>{Zc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Ab(t,e){return new Bm({type:"nonoptional",innerType:t,...K.normalizeParams(e)})}var jb=v("ZodCatch",(t,e)=>{Uc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function Mb(t,e){return new jb({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Db=v("ZodPipe",(t,e)=>{Hc.init(t,e),ye.init(t,e),t.in=e.in,t.out=e.out});function Du(t,e){return new Db({type:"pipe",in:t,out:e})}var Lb=v("ZodReadonly",(t,e)=>{qc.init(t,e),ye.init(t,e)});function Zb(t){return new Lb({type:"readonly",innerType:t})}var Km=v("ZodCustom",(t,e)=>{Fc.init(t,e),ye.init(t,e)});function Ub(t){let e=new Pe({check:"custom"});return e._zod.check=t,e}function Jm(t,e){return Ru(Km,t??(()=>!0),e)}function Hb(t,e={}){return Ou(Km,t,e)}function qb(t){let e=Ub(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 Uu(t,e){return Du(Fm(t),e)}rt(ym());var qu="2025-11-25";var Gm=[qu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],ar="io.modelcontextprotocol/related-task",Ws="2.0",Re=Jm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Wm=ue([y(),te().int()]),Ym=y(),Jz=Ue({ttl:ue([te(),Lu()]).optional(),pollInterval:te().optional()}),Fb=P({ttl:te().optional()}),Vb=P({taskId:y()}),Fu=Ue({progressToken:Wm.optional(),[ar]:Vb.optional()}),ot=P({_meta:Fu.optional()}),xo=ot.extend({task:Fb.optional()}),Xm=t=>xo.safeParse(t).success,Oe=P({method:y(),params:ot.loose().optional()}),ct=P({_meta:Fu.optional()}),ut=P({method:y(),params:ct.loose().optional()}),Ce=Ue({_meta:Fu.optional()}),Ys=ue([y(),te().int()]),Qm=P({jsonrpc:I(Ws),id:Ys,...Oe.shape}).strict(),Vu=t=>Qm.safeParse(t).success,eh=P({jsonrpc:I(Ws),...ut.shape}).strict(),th=t=>eh.safeParse(t).success,Bu=P({jsonrpc:I(Ws),id:Ys,result:Ce}).strict(),So=t=>Bu.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 Ku=P({jsonrpc:I(Ws),id:Ys.optional(),error:P({code:te().int(),message:y(),data:fe().optional()})}).strict();var rh=t=>Ku.safeParse(t).success;var nh=ue([Qm,eh,Bu,Ku]),Gz=ue([Bu,Ku]),Xs=Ce.strict(),Bb=ct.extend({requestId:Ys.optional(),reason:y().optional()}),Qs=ut.extend({method:I("notifications/cancelled"),params:Bb}),Kb=P({src:y(),mimeType:y().optional(),sizes:G(y()).optional(),theme:Ge(["light","dark"]).optional()}),ko=P({icons:G(Kb).optional()}),Sn=P({name:y(),title:y().optional()}),oh=Sn.extend({...Sn.shape,...ko.shape,version:y(),websiteUrl:y().optional(),description:y().optional()}),Jb=Js(P({applyDefaults:Ee().optional()}),me(y(),fe())),Gb=Uu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Js(P({form:Jb.optional(),url:Re.optional()}),me(y(),fe()).optional())),Wb=Ue({list:Re.optional(),cancel:Re.optional(),requests:Ue({sampling:Ue({createMessage:Re.optional()}).optional(),elicitation:Ue({create:Re.optional()}).optional()}).optional()}),Yb=Ue({list:Re.optional(),cancel:Re.optional(),requests:Ue({tools:Ue({call:Re.optional()}).optional()}).optional()}),Xb=P({experimental:me(y(),Re).optional(),sampling:P({context:Re.optional(),tools:Re.optional()}).optional(),elicitation:Gb.optional(),roots:P({listChanged:Ee().optional()}).optional(),tasks:Wb.optional()}),Qb=ot.extend({protocolVersion:y(),capabilities:Xb,clientInfo:oh}),Ju=Oe.extend({method:I("initialize"),params:Qb});var ew=P({experimental:me(y(),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:Yb.optional()}),tw=Ce.extend({protocolVersion:y(),capabilities:ew,serverInfo:oh,instructions:y().optional()}),Gu=ut.extend({method:I("notifications/initialized"),params:ct.optional()});var ei=Oe.extend({method:I("ping"),params:ot.optional()}),rw=P({progress:te(),total:_e(te()),message:_e(y())}),nw=P({...ct.shape,...rw.shape,progressToken:Wm}),ti=ut.extend({method:I("notifications/progress"),params:nw}),ow=ot.extend({cursor:Ym.optional()}),bo=Oe.extend({params:ow.optional()}),wo=Ce.extend({nextCursor:Ym.optional()}),sw=Ge(["working","input_required","completed","failed","cancelled"]),Eo=P({taskId:y(),status:sw,ttl:ue([te(),Lu()]),createdAt:y(),lastUpdatedAt:y(),pollInterval:_e(te()),statusMessage:_e(y())}),kn=Ce.extend({task:Eo}),iw=ct.merge(Eo),$o=ut.extend({method:I("notifications/tasks/status"),params:iw}),ri=Oe.extend({method:I("tasks/get"),params:ot.extend({taskId:y()})}),ni=Ce.merge(Eo),oi=Oe.extend({method:I("tasks/result"),params:ot.extend({taskId:y()})}),Wz=Ce.loose(),si=bo.extend({method:I("tasks/list")}),ii=wo.extend({tasks:G(Eo)}),ai=Oe.extend({method:I("tasks/cancel"),params:ot.extend({taskId:y()})}),sh=Ce.merge(Eo),ih=P({uri:y(),mimeType:_e(y()),_meta:me(y(),fe()).optional()}),ah=ih.extend({text:y()}),Wu=y().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),ch=ih.extend({blob:Wu}),To=Ge(["user","assistant"]),bn=P({audience:G(To).optional(),priority:te().min(0).max(1).optional(),lastModified:yo.datetime({offset:!0}).optional()}),uh=P({...Sn.shape,...ko.shape,uri:y(),description:_e(y()),mimeType:_e(y()),annotations:bn.optional(),_meta:_e(Ue({}))}),aw=P({...Sn.shape,...ko.shape,uriTemplate:y(),description:_e(y()),mimeType:_e(y()),annotations:bn.optional(),_meta:_e(Ue({}))}),ci=bo.extend({method:I("resources/list")}),cw=wo.extend({resources:G(uh)}),ui=bo.extend({method:I("resources/templates/list")}),uw=wo.extend({resourceTemplates:G(aw)}),Yu=ot.extend({uri:y()}),lw=Yu,li=Oe.extend({method:I("resources/read"),params:lw}),dw=Ce.extend({contents:G(ue([ah,ch]))}),pw=ut.extend({method:I("notifications/resources/list_changed"),params:ct.optional()}),fw=Yu,mw=Oe.extend({method:I("resources/subscribe"),params:fw}),hw=Yu,gw=Oe.extend({method:I("resources/unsubscribe"),params:hw}),_w=ct.extend({uri:y()}),yw=ut.extend({method:I("notifications/resources/updated"),params:_w}),vw=P({name:y(),description:_e(y()),required:_e(Ee())}),xw=P({...Sn.shape,...ko.shape,description:_e(y()),arguments:_e(G(vw)),_meta:_e(Ue({}))}),di=bo.extend({method:I("prompts/list")}),Sw=wo.extend({prompts:G(xw)}),kw=ot.extend({name:y(),arguments:me(y(),y()).optional()}),pi=Oe.extend({method:I("prompts/get"),params:kw}),Xu=P({type:I("text"),text:y(),annotations:bn.optional(),_meta:me(y(),fe()).optional()}),Qu=P({type:I("image"),data:Wu,mimeType:y(),annotations:bn.optional(),_meta:me(y(),fe()).optional()}),el=P({type:I("audio"),data:Wu,mimeType:y(),annotations:bn.optional(),_meta:me(y(),fe()).optional()}),bw=P({type:I("tool_use"),name:y(),id:y(),input:me(y(),fe()),_meta:me(y(),fe()).optional()}),ww=P({type:I("resource"),resource:ue([ah,ch]),annotations:bn.optional(),_meta:me(y(),fe()).optional()}),Ew=uh.extend({type:I("resource_link")}),tl=ue([Xu,Qu,el,Ew,ww]),$w=P({role:To,content:tl}),Tw=Ce.extend({description:y().optional(),messages:G($w)}),Pw=ut.extend({method:I("notifications/prompts/list_changed"),params:ct.optional()}),Rw=P({title:y().optional(),readOnlyHint:Ee().optional(),destructiveHint:Ee().optional(),idempotentHint:Ee().optional(),openWorldHint:Ee().optional()}),Ow=P({taskSupport:Ge(["required","optional","forbidden"]).optional()}),lh=P({...Sn.shape,...ko.shape,description:y().optional(),inputSchema:P({type:I("object"),properties:me(y(),Re).optional(),required:G(y()).optional()}).catchall(fe()),outputSchema:P({type:I("object"),properties:me(y(),Re).optional(),required:G(y()).optional()}).catchall(fe()).optional(),annotations:Rw.optional(),execution:Ow.optional(),_meta:me(y(),fe()).optional()}),fi=bo.extend({method:I("tools/list")}),Cw=wo.extend({tools:G(lh)}),mi=Ce.extend({content:G(tl).default([]),structuredContent:me(y(),fe()).optional(),isError:Ee().optional()}),Yz=mi.or(Ce.extend({toolResult:fe()})),Iw=xo.extend({name:y(),arguments:me(y(),fe()).optional()}),wn=Oe.extend({method:I("tools/call"),params:Iw}),zw=ut.extend({method:I("notifications/tools/list_changed"),params:ct.optional()}),Xz=P({autoRefresh:Ee().default(!0),debounceMs:te().int().nonnegative().default(300)}),Po=Ge(["debug","info","notice","warning","error","critical","alert","emergency"]),Nw=ot.extend({level:Po}),rl=Oe.extend({method:I("logging/setLevel"),params:Nw}),Aw=ct.extend({level:Po,logger:y().optional(),data:fe()}),jw=ut.extend({method:I("notifications/message"),params:Aw}),Mw=P({name:y().optional()}),Dw=P({hints:G(Mw).optional(),costPriority:te().min(0).max(1).optional(),speedPriority:te().min(0).max(1).optional(),intelligencePriority:te().min(0).max(1).optional()}),Lw=P({mode:Ge(["auto","required","none"]).optional()}),Zw=P({type:I("tool_result"),toolUseId:y().describe("The unique identifier for the corresponding tool call."),content:G(tl).default([]),structuredContent:P({}).loose().optional(),isError:Ee().optional(),_meta:me(y(),fe()).optional()}),Uw=Zu("type",[Xu,Qu,el]),Gs=Zu("type",[Xu,Qu,el,bw,Zw]),Hw=P({role:To,content:ue([Gs,G(Gs)]),_meta:me(y(),fe()).optional()}),qw=xo.extend({messages:G(Hw),modelPreferences:Dw.optional(),systemPrompt:y().optional(),includeContext:Ge(["none","thisServer","allServers"]).optional(),temperature:te().optional(),maxTokens:te().int(),stopSequences:G(y()).optional(),metadata:Re.optional(),tools:G(lh).optional(),toolChoice:Lw.optional()}),Fw=Oe.extend({method:I("sampling/createMessage"),params:qw}),nl=Ce.extend({model:y(),stopReason:_e(Ge(["endTurn","stopSequence","maxTokens"]).or(y())),role:To,content:Uw}),ol=Ce.extend({model:y(),stopReason:_e(Ge(["endTurn","stopSequence","maxTokens","toolUse"]).or(y())),role:To,content:ue([Gs,G(Gs)])}),Vw=P({type:I("boolean"),title:y().optional(),description:y().optional(),default:Ee().optional()}),Bw=P({type:I("string"),title:y().optional(),description:y().optional(),minLength:te().optional(),maxLength:te().optional(),format:Ge(["email","uri","date","date-time"]).optional(),default:y().optional()}),Kw=P({type:Ge(["number","integer"]),title:y().optional(),description:y().optional(),minimum:te().optional(),maximum:te().optional(),default:te().optional()}),Jw=P({type:I("string"),title:y().optional(),description:y().optional(),enum:G(y()),default:y().optional()}),Gw=P({type:I("string"),title:y().optional(),description:y().optional(),oneOf:G(P({const:y(),title:y()})),default:y().optional()}),Ww=P({type:I("string"),title:y().optional(),description:y().optional(),enum:G(y()),enumNames:G(y()).optional(),default:y().optional()}),Yw=ue([Jw,Gw]),Xw=P({type:I("array"),title:y().optional(),description:y().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({type:I("string"),enum:G(y())}),default:G(y()).optional()}),Qw=P({type:I("array"),title:y().optional(),description:y().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({anyOf:G(P({const:y(),title:y()}))}),default:G(y()).optional()}),eE=ue([Xw,Qw]),tE=ue([Ww,Yw,eE]),rE=ue([tE,Vw,Bw,Kw]),nE=xo.extend({mode:I("form").optional(),message:y(),requestedSchema:P({type:I("object"),properties:me(y(),rE),required:G(y()).optional()})}),oE=xo.extend({mode:I("url"),message:y(),elicitationId:y(),url:y().url()}),sE=ue([nE,oE]),iE=Oe.extend({method:I("elicitation/create"),params:sE}),aE=ct.extend({elicitationId:y()}),cE=ut.extend({method:I("notifications/elicitation/complete"),params:aE}),hi=Ce.extend({action:Ge(["accept","decline","cancel"]),content:Uu(t=>t===null?void 0:t,me(y(),ue([y(),te(),Ee(),G(y())])).optional())}),uE=P({type:I("ref/resource"),uri:y()});var lE=P({type:I("ref/prompt"),name:y()}),dE=ot.extend({ref:ue([lE,uE]),argument:P({name:y(),value:y()}),context:P({arguments:me(y(),y()).optional()}).optional()}),gi=Oe.extend({method:I("completion/complete"),params:dE});function dh(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function ph(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var pE=Ce.extend({completion:Ue({values:G(y()).max(100),total:_e(te().int()),hasMore:_e(Ee())})}),fE=P({uri:y().startsWith("file://"),name:y().optional(),_meta:me(y(),fe()).optional()}),mE=Oe.extend({method:I("roots/list"),params:ot.optional()}),sl=Ce.extend({roots:G(fE)}),hE=ut.extend({method:I("notifications/roots/list_changed"),params:ct.optional()}),Qz=ue([ei,Ju,gi,rl,pi,di,ci,ui,li,mw,gw,wn,fi,ri,oi,si,ai]),eN=ue([Qs,ti,Gu,hE,$o]),tN=ue([Xs,nl,ol,hi,sl,ni,ii,kn]),rN=ue([ei,Fw,iE,mE,ri,oi,si,ai]),nN=ue([Qs,ti,jw,yw,pw,zw,Pw,$o,cE]),oN=ue([Xs,tw,pE,Tw,Sw,cw,uw,dw,mi,Cw,ni,ii,kn]),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 Hu(o.elicitations,r)}return new t(e,r,n)}},Hu=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 cr(t){return t==="completed"||t==="failed"||t==="cancelled"}var mh=Symbol("Let zodToJsonSchema decide on which parser to use");var fh={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"},hh=t=>typeof t=="string"?{...fh,name:t}:{...fh,...t};var gh=t=>{let e=hh(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 il(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function W(t,e,r,n,o){t[e]=r,il(t,e,n,o)}var _i=(t,e)=>{let r=0;for(;r<t.length&&r<e.length&&t[r]===e[r];r++);return[(t.length-r).toString(),...e.slice(r)].join("/")};function he(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?_i(e,t.currentPath):e.join("/")}}function _h(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 yh(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 vh(){return{type:"boolean"}}function yi(t,e){return M(t.type._def,e)}var xh=(t,e)=>M(t.innerType._def,e);function al(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>al(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 gE(t,e)}}var gE=(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 Sh(t,e){return{...M(t.innerType._def,e),default:t.defaultValue()}}function kh(t,e){return e.effectStrategy==="input"?M(t.schema._def,e):he(e)}function bh(t){return{type:"string",enum:Array.from(t.values)}}var _E=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function wh(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(_E(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 Eh(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 cl,yt={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(cl===void 0&&(cl=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),cl),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 vi(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":vt(r,"email",n.message,e);break;case"format:idn-email":vt(r,"idn-email",n.message,e);break;case"pattern:zod":He(r,yt.email,n.message,e);break}break;case"url":vt(r,"uri",n.message,e);break;case"uuid":vt(r,"uuid",n.message,e);break;case"regex":He(r,n.regex,n.message,e);break;case"cuid":He(r,yt.cuid,n.message,e);break;case"cuid2":He(r,yt.cuid2,n.message,e);break;case"startsWith":He(r,RegExp(`^${ul(n.value,e)}`),n.message,e);break;case"endsWith":He(r,RegExp(`${ul(n.value,e)}$`),n.message,e);break;case"datetime":vt(r,"date-time",n.message,e);break;case"date":vt(r,"date",n.message,e);break;case"time":vt(r,"time",n.message,e);break;case"duration":vt(r,"duration",n.message,e);break;case"length":W(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),W(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{He(r,RegExp(ul(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&vt(r,"ipv4",n.message,e),n.version!=="v4"&&vt(r,"ipv6",n.message,e);break}case"base64url":He(r,yt.base64url,n.message,e);break;case"jwt":He(r,yt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&He(r,yt.ipv4Cidr,n.message,e),n.version!=="v4"&&He(r,yt.ipv6Cidr,n.message,e);break}case"emoji":He(r,yt.emoji(),n.message,e);break;case"ulid":{He(r,yt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{vt(r,"binary",n.message,e);break}case"contentEncoding:base64":{W(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{He(r,yt.base64,n.message,e);break}}break}case"nanoid":He(r,yt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function ul(t,e){return e.patternStrategy==="escape"?vE(t):t}var yE=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function vE(t){let e="";for(let r=0;r<t.length;r++)yE.has(t[r])||(e+="\\"),e+=t[r];return e}function vt(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):W(t,"format",e,r,n)}function He(t,e,r,n){t.pattern||t.allOf?.some(o=>o.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&n.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:$h(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):W(t,"pattern",$h(e,n),r,n)}function $h(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
67
+ 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 Cu(t,e){if(t instanceof go){let n=new qs(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 qs(e);return r.process(t),r.emit(t,e)}function ke(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 ke(o.element,r);case"object":{for(let s in o.shape)if(ke(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(ke(s,r))return!0;return!1}case"intersection":return ke(o.left,r)||ke(o.right,r);case"tuple":{for(let s of o.items)if(ke(s,r))return!0;return!!(o.rest&&ke(o.rest,r))}case"record":return ke(o.keyType,r)||ke(o.valueType,r);case"map":return ke(o.keyType,r)||ke(o.valueType,r);case"set":return ke(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return ke(o.innerType,r);case"lazy":return ke(o.getter(),r);case"default":return ke(o.innerType,r);case"prefault":return ke(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return ke(o.in,r)||ke(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var Bk=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)=>Ga(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Hr(t,r,n),t.parseAsync=async(r,n)=>Ya(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>qr(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>nt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var Kk=v("ZodMiniObject",(t,e)=>{As.init(t,e),Bk.init(t,e),K.defineLazy(t,"shape",()=>e.shape)});function Iu(t,e){let r={type:"object",get shape(){return K.assignProp(this,"shape",{...t}),this.shape},...K.normalizeParams(e)};return new Kk(r)}function at(t){return!!t._zod}function Br(t){let e=Object.values(t);if(e.length===0)return Iu({});let r=e.every(at),n=e.every(o=>!at(o));if(r)return Iu(t);if(n)return Aa(t);throw new Error("Mixed Zod versions detected in object shape.")}function sr(t,e){return at(t)?Hr(t,e):t.safeParse(e)}async function Fs(t,e){return at(t)?await qr(t,e):await t.safeParseAsync(e)}function ir(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 xn(t){if(t){if(typeof t=="object"){let e=t,r=t;if(!e._def&&!r._zod){let n=Object.values(t);if(n.length>0&&n.every(o=>typeof o=="object"&&o!==null&&(o._def!==void 0||o._zod!==void 0||typeof o.parse=="function")))return Br(t)}}if(at(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function Vs(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 Tm(t){return t.description}function Pm(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 Bs(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={};tt(vo,{ZodISODate:()=>Om,ZodISODateTime:()=>Rm,ZodISODuration:()=>Im,ZodISOTime:()=>Cm,date:()=>Nu,datetime:()=>zu,duration:()=>ju,time:()=>Au});var Rm=v("ZodISODateTime",(t,e)=>{mm.init(t,e),pe.init(t,e)});function zu(t){return Sm(Rm,t)}var Om=v("ZodISODate",(t,e)=>{hm.init(t,e),pe.init(t,e)});function Nu(t){return km(Om,t)}var Cm=v("ZodISOTime",(t,e)=>{gm.init(t,e),pe.init(t,e)});function Au(t){return bm(Cm,t)}var Im=v("ZodISODuration",(t,e)=>{_m.init(t,e),pe.init(t,e)});function ju(t){return wm(Im,t)}var zm=(t,e)=>{Os.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Ka(t,r)},flatten:{value:r=>Ba(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},Nz=v("ZodError",zm),xo=v("ZodError",zm,{Parent:Error});var Nm=Ja(xo),Am=Wa(xo),jm=Xa(xo),Mm=Qa(xo);var ye=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)=>Nm(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>jm(t,r,n),t.parseAsync=async(r,n)=>Am(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Mm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(Fb(r,n)),t.superRefine=r=>t.check(Vb(r)),t.overwrite=r=>t.check(Fr(r)),t.optional=()=>_e(t),t.nullable=()=>Zm(t),t.nullish=()=>_e(Zm(t)),t.nonoptional=r=>Mb(t,r),t.array=()=>G(t),t.or=r=>ue([t,r]),t.and=r=>Js(t,r),t.transform=r=>Du(t,Vm(r)),t.default=r=>Nb(t,r),t.prefault=r=>jb(t,r),t.catch=r=>Lb(t,r),t.pipe=r=>Du(t,r),t.readonly=()=>Hb(t),t.describe=r=>{let n=t.clone();return or.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return or.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return or.get(t);let n=t.clone();return or.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),Um=v("_ZodString",(t,e)=>{ho.init(t,e),ye.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(vu(...n)),t.includes=(...n)=>t.check(ku(...n)),t.startsWith=(...n)=>t.check(bu(...n)),t.endsWith=(...n)=>t.check(wu(...n)),t.min=(...n)=>t.check(vn(...n)),t.max=(...n)=>t.check(Us(...n)),t.length=(...n)=>t.check(Hs(...n)),t.nonempty=(...n)=>t.check(vn(1,...n)),t.lowercase=n=>t.check(xu(n)),t.uppercase=n=>t.check(Su(n)),t.trim=()=>t.check($u()),t.normalize=(...n)=>t.check(Eu(...n)),t.toLowerCase=()=>t.check(Tu()),t.toUpperCase=()=>t.check(Pu())}),rb=v("ZodString",(t,e)=>{ho.init(t,e),Um.init(t,e),t.email=r=>t.check(Bc(nb,r)),t.url=r=>t.check(Yc(ob,r)),t.jwt=r=>t.check(pu(vb,r)),t.emoji=r=>t.check(Xc(sb,r)),t.guid=r=>t.check(Ms(Dm,r)),t.uuid=r=>t.check(Kc(Ks,r)),t.uuidv4=r=>t.check(Jc(Ks,r)),t.uuidv6=r=>t.check(Gc(Ks,r)),t.uuidv7=r=>t.check(Wc(Ks,r)),t.nanoid=r=>t.check(Qc(ib,r)),t.guid=r=>t.check(Ms(Dm,r)),t.cuid=r=>t.check(eu(ab,r)),t.cuid2=r=>t.check(tu(cb,r)),t.ulid=r=>t.check(ru(ub,r)),t.base64=r=>t.check(uu(gb,r)),t.base64url=r=>t.check(lu(_b,r)),t.xid=r=>t.check(nu(lb,r)),t.ksuid=r=>t.check(ou(db,r)),t.ipv4=r=>t.check(su(pb,r)),t.ipv6=r=>t.check(iu(fb,r)),t.cidrv4=r=>t.check(au(mb,r)),t.cidrv6=r=>t.check(cu(hb,r)),t.e164=r=>t.check(du(yb,r)),t.datetime=r=>t.check(zu(r)),t.date=r=>t.check(Nu(r)),t.time=r=>t.check(Au(r)),t.duration=r=>t.check(ju(r))});function y(t){return Vc(rb,t)}var pe=v("ZodStringFormat",(t,e)=>{ce.init(t,e),Um.init(t,e)}),nb=v("ZodEmail",(t,e)=>{ac.init(t,e),pe.init(t,e)});var Dm=v("ZodGUID",(t,e)=>{sc.init(t,e),pe.init(t,e)});var Ks=v("ZodUUID",(t,e)=>{ic.init(t,e),pe.init(t,e)});var ob=v("ZodURL",(t,e)=>{cc.init(t,e),pe.init(t,e)});var sb=v("ZodEmoji",(t,e)=>{uc.init(t,e),pe.init(t,e)});var ib=v("ZodNanoID",(t,e)=>{lc.init(t,e),pe.init(t,e)});var ab=v("ZodCUID",(t,e)=>{dc.init(t,e),pe.init(t,e)});var cb=v("ZodCUID2",(t,e)=>{pc.init(t,e),pe.init(t,e)});var ub=v("ZodULID",(t,e)=>{fc.init(t,e),pe.init(t,e)});var lb=v("ZodXID",(t,e)=>{mc.init(t,e),pe.init(t,e)});var db=v("ZodKSUID",(t,e)=>{hc.init(t,e),pe.init(t,e)});var pb=v("ZodIPv4",(t,e)=>{gc.init(t,e),pe.init(t,e)});var fb=v("ZodIPv6",(t,e)=>{_c.init(t,e),pe.init(t,e)});var mb=v("ZodCIDRv4",(t,e)=>{yc.init(t,e),pe.init(t,e)});var hb=v("ZodCIDRv6",(t,e)=>{vc.init(t,e),pe.init(t,e)});var gb=v("ZodBase64",(t,e)=>{xc.init(t,e),pe.init(t,e)});var _b=v("ZodBase64URL",(t,e)=>{Sc.init(t,e),pe.init(t,e)});var yb=v("ZodE164",(t,e)=>{kc.init(t,e),pe.init(t,e)});var vb=v("ZodJWT",(t,e)=>{bc.init(t,e),pe.init(t,e)});var Hm=v("ZodNumber",(t,e)=>{Ns.init(t,e),ye.init(t,e),t.gt=(n,o)=>t.check(Ls(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(Ds(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(Lm(n)),t.safe=n=>t.check(Lm(n)),t.positive=n=>t.check(Ls(0,n)),t.nonnegative=n=>t.check(yo(0,n)),t.negative=n=>t.check(Ds(0,n)),t.nonpositive=n=>t.check(_o(0,n)),t.multipleOf=(n,o)=>t.check(Zs(n,o)),t.step=(n,o)=>t.check(Zs(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 fu(Hm,t)}var xb=v("ZodNumberFormat",(t,e)=>{wc.init(t,e),Hm.init(t,e)});function Lm(t){return mu(xb,t)}var Sb=v("ZodBoolean",(t,e)=>{Ec.init(t,e),ye.init(t,e)});function Ee(t){return hu(Sb,t)}var kb=v("ZodNull",(t,e)=>{$c.init(t,e),ye.init(t,e)});function Lu(t){return gu(kb,t)}var bb=v("ZodUnknown",(t,e)=>{Tc.init(t,e),ye.init(t,e)});function fe(){return _u(bb)}var wb=v("ZodNever",(t,e)=>{Pc.init(t,e),ye.init(t,e)});function Eb(t){return yu(wb,t)}var $b=v("ZodArray",(t,e)=>{Rc.init(t,e),ye.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(vn(r,n)),t.nonempty=r=>t.check(vn(1,r)),t.max=(r,n)=>t.check(Us(r,n)),t.length=(r,n)=>t.check(Hs(r,n)),t.unwrap=()=>t.element});function G(t,e){return Em($b,t,e)}var qm=v("ZodObject",(t,e)=>{As.init(t,e),ye.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:fe()}),t.loose=()=>t.clone({...t._zod.def,catchall:fe()}),t.strict=()=>t.clone({...t._zod.def,catchall:Eb()}),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(Bm,t,r[0]),t.required=(...r)=>K.required(Km,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 qm(r)}function Ue(t,e){return new qm({type:"object",get shape(){return K.assignProp(this,"shape",{...t}),this.shape},catchall:fe(),...K.normalizeParams(e)})}var Fm=v("ZodUnion",(t,e)=>{js.init(t,e),ye.init(t,e),t.options=e.options});function ue(t,e){return new Fm({type:"union",options:t,...K.normalizeParams(e)})}var Tb=v("ZodDiscriminatedUnion",(t,e)=>{Fm.init(t,e),Oc.init(t,e)});function Zu(t,e,r){return new Tb({type:"union",options:e,discriminator:t,...K.normalizeParams(r)})}var Pb=v("ZodIntersection",(t,e)=>{Cc.init(t,e),ye.init(t,e)});function Js(t,e){return new Pb({type:"intersection",left:t,right:e})}var Rb=v("ZodRecord",(t,e)=>{Ic.init(t,e),ye.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function me(t,e,r){return new Rb({type:"record",keyType:t,valueType:e,...K.normalizeParams(r)})}var Mu=v("ZodEnum",(t,e)=>{zc.init(t,e),ye.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=e.entries[i];else throw new Error(`Key ${i} not found in enum`);return new Mu({...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 Mu({...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 Mu({type:"enum",entries:r,...K.normalizeParams(e)})}var Ob=v("ZodLiteral",(t,e)=>{Nc.init(t,e),ye.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function I(t,e){return new Ob({type:"literal",values:Array.isArray(t)?t:[t],...K.normalizeParams(e)})}var Cb=v("ZodTransform",(t,e)=>{Ac.init(t,e),ye.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 Vm(t){return new Cb({type:"transform",transform:t})}var Bm=v("ZodOptional",(t,e)=>{jc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType});function _e(t){return new Bm({type:"optional",innerType:t})}var Ib=v("ZodNullable",(t,e)=>{Mc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Zm(t){return new Ib({type:"nullable",innerType:t})}var zb=v("ZodDefault",(t,e)=>{Dc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Nb(t,e){return new zb({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Ab=v("ZodPrefault",(t,e)=>{Lc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType});function jb(t,e){return new Ab({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Km=v("ZodNonOptional",(t,e)=>{Zc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Mb(t,e){return new Km({type:"nonoptional",innerType:t,...K.normalizeParams(e)})}var Db=v("ZodCatch",(t,e)=>{Uc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function Lb(t,e){return new Db({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Zb=v("ZodPipe",(t,e)=>{Hc.init(t,e),ye.init(t,e),t.in=e.in,t.out=e.out});function Du(t,e){return new Zb({type:"pipe",in:t,out:e})}var Ub=v("ZodReadonly",(t,e)=>{qc.init(t,e),ye.init(t,e)});function Hb(t){return new Ub({type:"readonly",innerType:t})}var Jm=v("ZodCustom",(t,e)=>{Fc.init(t,e),ye.init(t,e)});function qb(t){let e=new Pe({check:"custom"});return e._zod.check=t,e}function Gm(t,e){return Ru(Jm,t??(()=>!0),e)}function Fb(t,e={}){return Ou(Jm,t,e)}function Vb(t){let e=qb(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 Uu(t,e){return Du(Vm(t),e)}rt(vm());var qu="2025-11-25";var Wm=[qu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],ar="io.modelcontextprotocol/related-task",Ws="2.0",Re=Gm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Ym=ue([y(),te().int()]),Xm=y(),Jz=Ue({ttl:ue([te(),Lu()]).optional(),pollInterval:te().optional()}),Bb=P({ttl:te().optional()}),Kb=P({taskId:y()}),Fu=Ue({progressToken:Ym.optional(),[ar]:Kb.optional()}),ot=P({_meta:Fu.optional()}),So=ot.extend({task:Bb.optional()}),Qm=t=>So.safeParse(t).success,Oe=P({method:y(),params:ot.loose().optional()}),ct=P({_meta:Fu.optional()}),ut=P({method:y(),params:ct.loose().optional()}),Ce=Ue({_meta:Fu.optional()}),Ys=ue([y(),te().int()]),eh=P({jsonrpc:I(Ws),id:Ys,...Oe.shape}).strict(),Vu=t=>eh.safeParse(t).success,th=P({jsonrpc:I(Ws),...ut.shape}).strict(),rh=t=>th.safeParse(t).success,Bu=P({jsonrpc:I(Ws),id:Ys,result:Ce}).strict(),ko=t=>Bu.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 Ku=P({jsonrpc:I(Ws),id:Ys.optional(),error:P({code:te().int(),message:y(),data:fe().optional()})}).strict();var nh=t=>Ku.safeParse(t).success;var oh=ue([eh,th,Bu,Ku]),Gz=ue([Bu,Ku]),Xs=Ce.strict(),Jb=ct.extend({requestId:Ys.optional(),reason:y().optional()}),Qs=ut.extend({method:I("notifications/cancelled"),params:Jb}),Gb=P({src:y(),mimeType:y().optional(),sizes:G(y()).optional(),theme:Ge(["light","dark"]).optional()}),bo=P({icons:G(Gb).optional()}),Sn=P({name:y(),title:y().optional()}),sh=Sn.extend({...Sn.shape,...bo.shape,version:y(),websiteUrl:y().optional(),description:y().optional()}),Wb=Js(P({applyDefaults:Ee().optional()}),me(y(),fe())),Yb=Uu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Js(P({form:Wb.optional(),url:Re.optional()}),me(y(),fe()).optional())),Xb=Ue({list:Re.optional(),cancel:Re.optional(),requests:Ue({sampling:Ue({createMessage:Re.optional()}).optional(),elicitation:Ue({create:Re.optional()}).optional()}).optional()}),Qb=Ue({list:Re.optional(),cancel:Re.optional(),requests:Ue({tools:Ue({call:Re.optional()}).optional()}).optional()}),ew=P({experimental:me(y(),Re).optional(),sampling:P({context:Re.optional(),tools:Re.optional()}).optional(),elicitation:Yb.optional(),roots:P({listChanged:Ee().optional()}).optional(),tasks:Xb.optional()}),tw=ot.extend({protocolVersion:y(),capabilities:ew,clientInfo:sh}),Ju=Oe.extend({method:I("initialize"),params:tw});var rw=P({experimental:me(y(),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:Qb.optional()}),nw=Ce.extend({protocolVersion:y(),capabilities:rw,serverInfo:sh,instructions:y().optional()}),Gu=ut.extend({method:I("notifications/initialized"),params:ct.optional()});var ei=Oe.extend({method:I("ping"),params:ot.optional()}),ow=P({progress:te(),total:_e(te()),message:_e(y())}),sw=P({...ct.shape,...ow.shape,progressToken:Ym}),ti=ut.extend({method:I("notifications/progress"),params:sw}),iw=ot.extend({cursor:Xm.optional()}),wo=Oe.extend({params:iw.optional()}),Eo=Ce.extend({nextCursor:Xm.optional()}),aw=Ge(["working","input_required","completed","failed","cancelled"]),$o=P({taskId:y(),status:aw,ttl:ue([te(),Lu()]),createdAt:y(),lastUpdatedAt:y(),pollInterval:_e(te()),statusMessage:_e(y())}),kn=Ce.extend({task:$o}),cw=ct.merge($o),To=ut.extend({method:I("notifications/tasks/status"),params:cw}),ri=Oe.extend({method:I("tasks/get"),params:ot.extend({taskId:y()})}),ni=Ce.merge($o),oi=Oe.extend({method:I("tasks/result"),params:ot.extend({taskId:y()})}),Wz=Ce.loose(),si=wo.extend({method:I("tasks/list")}),ii=Eo.extend({tasks:G($o)}),ai=Oe.extend({method:I("tasks/cancel"),params:ot.extend({taskId:y()})}),ih=Ce.merge($o),ah=P({uri:y(),mimeType:_e(y()),_meta:me(y(),fe()).optional()}),ch=ah.extend({text:y()}),Wu=y().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),uh=ah.extend({blob:Wu}),Po=Ge(["user","assistant"]),bn=P({audience:G(Po).optional(),priority:te().min(0).max(1).optional(),lastModified:vo.datetime({offset:!0}).optional()}),lh=P({...Sn.shape,...bo.shape,uri:y(),description:_e(y()),mimeType:_e(y()),annotations:bn.optional(),_meta:_e(Ue({}))}),uw=P({...Sn.shape,...bo.shape,uriTemplate:y(),description:_e(y()),mimeType:_e(y()),annotations:bn.optional(),_meta:_e(Ue({}))}),ci=wo.extend({method:I("resources/list")}),lw=Eo.extend({resources:G(lh)}),ui=wo.extend({method:I("resources/templates/list")}),dw=Eo.extend({resourceTemplates:G(uw)}),Yu=ot.extend({uri:y()}),pw=Yu,li=Oe.extend({method:I("resources/read"),params:pw}),fw=Ce.extend({contents:G(ue([ch,uh]))}),mw=ut.extend({method:I("notifications/resources/list_changed"),params:ct.optional()}),hw=Yu,gw=Oe.extend({method:I("resources/subscribe"),params:hw}),_w=Yu,yw=Oe.extend({method:I("resources/unsubscribe"),params:_w}),vw=ct.extend({uri:y()}),xw=ut.extend({method:I("notifications/resources/updated"),params:vw}),Sw=P({name:y(),description:_e(y()),required:_e(Ee())}),kw=P({...Sn.shape,...bo.shape,description:_e(y()),arguments:_e(G(Sw)),_meta:_e(Ue({}))}),di=wo.extend({method:I("prompts/list")}),bw=Eo.extend({prompts:G(kw)}),ww=ot.extend({name:y(),arguments:me(y(),y()).optional()}),pi=Oe.extend({method:I("prompts/get"),params:ww}),Xu=P({type:I("text"),text:y(),annotations:bn.optional(),_meta:me(y(),fe()).optional()}),Qu=P({type:I("image"),data:Wu,mimeType:y(),annotations:bn.optional(),_meta:me(y(),fe()).optional()}),el=P({type:I("audio"),data:Wu,mimeType:y(),annotations:bn.optional(),_meta:me(y(),fe()).optional()}),Ew=P({type:I("tool_use"),name:y(),id:y(),input:me(y(),fe()),_meta:me(y(),fe()).optional()}),$w=P({type:I("resource"),resource:ue([ch,uh]),annotations:bn.optional(),_meta:me(y(),fe()).optional()}),Tw=lh.extend({type:I("resource_link")}),tl=ue([Xu,Qu,el,Tw,$w]),Pw=P({role:Po,content:tl}),Rw=Ce.extend({description:y().optional(),messages:G(Pw)}),Ow=ut.extend({method:I("notifications/prompts/list_changed"),params:ct.optional()}),Cw=P({title:y().optional(),readOnlyHint:Ee().optional(),destructiveHint:Ee().optional(),idempotentHint:Ee().optional(),openWorldHint:Ee().optional()}),Iw=P({taskSupport:Ge(["required","optional","forbidden"]).optional()}),dh=P({...Sn.shape,...bo.shape,description:y().optional(),inputSchema:P({type:I("object"),properties:me(y(),Re).optional(),required:G(y()).optional()}).catchall(fe()),outputSchema:P({type:I("object"),properties:me(y(),Re).optional(),required:G(y()).optional()}).catchall(fe()).optional(),annotations:Cw.optional(),execution:Iw.optional(),_meta:me(y(),fe()).optional()}),fi=wo.extend({method:I("tools/list")}),zw=Eo.extend({tools:G(dh)}),mi=Ce.extend({content:G(tl).default([]),structuredContent:me(y(),fe()).optional(),isError:Ee().optional()}),Yz=mi.or(Ce.extend({toolResult:fe()})),Nw=So.extend({name:y(),arguments:me(y(),fe()).optional()}),wn=Oe.extend({method:I("tools/call"),params:Nw}),Aw=ut.extend({method:I("notifications/tools/list_changed"),params:ct.optional()}),Xz=P({autoRefresh:Ee().default(!0),debounceMs:te().int().nonnegative().default(300)}),Ro=Ge(["debug","info","notice","warning","error","critical","alert","emergency"]),jw=ot.extend({level:Ro}),rl=Oe.extend({method:I("logging/setLevel"),params:jw}),Mw=ct.extend({level:Ro,logger:y().optional(),data:fe()}),Dw=ut.extend({method:I("notifications/message"),params:Mw}),Lw=P({name:y().optional()}),Zw=P({hints:G(Lw).optional(),costPriority:te().min(0).max(1).optional(),speedPriority:te().min(0).max(1).optional(),intelligencePriority:te().min(0).max(1).optional()}),Uw=P({mode:Ge(["auto","required","none"]).optional()}),Hw=P({type:I("tool_result"),toolUseId:y().describe("The unique identifier for the corresponding tool call."),content:G(tl).default([]),structuredContent:P({}).loose().optional(),isError:Ee().optional(),_meta:me(y(),fe()).optional()}),qw=Zu("type",[Xu,Qu,el]),Gs=Zu("type",[Xu,Qu,el,Ew,Hw]),Fw=P({role:Po,content:ue([Gs,G(Gs)]),_meta:me(y(),fe()).optional()}),Vw=So.extend({messages:G(Fw),modelPreferences:Zw.optional(),systemPrompt:y().optional(),includeContext:Ge(["none","thisServer","allServers"]).optional(),temperature:te().optional(),maxTokens:te().int(),stopSequences:G(y()).optional(),metadata:Re.optional(),tools:G(dh).optional(),toolChoice:Uw.optional()}),Bw=Oe.extend({method:I("sampling/createMessage"),params:Vw}),nl=Ce.extend({model:y(),stopReason:_e(Ge(["endTurn","stopSequence","maxTokens"]).or(y())),role:Po,content:qw}),ol=Ce.extend({model:y(),stopReason:_e(Ge(["endTurn","stopSequence","maxTokens","toolUse"]).or(y())),role:Po,content:ue([Gs,G(Gs)])}),Kw=P({type:I("boolean"),title:y().optional(),description:y().optional(),default:Ee().optional()}),Jw=P({type:I("string"),title:y().optional(),description:y().optional(),minLength:te().optional(),maxLength:te().optional(),format:Ge(["email","uri","date","date-time"]).optional(),default:y().optional()}),Gw=P({type:Ge(["number","integer"]),title:y().optional(),description:y().optional(),minimum:te().optional(),maximum:te().optional(),default:te().optional()}),Ww=P({type:I("string"),title:y().optional(),description:y().optional(),enum:G(y()),default:y().optional()}),Yw=P({type:I("string"),title:y().optional(),description:y().optional(),oneOf:G(P({const:y(),title:y()})),default:y().optional()}),Xw=P({type:I("string"),title:y().optional(),description:y().optional(),enum:G(y()),enumNames:G(y()).optional(),default:y().optional()}),Qw=ue([Ww,Yw]),eE=P({type:I("array"),title:y().optional(),description:y().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({type:I("string"),enum:G(y())}),default:G(y()).optional()}),tE=P({type:I("array"),title:y().optional(),description:y().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({anyOf:G(P({const:y(),title:y()}))}),default:G(y()).optional()}),rE=ue([eE,tE]),nE=ue([Xw,Qw,rE]),oE=ue([nE,Kw,Jw,Gw]),sE=So.extend({mode:I("form").optional(),message:y(),requestedSchema:P({type:I("object"),properties:me(y(),oE),required:G(y()).optional()})}),iE=So.extend({mode:I("url"),message:y(),elicitationId:y(),url:y().url()}),aE=ue([sE,iE]),cE=Oe.extend({method:I("elicitation/create"),params:aE}),uE=ct.extend({elicitationId:y()}),lE=ut.extend({method:I("notifications/elicitation/complete"),params:uE}),hi=Ce.extend({action:Ge(["accept","decline","cancel"]),content:Uu(t=>t===null?void 0:t,me(y(),ue([y(),te(),Ee(),G(y())])).optional())}),dE=P({type:I("ref/resource"),uri:y()});var pE=P({type:I("ref/prompt"),name:y()}),fE=ot.extend({ref:ue([pE,dE]),argument:P({name:y(),value:y()}),context:P({arguments:me(y(),y()).optional()}).optional()}),gi=Oe.extend({method:I("completion/complete"),params:fE});function ph(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function fh(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var mE=Ce.extend({completion:Ue({values:G(y()).max(100),total:_e(te().int()),hasMore:_e(Ee())})}),hE=P({uri:y().startsWith("file://"),name:y().optional(),_meta:me(y(),fe()).optional()}),gE=Oe.extend({method:I("roots/list"),params:ot.optional()}),sl=Ce.extend({roots:G(hE)}),_E=ut.extend({method:I("notifications/roots/list_changed"),params:ct.optional()}),Qz=ue([ei,Ju,gi,rl,pi,di,ci,ui,li,gw,yw,wn,fi,ri,oi,si,ai]),eN=ue([Qs,ti,Gu,_E,To]),tN=ue([Xs,nl,ol,hi,sl,ni,ii,kn]),rN=ue([ei,Bw,cE,gE,ri,oi,si,ai]),nN=ue([Qs,ti,Dw,xw,mw,Aw,Ow,To,lE]),oN=ue([Xs,nw,mE,Rw,bw,lw,dw,fw,mi,zw,ni,ii,kn]),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 Hu(o.elicitations,r)}return new t(e,r,n)}},Hu=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 cr(t){return t==="completed"||t==="failed"||t==="cancelled"}var hh=Symbol("Let zodToJsonSchema decide on which parser to use");var mh={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"},gh=t=>typeof t=="string"?{...mh,name:t}:{...mh,...t};var _h=t=>{let e=gh(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 il(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function W(t,e,r,n,o){t[e]=r,il(t,e,n,o)}var _i=(t,e)=>{let r=0;for(;r<t.length&&r<e.length&&t[r]===e[r];r++);return[(t.length-r).toString(),...e.slice(r)].join("/")};function he(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?_i(e,t.currentPath):e.join("/")}}function yh(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 vh(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 xh(){return{type:"boolean"}}function yi(t,e){return M(t.type._def,e)}var Sh=(t,e)=>M(t.innerType._def,e);function al(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>al(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 yE(t,e)}}var yE=(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 kh(t,e){return{...M(t.innerType._def,e),default:t.defaultValue()}}function bh(t,e){return e.effectStrategy==="input"?M(t.schema._def,e):he(e)}function wh(t){return{type:"string",enum:Array.from(t.values)}}var vE=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Eh(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(vE(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 $h(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 cl,yt={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(cl===void 0&&(cl=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),cl),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 vi(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":vt(r,"email",n.message,e);break;case"format:idn-email":vt(r,"idn-email",n.message,e);break;case"pattern:zod":He(r,yt.email,n.message,e);break}break;case"url":vt(r,"uri",n.message,e);break;case"uuid":vt(r,"uuid",n.message,e);break;case"regex":He(r,n.regex,n.message,e);break;case"cuid":He(r,yt.cuid,n.message,e);break;case"cuid2":He(r,yt.cuid2,n.message,e);break;case"startsWith":He(r,RegExp(`^${ul(n.value,e)}`),n.message,e);break;case"endsWith":He(r,RegExp(`${ul(n.value,e)}$`),n.message,e);break;case"datetime":vt(r,"date-time",n.message,e);break;case"date":vt(r,"date",n.message,e);break;case"time":vt(r,"time",n.message,e);break;case"duration":vt(r,"duration",n.message,e);break;case"length":W(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),W(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{He(r,RegExp(ul(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&vt(r,"ipv4",n.message,e),n.version!=="v4"&&vt(r,"ipv6",n.message,e);break}case"base64url":He(r,yt.base64url,n.message,e);break;case"jwt":He(r,yt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&He(r,yt.ipv4Cidr,n.message,e),n.version!=="v4"&&He(r,yt.ipv6Cidr,n.message,e);break}case"emoji":He(r,yt.emoji(),n.message,e);break;case"ulid":{He(r,yt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{vt(r,"binary",n.message,e);break}case"contentEncoding:base64":{W(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{He(r,yt.base64,n.message,e);break}}break}case"nanoid":He(r,yt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function ul(t,e){return e.patternStrategy==="escape"?SE(t):t}var xE=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function SE(t){let e="";for(let r=0;r<t.length;r++)xE.has(t[r])||(e+="\\"),e+=t[r];return e}function vt(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):W(t,"format",e,r,n)}function He(t,e,r,n){t.pattern||t.allOf?.some(o=>o.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&n.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:Th(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):W(t,"pattern",Th(e,n),r,n)}function Th(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
68
68
  ]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
69
69
  ]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
70
70
  `:`[${n[c]}\r
71
- ]`;continue}o+=n[c],n[c]==="\\"?s=!0:i&&n[c]==="]"?i=!1:!i&&n[c]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return o}function xi(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===b.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??he(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===b.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=vi(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===b.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===b.ZodBranded&&t.keyType._def.type._def.typeName===b.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=yi(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Th(t,e){if(e.mapStrategy==="record")return xi(t,e);let r=M(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||he(e),n=M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||he(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function Ph(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 Rh(t){return t.target==="openAi"?void 0:{not:he({...t,currentPath:[...t.currentPath,"not"]})}}function Oh(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Ro={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Ih(t,e){if(e.target==="openApi3")return Ch(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Ro&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Ro[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 Ch(t,e)}var Ch=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>M(n._def,{...e,currentPath:[...e.currentPath,"anyOf",`${o}`]})).filter(n=>!!n&&(!e.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function zh(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:Ro[t.innerType._def.typeName],nullable:!0}:{type:[Ro[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 Nh(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",il(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 Ah(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=SE(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=xE(t,e);return i!==void 0&&(n.additionalProperties=i),n}function xE(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 SE(t){try{return t.isOptional()}catch{return!0}}var jh=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return M(t.innerType._def,e);let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:he(e)},r]}:he(e)};var Mh=(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 Dh(t,e){return M(t.type._def,e)}function Lh(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 Zh(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 Uh(t){return{not:he(t)}}function Hh(t){return he(t)}var qh=(t,e)=>M(t.innerType._def,e);var Fh=(t,e,r)=>{switch(e){case b.ZodString:return vi(t,r);case b.ZodNumber:return Nh(t,r);case b.ZodObject:return Ah(t,r);case b.ZodBigInt:return yh(t,r);case b.ZodBoolean:return vh();case b.ZodDate:return al(t,r);case b.ZodUndefined:return Uh(r);case b.ZodNull:return Oh(r);case b.ZodArray:return _h(t,r);case b.ZodUnion:case b.ZodDiscriminatedUnion:return Ih(t,r);case b.ZodIntersection:return wh(t,r);case b.ZodTuple:return Zh(t,r);case b.ZodRecord:return xi(t,r);case b.ZodLiteral:return Eh(t,r);case b.ZodEnum:return bh(t);case b.ZodNativeEnum:return Ph(t);case b.ZodNullable:return zh(t,r);case b.ZodOptional:return jh(t,r);case b.ZodMap:return Th(t,r);case b.ZodSet:return Lh(t,r);case b.ZodLazy:return()=>t.getter()._def;case b.ZodPromise:return Dh(t,r);case b.ZodNaN:case b.ZodNever:return Rh(r);case b.ZodEffects:return kh(t,r);case b.ZodAny:return he(r);case b.ZodUnknown:return Hh(r);case b.ZodDefault:return Sh(t,r);case b.ZodBranded:return yi(t,r);case b.ZodReadonly:return qh(t,r);case b.ZodCatch:return xh(t,r);case b.ZodPipeline:return Mh(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!==mh)return a}if(n&&!r){let a=kE(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=Fh(t,t.typeName,e),i=typeof s=="function"?M(s(),e):s;if(i&&bE(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var kE=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:_i(e.currentPath,t.path)};case"none":case"seen":return t.path.length<e.currentPath.length&&t.path.every((r,n)=>e.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),he(e)):e.$refStrategy==="seen"?he(e):void 0}},bE=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var ll=(t,e)=>{let r=gh(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:M(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??he(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=M(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??he(r),i=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;i!==void 0&&(s.title=i),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let a=o===void 0?n?{...s,[r.definitionPath]:n}:s:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,o].join("/"),[r.definitionPath]:{...n,[o]:s}};return r.target==="jsonSchema7"?a.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(a.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in a||"oneOf"in a||"allOf"in a||"type"in a&&Array.isArray(a.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),a};function wE(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function dl(t,e){return at(t)?Cu(t,{target:wE(e?.target),io:e?.pipeStrategy??"input"}):ll(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function pl(t){let r=ir(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Bs(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function fl(t,e){let r=sr(t,e);if(!r.success)throw r.error;return r.data}var EE=6e4,Si=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(Qs,r=>{this._oncancel(r)}),this.setNotificationHandler(ti,r=>{this._onprogress(r)}),this.setRequestHandler(ei,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(ri,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(oi,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(!cr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(cr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[ar]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(si,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(ai,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(cr(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)||rh(s)?this._onresponse(s):Vu(s)?this._onrequest(s,i):th(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?.[ar]?.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=Xm(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,kn,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},cr(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||{},[ar]: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=sr(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??EE,g=()=>p(C.fromError(N.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){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(_,{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},ni,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},ii,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},sh,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let n=r?.relatedTask?.taskId;if(n){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[ar]: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||{},[ar]: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||{},[ar]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=pl(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=fl(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=pl(e);this._notificationHandlers.set(n,o=>{let s=fl(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"&&Vu(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),cr(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(cr(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),cr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function Vh(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Bh(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];Vh(i)&&Vh(s)?r[o]={...i,...s}:r[o]=s}return r}var Iy=Yp(Xd(),1),zy=Yp(Cy(),1);function gO(){let t=new Iy.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,zy.default)(t),t}var na=class{constructor(e){this._ajv=e??gO()}getValidator(e){let r="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var oa=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}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 Ny(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 Ay(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!t.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!t.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}var sa=class extends Si{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Po.options.map((n,o)=>[n,o])),this.isMessageIgnored=(n,o)=>{let s=this._loggingLevels.get(o);return s?this.LOG_LEVEL_SEVERITY.get(n)<this.LOG_LEVEL_SEVERITY.get(s):!1},this._capabilities=r?.capabilities??{},this._instructions=r?.instructions,this._jsonSchemaValidator=r?.jsonSchemaValidator??new na,this.setRequestHandler(Ju,n=>this._oninitialize(n)),this.setNotificationHandler(Gu,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(rl,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Po.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new oa(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Bh(this._capabilities,e)}setRequestHandler(e,r){let o=ir(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=sr(wn,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=sr(kn,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=sr(mi,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){Ay(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Ny(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:Gm.includes(r)?r:qu,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},Xs)}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},ol,r):this.request({method:"sampling/createMessage",params:e},nl,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},hi,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},hi,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},sl,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 My=Symbol.for("mcp.completable");function ip(t){return!!t&&typeof t=="object"&&My in t}function Dy(t){return t[My]?.complete}var jy;(function(t){t.Completable="McpCompletable"})(jy||(jy={}));var _O=/^[A-Za-z0-9._-]{1,128}$/;function yO(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"),!_O.test(t)){let r=t.split("").filter(n=>!/[A-Za-z0-9._-]/.test(n)).filter((n,o,s)=>s.indexOf(n)===o);return e.push(`Tool name contains invalid characters: ${r.map(n=>`"${n}"`).join(", ")}`,"Allowed characters are: A-Z, a-z, 0-9, underscore (_), dash (-), and dot (.)"),{isValid:!1,warnings:e}}return{isValid:!0,warnings:e}}function vO(t,e){if(e.length>0){console.warn(`Tool name validation warning for "${t}":`);for(let r of e)console.warn(` - ${r}`);console.warn("Tool registration will proceed, but this may cause compatibility issues."),console.warn("Consider updating the tool name to conform to the MCP tool naming standard."),console.warn("See SEP: Specify Format for Tool Names (https://github.com/modelcontextprotocol/modelcontextprotocol/issues/986) for more details.")}}function ap(t){let e=yO(t);return vO(t,e.warnings),e.isValid}var ia=class{constructor(e){this._mcpServer=e}registerToolTask(e,r,n){let o={taskSupport:"required",...r.execution};if(o.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${e}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(e,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,o,r._meta,n)}};var aa=class{constructor(e,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new sa(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new ia(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(_r(fi)),this.server.assertCanSetRequestHandler(_r(wn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(fi,()=>({tools:Object.entries(this._registeredTools).filter(([,e])=>e.enabled).map(([e,r])=>{let n={name:e,title:r.title,description:r.description,inputSchema:(()=>{let o=xn(r.inputSchema);return o?dl(o,{strictUnions:!0,pipeStrategy:"input"}):xO})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=xn(r.outputSchema);o&&(n.outputSchema=dl(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(wn,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=xn(e.inputSchema)??e.inputSchema,i=await Fs(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Vs(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=xn(e.outputSchema),s=await Fs(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Vs(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(_r(gi)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(gi,async e=>{switch(e.params.ref.type){case"ref/prompt":return dh(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return ph(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 ss;let s=ir(n.argsSchema)?.[e.params.argument.name];if(!ip(s))return ss;let i=Dy(s);if(!i)return ss;let a=await i(e.params.argument.value,e.params.context);return Zy(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 ss;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 ss;let s=await o(e.params.argument.value,e.params.context);return Zy(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(_r(ci)),this.server.assertCanSetRequestHandler(_r(ui)),this.server.assertCanSetRequestHandler(_r(li)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(ci,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(ui,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(li,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(_r(di)),this.server.assertCanSetRequestHandler(_r(pi)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(di,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?kO(r.argsSchema):void 0}))})),this.server.setRequestHandler(pi,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=xn(n.argsSchema),s=await Fs(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Vs(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:Br(o),callback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:a=>{typeof a.name<"u"&&a.name!==e&&(delete this._registeredPrompts[e],a.name&&(this._registeredPrompts[a.name]=i)),typeof a.title<"u"&&(i.title=a.title),typeof a.description<"u"&&(i.description=a.description),typeof a.argsSchema<"u"&&(i.argsSchema=Br(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof Ke?c._def?.innerType:c;return ip(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){ap(e);let l={title:r,description:n,inputSchema:Ly(o),outputSchema:Ly(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"&&ap(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=l)),typeof d.title<"u"&&(l.title=d.title),typeof d.description<"u"&&(l.description=d.description),typeof d.paramsSchema<"u"&&(l.inputSchema=Br(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Br(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];cp(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!cp(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 xO={type:"object",properties:{}};function Uy(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function SO(t){return"_def"in t||"_zod"in t||Uy(t)}function cp(t){return typeof t!="object"||t===null||SO(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(Uy)}function Ly(t){if(t)return cp(t)?Br(t):t}function kO(t){let e=ir(t);return e?Object.entries(e).map(([r,n])=>{let o=$m(n),s=Tm(n);return{name:r,description:o,required:!s}}):[]}function _r(t){let r=ir(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Bs(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function Zy(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var ss={completion:{values:[],hasMore:!1}};import qy from"node:process";var ca=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
72
- `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),bO(r)}clear(){this._buffer=void 0}};function bO(t){return nh.parse(JSON.parse(t))}function Hy(t){return JSON.stringify(t)+`
73
- `}var ua=class{constructor(e=qy.stdin,r=qy.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new ca,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(e){return new Promise(r=>{let n=Hy(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as Ra}from"node:module";import{createHash as NC}from"node:crypto";import{existsSync as yx,unlinkSync as AC,readdirSync as jC,readFileSync as MC,rmSync as DC}from"node:fs";import{join as $a,dirname as ys,resolve as LC}from"node:path";import{fileURLToPath as Kp}from"node:url";import{homedir as vx,tmpdir as ZC}from"node:os";import{spawn as $O,execSync as Yy}from"node:child_process";import{mkdtempSync as TO,writeFileSync as Jy,rmSync as Gy,existsSync as Wy}from"node:fs";import{join as da,resolve as PO}from"node:path";import{tmpdir as RO}from"node:os";import{execSync as up}from"node:child_process";import{existsSync as wO}from"node:fs";var Fy=process.platform==="win32";function Ne(t){try{let e=Fy?`where ${t}`:`command -v ${t}`;return up(e,{stdio:"pipe"}),!0}catch{return!1}}function EO(){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(wO(e))return e;try{let r=up("where bash",{encoding:"utf-8",stdio:"pipe"}).trim().split(/\r?\n/).map(n=>n.trim()).filter(Boolean);for(let n of r){let o=n.toLowerCase();if(!(o.includes("system32")||o.includes("windowsapps")))return n}return null}catch{return null}}function Et(t){try{return up(`${t} --version`,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function la(){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:Fy?EO()??(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 lp(){return Ne("bun")}function Vy(t){let e=[],r=t.javascript==="bun";return e.push(` JavaScript: ${t.javascript} (${Et(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${Et(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${Et(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${Et(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${Et(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${Et(t.go)})`),t.rust&&e.push(` Rust: ${t.rust} (${Et(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${Et(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${Et(t.perl)})`),t.r&&e.push(` R: ${t.r} (${Et(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${Et(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
74
- `)}function By(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 Ky(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 is(t,e){if(Buffer.byteLength(t)<=e)return t;let r=t.split(`
71
+ ]`;continue}o+=n[c],n[c]==="\\"?s=!0:i&&n[c]==="]"?i=!1:!i&&n[c]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return o}function xi(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===b.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??he(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===b.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=vi(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===b.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===b.ZodBranded&&t.keyType._def.type._def.typeName===b.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=yi(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Ph(t,e){if(e.mapStrategy==="record")return xi(t,e);let r=M(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||he(e),n=M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||he(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function Rh(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 Oh(t){return t.target==="openAi"?void 0:{not:he({...t,currentPath:[...t.currentPath,"not"]})}}function Ch(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Oo={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function zh(t,e){if(e.target==="openApi3")return Ih(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Oo&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Oo[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 Ih(t,e)}var Ih=(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 Nh(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:Oo[t.innerType._def.typeName],nullable:!0}:{type:[Oo[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 Ah(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",il(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=bE(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=M(c._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});l!==void 0&&(n.properties[a]=l,u||o.push(a))}o.length&&(n.required=o);let i=kE(t,e);return i!==void 0&&(n.additionalProperties=i),n}function kE(t,e){if(t.catchall._def.typeName!=="ZodNever")return M(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]});switch(t.unknownKeys){case"passthrough":return e.allowedAdditionalProperties;case"strict":return e.rejectedAdditionalProperties;case"strip":return e.removeAdditionalStrategy==="strict"?e.allowedAdditionalProperties:e.rejectedAdditionalProperties}}function bE(t){try{return t.isOptional()}catch{return!0}}var Mh=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return M(t.innerType._def,e);let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:he(e)},r]}:he(e)};var Dh=(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 Lh(t,e){return M(t.type._def,e)}function Zh(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 Uh(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 Hh(t){return{not:he(t)}}function qh(t){return he(t)}var Fh=(t,e)=>M(t.innerType._def,e);var Vh=(t,e,r)=>{switch(e){case b.ZodString:return vi(t,r);case b.ZodNumber:return Ah(t,r);case b.ZodObject:return jh(t,r);case b.ZodBigInt:return vh(t,r);case b.ZodBoolean:return xh();case b.ZodDate:return al(t,r);case b.ZodUndefined:return Hh(r);case b.ZodNull:return Ch(r);case b.ZodArray:return yh(t,r);case b.ZodUnion:case b.ZodDiscriminatedUnion:return zh(t,r);case b.ZodIntersection:return Eh(t,r);case b.ZodTuple:return Uh(t,r);case b.ZodRecord:return xi(t,r);case b.ZodLiteral:return $h(t,r);case b.ZodEnum:return wh(t);case b.ZodNativeEnum:return Rh(t);case b.ZodNullable:return Nh(t,r);case b.ZodOptional:return Mh(t,r);case b.ZodMap:return Ph(t,r);case b.ZodSet:return Zh(t,r);case b.ZodLazy:return()=>t.getter()._def;case b.ZodPromise:return Lh(t,r);case b.ZodNaN:case b.ZodNever:return Oh(r);case b.ZodEffects:return bh(t,r);case b.ZodAny:return he(r);case b.ZodUnknown:return qh(r);case b.ZodDefault:return kh(t,r);case b.ZodBranded:return yi(t,r);case b.ZodReadonly:return Fh(t,r);case b.ZodCatch:return Sh(t,r);case b.ZodPipeline:return Dh(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!==hh)return a}if(n&&!r){let a=wE(n,e);if(a!==void 0)return a}let o={def:t,path:e.currentPath,jsonSchema:void 0};e.seen.set(t,o);let s=Vh(t,t.typeName,e),i=typeof s=="function"?M(s(),e):s;if(i&&EE(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var wE=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:_i(e.currentPath,t.path)};case"none":case"seen":return t.path.length<e.currentPath.length&&t.path.every((r,n)=>e.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),he(e)):e.$refStrategy==="seen"?he(e):void 0}},EE=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var ll=(t,e)=>{let r=_h(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:M(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??he(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=M(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??he(r),i=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;i!==void 0&&(s.title=i),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let a=o===void 0?n?{...s,[r.definitionPath]:n}:s:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,o].join("/"),[r.definitionPath]:{...n,[o]:s}};return r.target==="jsonSchema7"?a.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(a.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in a||"oneOf"in a||"allOf"in a||"type"in a&&Array.isArray(a.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),a};function $E(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function dl(t,e){return at(t)?Cu(t,{target:$E(e?.target),io:e?.pipeStrategy??"input"}):ll(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function pl(t){let r=ir(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Bs(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function fl(t,e){let r=sr(t,e);if(!r.success)throw r.error;return r.data}var TE=6e4,Si=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(Qs,r=>{this._oncancel(r)}),this.setNotificationHandler(ti,r=>{this._onprogress(r)}),this.setRequestHandler(ei,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(ri,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(oi,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(!cr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(cr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[ar]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(si,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(ai,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(cr(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),ko(s)||nh(s)?this._onresponse(s):Vu(s)?this._onrequest(s,i):rh(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?.[ar]?.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=Qm(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),ko(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(ko(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),ko(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,kn,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},cr(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||{},[ar]: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=sr(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??TE,g=()=>p(C.fromError(N.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){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(_,{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},ni,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},ii,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},ih,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||{},[ar]: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||{},[ar]: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||{},[ar]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=pl(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=fl(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=pl(e);this._notificationHandlers.set(n,o=>{let s=fl(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"&&Vu(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=To.parse({method:"notifications/tasks/status",params:a});await this.notification(c),cr(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(cr(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=To.parse({method:"notifications/tasks/status",params:c});await this.notification(u),cr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function Bh(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Kh(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];Bh(i)&&Bh(s)?r[o]={...i,...s}:r[o]=s}return r}var zy=Xp(Xd(),1),Ny=Xp(Iy(),1);function yO(){let t=new zy.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Ny.default)(t),t}var na=class{constructor(e){this._ajv=e??yO()}getValidator(e){let r="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var oa=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}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 Ay(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 sa=class extends Si{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 na,this.setRequestHandler(Ju,n=>this._oninitialize(n)),this.setNotificationHandler(Gu,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(rl,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 oa(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Kh(this._capabilities,e)}setRequestHandler(e,r){let o=ir(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=sr(wn,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=sr(kn,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=sr(mi,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&&Ay(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:Wm.includes(r)?r:qu,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},Xs)}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},ol,r):this.request({method:"sampling/createMessage",params:e},nl,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},hi,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},hi,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},sl,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 Dy=Symbol.for("mcp.completable");function ip(t){return!!t&&typeof t=="object"&&Dy in t}function Ly(t){return t[Dy]?.complete}var My;(function(t){t.Completable="McpCompletable"})(My||(My={}));var vO=/^[A-Za-z0-9._-]{1,128}$/;function xO(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"),!vO.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 SO(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 ap(t){let e=xO(t);return SO(t,e.warnings),e.isValid}var ia=class{constructor(e){this._mcpServer=e}registerToolTask(e,r,n){let o={taskSupport:"required",...r.execution};if(o.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${e}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(e,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,o,r._meta,n)}};var aa=class{constructor(e,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new sa(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new ia(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(_r(fi)),this.server.assertCanSetRequestHandler(_r(wn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(fi,()=>({tools:Object.entries(this._registeredTools).filter(([,e])=>e.enabled).map(([e,r])=>{let n={name:e,title:r.title,description:r.description,inputSchema:(()=>{let o=xn(r.inputSchema);return o?dl(o,{strictUnions:!0,pipeStrategy:"input"}):kO})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=xn(r.outputSchema);o&&(n.outputSchema=dl(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(wn,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=xn(e.inputSchema)??e.inputSchema,i=await Fs(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Vs(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=xn(e.outputSchema),s=await Fs(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Vs(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(_r(gi)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(gi,async e=>{switch(e.params.ref.type){case"ref/prompt":return ph(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return fh(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 is;let s=ir(n.argsSchema)?.[e.params.argument.name];if(!ip(s))return is;let i=Ly(s);if(!i)return is;let a=await i(e.params.argument.value,e.params.context);return Uy(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 is;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 is;let s=await o(e.params.argument.value,e.params.context);return Uy(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(_r(ci)),this.server.assertCanSetRequestHandler(_r(ui)),this.server.assertCanSetRequestHandler(_r(li)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(ci,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(ui,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(li,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(_r(di)),this.server.assertCanSetRequestHandler(_r(pi)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(di,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?wO(r.argsSchema):void 0}))})),this.server.setRequestHandler(pi,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=xn(n.argsSchema),s=await Fs(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Vs(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:Br(o),callback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:a=>{typeof a.name<"u"&&a.name!==e&&(delete this._registeredPrompts[e],a.name&&(this._registeredPrompts[a.name]=i)),typeof a.title<"u"&&(i.title=a.title),typeof a.description<"u"&&(i.description=a.description),typeof a.argsSchema<"u"&&(i.argsSchema=Br(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof Ke?c._def?.innerType:c;return ip(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){ap(e);let l={title:r,description:n,inputSchema:Zy(o),outputSchema:Zy(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"&&ap(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=l)),typeof d.title<"u"&&(l.title=d.title),typeof d.description<"u"&&(l.description=d.description),typeof d.paramsSchema<"u"&&(l.inputSchema=Br(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Br(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];cp(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!cp(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 kO={type:"object",properties:{}};function Hy(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function bO(t){return"_def"in t||"_zod"in t||Hy(t)}function cp(t){return typeof t!="object"||t===null||bO(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(Hy)}function Zy(t){if(t)return cp(t)?Br(t):t}function wO(t){let e=ir(t);return e?Object.entries(e).map(([r,n])=>{let o=Tm(n),s=Pm(n);return{name:r,description:o,required:!s}}):[]}function _r(t){let r=ir(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Bs(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function Uy(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var is={completion:{values:[],hasMore:!1}};import Fy from"node:process";var ca=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
72
+ `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),EO(r)}clear(){this._buffer=void 0}};function EO(t){return oh.parse(JSON.parse(t))}function qy(t){return JSON.stringify(t)+`
73
+ `}var ua=class{constructor(e=Fy.stdin,r=Fy.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new ca,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(e){return new Promise(r=>{let n=qy(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as Kp}from"node:module";import{createHash as jC}from"node:crypto";import{existsSync as Jp,unlinkSync as MC,readdirSync as DC,readFileSync as vx,rmSync as LC}from"node:fs";import{join as $a,dirname as ro,resolve as xx}from"node:path";import{fileURLToPath as Ra}from"node:url";import{homedir as Sx,tmpdir as ZC}from"node:os";import{spawn as PO,execSync as Xy}from"node:child_process";import{mkdtempSync as RO,writeFileSync as Gy,rmSync as Wy,existsSync as Yy}from"node:fs";import{join as da,resolve as OO}from"node:path";import{tmpdir as CO}from"node:os";import{execSync as up}from"node:child_process";import{existsSync as $O}from"node:fs";var Vy=process.platform==="win32";function Ne(t){try{let e=Vy?`where ${t}`:`command -v ${t}`;return up(e,{stdio:"pipe"}),!0}catch{return!1}}function TO(){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($O(e))return e;try{let r=up("where bash",{encoding:"utf-8",stdio:"pipe"}).trim().split(/\r?\n/).map(n=>n.trim()).filter(Boolean);for(let n of r){let o=n.toLowerCase();if(!(o.includes("system32")||o.includes("windowsapps")))return n}return null}catch{return null}}function Et(t){try{return up(`${t} --version`,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function la(){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:Vy?TO()??(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 lp(){return Ne("bun")}function By(t){let e=[],r=t.javascript==="bun";return e.push(` JavaScript: ${t.javascript} (${Et(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${Et(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${Et(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${Et(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${Et(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${Et(t.go)})`),t.rust&&e.push(` Rust: ${t.rust} (${Et(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${Et(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${Et(t.perl)})`),t.r&&e.push(` R: ${t.r} (${Et(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${Et(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
74
+ `)}function Ky(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 Jy(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 as(t,e){if(Buffer.byteLength(t)<=e)return t;let r=t.split(`
75
75
  `),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=`
76
76
 
77
77
  ... [${u} lines / ${(l/1024).toFixed(1)}KB truncated \u2014 showing first ${s.length} + last ${a.length} lines] ...
78
78
 
79
79
  `;return s.join(`
80
80
  `)+d+a.join(`
81
- `)}var $t=process.platform==="win32";function dp(t){if($t&&t.pid)try{Yy(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var pa=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??la()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill($t?e:-e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=TO(da(RO(),"ctx-mode-"));try{let a=this.#i(i,n,r),c=Ky(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{Gy(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{Gy(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=PO(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
81
+ `)}var $t=process.platform==="win32";function dp(t){if($t&&t.pid)try{Xy(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var pa=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??la()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill($t?e:-e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=RO(da(CO(),"ctx-mode-"));try{let a=this.#i(i,n,r),c=Jy(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{Wy(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{Wy(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=OO(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
82
82
 
83
83
  import "fmt"
84
84
 
@@ -86,12 +86,12 @@ func main() {
86
86
  ${r}
87
87
  }
88
88
  `),n==="php"&&!r.trimStart().startsWith("<?")&&(r=`<?php
89
- ${r}`),n==="elixir"&&Wy(da(this.#r,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(da(this.#r,"_build/dev/lib"))}, "*/ebin"))
89
+ ${r}`),n==="elixir"&&Yy(da(this.#r,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(da(this.#r,"_build/dev/lib"))}, "*/ebin"))
90
90
  |> Enum.each(&Code.prepend_path/1)
91
91
 
92
- ${r}`);let s=da(e,`script.${o[n]}`);return n==="shell"?Jy(s,r,{encoding:"utf-8",mode:448}):Jy(s,r,"utf-8"),s}async#a(e,r,n){let o=$t?".exe":"",s=e.replace(/\.rs$/,"")+o;try{Yy(`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:
93
- ${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=$t&&["tsx","ts-node","elixir"].includes(e[0]),a=e[0],c;$t&&e.length===2&&e[1]?c=[e[1].replace(/\\/g,"/")]:c=$t?e.slice(1).map(_=>_.replace(/\\/g,"/")):e.slice(1);let u=$O(a,c,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(r),shell:i,detached:!$t}),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 _=Buffer.concat(m).toString("utf-8"),x=Buffer.concat(p).toString("utf-8"),S=this.#e;s({stdout:is(_,S),stderr:is(x,S),exitCode:0,timedOut:!0,backgrounded:!0})}else dp(u)},n),m=[],p=[],h=0,g=!1;u.stdout.on("data",_=>{h+=_.length,h<=this.#t?m.push(_):g||(g=!0,dp(u))}),u.stderr.on("data",_=>{h+=_.length,h<=this.#t?p.push(_):g||(g=!0,dp(u))}),u.on("close",_=>{if(clearTimeout(f),d)return;let x=Buffer.concat(m).toString("utf-8"),S=Buffer.concat(p).toString("utf-8");g&&(S+=`
94
- [output capped at ${(this.#t/1024/1024).toFixed(0)}MB \u2014 process killed]`);let w=this.#e,R=is(x,w),oe=is(S,w);s({stdout:R,stderr:oe,exitCode:l?1:_??1,timedOut:l})}),u.on("error",_=>{clearTimeout(f),!d&&s({stdout:"",stderr:_.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",$t&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=$t?"":"/usr/local/bin:/usr/bin:/bin"),$t){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=$t?[]:["/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(Wy(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};
92
+ ${r}`);let s=da(e,`script.${o[n]}`);return n==="shell"?Gy(s,r,{encoding:"utf-8",mode:448}):Gy(s,r,"utf-8"),s}async#a(e,r,n){let o=$t?".exe":"",s=e.replace(/\.rs$/,"")+o;try{Xy(`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:
93
+ ${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=$t&&["tsx","ts-node","elixir"].includes(e[0]),a=e[0],c;$t&&e.length===2&&e[1]?c=[e[1].replace(/\\/g,"/")]:c=$t?e.slice(1).map(_=>_.replace(/\\/g,"/")):e.slice(1);let u=PO(a,c,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(r),shell:i,detached:!$t}),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 _=Buffer.concat(m).toString("utf-8"),x=Buffer.concat(p).toString("utf-8"),S=this.#e;s({stdout:as(_,S),stderr:as(x,S),exitCode:0,timedOut:!0,backgrounded:!0})}else dp(u)},n),m=[],p=[],h=0,g=!1;u.stdout.on("data",_=>{h+=_.length,h<=this.#t?m.push(_):g||(g=!0,dp(u))}),u.stderr.on("data",_=>{h+=_.length,h<=this.#t?p.push(_):g||(g=!0,dp(u))}),u.on("close",_=>{if(clearTimeout(f),d)return;let x=Buffer.concat(m).toString("utf-8"),S=Buffer.concat(p).toString("utf-8");g&&(S+=`
94
+ [output capped at ${(this.#t/1024/1024).toFixed(0)}MB \u2014 process killed]`);let w=this.#e,R=as(x,w),oe=as(S,w);s({stdout:R,stderr:oe,exitCode:l?1:_??1,timedOut:l})}),u.on("error",_=>{clearTimeout(f),!d&&s({stdout:"",stderr:_.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",$t&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=$t?"":"/usr/local/bin:/usr/bin:/bin"),$t){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=$t?[]:["/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(Yy(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};
95
95
  const file_path = FILE_CONTENT_PATH;
96
96
  const FILE_CONTENT = require("fs").readFileSync(FILE_CONTENT_PATH, "utf-8");
97
97
  ${n}`;case"python":return`FILE_CONTENT_PATH = ${o}
@@ -146,7 +146,7 @@ FILE_CONTENT <- paste(FILE_CONTENT, collapse="\\n")
146
146
  ${n}`;case"elixir":return`file_content_path = ${o}
147
147
  file_path = file_content_path
148
148
  file_content = File.read!(file_content_path)
149
- ${n}`}}};import{createRequire as OO}from"node:module";var pp=null;function Xy(){return pp||(pp=OO(import.meta.url)("better-sqlite3")),pp}function Qy(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL")}import{readFileSync as CO,readdirSync as IO,unlinkSync as rv}from"node:fs";import{tmpdir as nv}from"node:os";import{join as ov}from"node:path";var ev=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 zO(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 NO(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 AO(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 jO(t){return t<=4?1:t<=12?2:3}var tv=4096;function sv(){let t=nv(),e=0;try{let r=IO(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=ov(t,n);for(let a of["","-wal","-shm"])try{rv(i+a)}catch{}e++}}}catch{}return e}var fa=class{#e;#t;#r;#n;#o;#i;#a;#s;#c;#u;#d;#p;#f;#m;#h;#g;#_;#y;#v;#x;constructor(e){let r=Xy();this.#t=e??ov(nv(),`context-mode-${process.pid}.db`),this.#e=new r(this.#t,{timeout:5e3}),Qy(this.#e),this.#k(),this.#b()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{rv(this.#t+e)}catch{}}#k(){this.#e.exec(`
149
+ ${n}`}}};import{createRequire as IO}from"node:module";var pp=null;function Qy(){return pp||(pp=IO(import.meta.url)("better-sqlite3")),pp}function ev(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL")}import{readFileSync as zO,readdirSync as NO,unlinkSync as nv}from"node:fs";import{tmpdir as ov}from"node:os";import{join as sv}from"node:path";var tv=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 AO(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 jO(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 MO(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 DO(t){return t<=4?1:t<=12?2:3}var rv=4096;function iv(){let t=ov(),e=0;try{let r=NO(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=sv(t,n);for(let a of["","-wal","-shm"])try{nv(i+a)}catch{}e++}}}catch{}return e}var fa=class{#e;#t;#r;#n;#o;#i;#a;#s;#c;#u;#d;#p;#f;#m;#h;#g;#_;#y;#v;#x;constructor(e){let r=Qy();this.#t=e??sv(ov(),`context-mode-${process.pid}.db`),this.#e=new r(this.#t,{timeout:5e3}),ev(this.#e),this.#k(),this.#b()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{nv(this.#t+e)}catch{}}#k(){this.#e.exec(`
150
150
  CREATE TABLE IF NOT EXISTS sources (
151
151
  id INTEGER PRIMARY KEY AUTOINCREMENT,
152
152
  label TEXT NOT NULL,
@@ -235,7 +235,7 @@ ${n}`}}};import{createRequire as OO}from"node:module";var pp=null;function Xy(){
235
235
  (SELECT COUNT(*) FROM sources) AS sources,
236
236
  (SELECT COUNT(*) FROM chunks) AS chunks,
237
237
  (SELECT COUNT(*) FROM chunks WHERE content_type = 'code') AS codeChunks
238
- `)}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??CO(n,"utf-8"),i=o??n??"untitled",a=this.#E(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.#$(e,n);return this.#l(o.map(s=>({...s,hasCode:!1})),r,e)}indexJSON(e,r,n=tv){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.#S(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.#w(n),{sourceId:i,label:r,totalChunks:e.length,codeChunks:o}}search(e,r=3,n,o="AND"){let s=zO(e,o),i=n?this.#p:this.#d,a=n?[s,`%${n}%`,r]:[s,r];return i.all(...a).map(u=>({title:u.title,content:u.content,source:u.label,rank:u.rank,contentType:u.content_type,highlighted:u.highlighted}))}searchTrigram(e,r=3,n,o="AND"){let s=NO(e,o);if(!s)return[];let i=n?this.#m:this.#f,a=n?[s,`%${n}%`,r]:[s,r];return i.all(...a).map(u=>({title:u.title,content:u.content,source:u.label,rank:u.rank,contentType:u.content_type,highlighted:u.highlighted}))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;let n=jO(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=AO(r,a);c<i&&(i=c,s=a)}return i<=n?s:null}searchWithFallback(e,r=3,n){let o=this.search(e,r,n,"AND");if(o.length>0)return o.map(f=>({...f,matchLayer:"porter"}));let s=this.search(e,r,n,"OR");if(s.length>0)return s.map(f=>({...f,matchLayer:"porter"}));let i=this.searchTrigram(e,r,n,"AND");if(i.length>0)return i.map(f=>({...f,matchLayer:"trigram"}));let a=this.searchTrigram(e,r,n,"OR");if(a.length>0)return a.map(f=>({...f,matchLayer:"trigram"}));let c=e.toLowerCase().trim().split(/\s+/).filter(f=>f.length>=3),u=c.join(" "),d=c.map(f=>this.fuzzyCorrect(f)??f).join(" ");if(d!==u){let f=this.search(d,r,n,"AND");if(f.length>0)return f.map(g=>({...g,matchLayer:"fuzzy"}));let m=this.search(d,r,n,"OR");if(m.length>0)return m.map(g=>({...g,matchLayer:"fuzzy"}));let p=this.searchTrigram(d,r,n,"AND");if(p.length>0)return p.map(g=>({...g,matchLayer:"fuzzy"}));let h=this.searchTrigram(d,r,n,"OR");if(h.length>0)return h.map(g=>({...g,matchLayer:"fuzzy"}))}return[]}listSources(){return this.#g.all()}getChunksBySource(e){return this.#_.all(e).map(n=>({title:n.title,content:n.content,source:n.label,rank:0,contentType:n.content_type}))}getDistinctiveTerms(e,r=40){let n=this.#y.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.#v.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(f=>f.length>=3&&!ev.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.#x.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}close(){this.#e.close()}#w(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(o=>o.length>=3&&!ev.has(o)),n=[...new Set(r)];this.#e.transaction(()=>{for(let o of n)this.#a.run(o)})()}#E(e,r=tv){let n=[],o=e.split(`
238
+ `)}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??zO(n,"utf-8"),i=o??n??"untitled",a=this.#E(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.#$(e,n);return this.#l(o.map(s=>({...s,hasCode:!1})),r,e)}indexJSON(e,r,n=rv){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.#S(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.#w(n),{sourceId:i,label:r,totalChunks:e.length,codeChunks:o}}search(e,r=3,n,o="AND"){let s=AO(e,o),i=n?this.#p:this.#d,a=n?[s,`%${n}%`,r]:[s,r];return i.all(...a).map(u=>({title:u.title,content:u.content,source:u.label,rank:u.rank,contentType:u.content_type,highlighted:u.highlighted}))}searchTrigram(e,r=3,n,o="AND"){let s=jO(e,o);if(!s)return[];let i=n?this.#m:this.#f,a=n?[s,`%${n}%`,r]:[s,r];return i.all(...a).map(u=>({title:u.title,content:u.content,source:u.label,rank:u.rank,contentType:u.content_type,highlighted:u.highlighted}))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;let n=DO(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=MO(r,a);c<i&&(i=c,s=a)}return i<=n?s:null}searchWithFallback(e,r=3,n){let o=this.search(e,r,n,"AND");if(o.length>0)return o.map(f=>({...f,matchLayer:"porter"}));let s=this.search(e,r,n,"OR");if(s.length>0)return s.map(f=>({...f,matchLayer:"porter"}));let i=this.searchTrigram(e,r,n,"AND");if(i.length>0)return i.map(f=>({...f,matchLayer:"trigram"}));let a=this.searchTrigram(e,r,n,"OR");if(a.length>0)return a.map(f=>({...f,matchLayer:"trigram"}));let c=e.toLowerCase().trim().split(/\s+/).filter(f=>f.length>=3),u=c.join(" "),d=c.map(f=>this.fuzzyCorrect(f)??f).join(" ");if(d!==u){let f=this.search(d,r,n,"AND");if(f.length>0)return f.map(g=>({...g,matchLayer:"fuzzy"}));let m=this.search(d,r,n,"OR");if(m.length>0)return m.map(g=>({...g,matchLayer:"fuzzy"}));let p=this.searchTrigram(d,r,n,"AND");if(p.length>0)return p.map(g=>({...g,matchLayer:"fuzzy"}));let h=this.searchTrigram(d,r,n,"OR");if(h.length>0)return h.map(g=>({...g,matchLayer:"fuzzy"}))}return[]}listSources(){return this.#g.all()}getChunksBySource(e){return this.#_.all(e).map(n=>({title:n.title,content:n.content,source:n.label,rank:0,contentType:n.content_type}))}getDistinctiveTerms(e,r=40){let n=this.#y.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.#v.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(f=>f.length>=3&&!tv.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.#x.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}close(){this.#e.close()}#w(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(o=>o.length>=3&&!tv.has(o)),n=[...new Set(r)];this.#e.transaction(()=>{for(let o of n)this.#a.run(o)})()}#E(e,r=rv){let n=[],o=e.split(`
239
239
  `),s=[],i=[],a="",c=()=>{let l=i.join(`
240
240
  `).trim();if(l.length===0)return;let d=this.#O(s,a),f=i.some(_=>/^`{3,}/.test(_));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 _=p.join(`
241
241
 
@@ -244,22 +244,22 @@ ${n}`}}};import{createRequire as OO}from"node:module";var pp=null;function Xy(){
244
244
  `);Buffer.byteLength(x)>r&&p.length>1&&(p.pop(),g(),p=[_])}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}#$(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(`
245
245
  `)[0].slice(0,80)||`Section ${u+1}`,content:l}}).filter(c=>c.content.length>0);let o=e.split(`
246
246
  `);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(`
247
- `)})}return s}#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.#S(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#R(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#T(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}#P(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])}`}#R(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#T(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#P(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)}#O(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}};import{readFileSync as av}from"node:fs";import{resolve as Hn}from"node:path";import{homedir as cv}from"node:os";function uv(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function MO(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function DO(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function iv(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function LO(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=DO(o),a=iv(s);r=`^${i}(\\s${a})?$`}else r=`^${iv(t)}$`;return new RegExp(r,e?"i":"")}function ZO(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 UO(t,e,r=!1){for(let n of e){let o=uv(n);if(o&&LO(o,r).test(t))return n}return null}function HO(t){let e=[],r="",n=!1,o=!1,s=!1;for(let i=0;i<t.length;i++){let a=t[i],c=i>0?t[i-1]:"";a==="'"&&!o&&!s&&c!=="\\"?(n=!n,r+=a):a==='"'&&!n&&!s&&c!=="\\"?(o=!o,r+=a):a==="`"&&!n&&!o&&c!=="\\"?(s=!s,r+=a):!n&&!o&&!s?a===";"?(e.push(r.trim()),r=""):a==="|"&&t[i+1]==="|"||a==="&"&&t[i+1]==="&"?(e.push(r.trim()),r="",i++):a==="|"?(e.push(r.trim()),r=""):r+=a:r+=a}return r.trim()&&e.push(r.trim()),e.filter(i=>i.length>0)}function fp(t){let e;try{e=av(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"&&uv(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function mp(t,e){let r=[];if(t){let s=Hn(t,".claude","settings.local.json"),i=fp(s);i&&r.push(i);let a=Hn(t,".claude","settings.json"),c=fp(a);c&&r.push(c)}let n=e??Hn(cv(),".claude","settings.json"),o=fp(n);return o&&r.push(o),r}function lv(t,e,r){let n=[],o=a=>{let c;try{c=av(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=MO(f);m&&m.tool===t&&d.push(m.glob)}return d};if(e){let a=o(Hn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Hn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Hn(cv(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function hp(t,e,r=process.platform==="win32"){let n=HO(t);for(let o of n)for(let s of e){let i=UO(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function dv(t,e,r=process.platform==="win32"){let n=t.replace(/\\/g,"/");for(let o of e)for(let s of o)if(ZO(s,r).test(n))return{denied:!0,matchedPattern:s};return{denied:!1}}var qO={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 FO(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 pv(t,e){let r=qO[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(...FO(t)),n}function gp(t){let{language:e,exitCode:r,stdout:n,stderr:o}=t,s=e==="shell"&&r===1&&n.trim().length>0;return{isError:!s,output:s?n:`Exit code: ${r}
247
+ `)})}return s}#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.#S(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#R(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#T(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}#P(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])}`}#R(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#T(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#P(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)}#O(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}};import{readFileSync as cv}from"node:fs";import{resolve as Hn}from"node:path";import{homedir as uv}from"node:os";function lv(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function LO(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function ZO(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function av(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function UO(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=ZO(o),a=av(s);r=`^${i}(\\s${a})?$`}else r=`^${av(t)}$`;return new RegExp(r,e?"i":"")}function HO(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 qO(t,e,r=!1){for(let n of e){let o=lv(n);if(o&&UO(o,r).test(t))return n}return null}function FO(t){let e=[],r="",n=!1,o=!1,s=!1;for(let i=0;i<t.length;i++){let a=t[i],c=i>0?t[i-1]:"";a==="'"&&!o&&!s&&c!=="\\"?(n=!n,r+=a):a==='"'&&!n&&!s&&c!=="\\"?(o=!o,r+=a):a==="`"&&!n&&!o&&c!=="\\"?(s=!s,r+=a):!n&&!o&&!s?a===";"?(e.push(r.trim()),r=""):a==="|"&&t[i+1]==="|"||a==="&"&&t[i+1]==="&"?(e.push(r.trim()),r="",i++):a==="|"?(e.push(r.trim()),r=""):r+=a:r+=a}return r.trim()&&e.push(r.trim()),e.filter(i=>i.length>0)}function fp(t){let e;try{e=cv(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"&&lv(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function mp(t,e){let r=[];if(t){let s=Hn(t,".claude","settings.local.json"),i=fp(s);i&&r.push(i);let a=Hn(t,".claude","settings.json"),c=fp(a);c&&r.push(c)}let n=e??Hn(uv(),".claude","settings.json"),o=fp(n);return o&&r.push(o),r}function dv(t,e,r){let n=[],o=a=>{let c;try{c=cv(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=LO(f);m&&m.tool===t&&d.push(m.glob)}return d};if(e){let a=o(Hn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Hn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Hn(uv(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function hp(t,e,r=process.platform==="win32"){let n=FO(t);for(let o of n)for(let s of e){let i=qO(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function pv(t,e,r=process.platform==="win32"){let n=t.replace(/\\/g,"/");for(let o of e)for(let s of o)if(HO(s,r).test(n))return{denied:!0,matchedPattern:s};return{denied:!1}}var VO={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 BO(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 fv(t,e){let r=VO[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(...BO(t)),n}function gp(t){let{language:e,exitCode:r,stdout:n,stderr:o}=t,s=e==="shell"&&r===1&&n.trim().length>0;return{isError:!s,output:s?n:`Exit code: ${r}
248
248
 
249
249
  stdout:
250
250
  ${n}
251
251
 
252
252
  stderr:
253
- ${o}`}}var VO=process.ppid;function BO(){let t=process.ppid;return!(t!==VO||t===0||t===1)}function fv(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??BO,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 KO}from"node:crypto";import{execFileSync as JO}from"node:child_process";function mv(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=JO("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`__${KO("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var UC=Ra(import.meta.url),xx=UC("../package.json").version;process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
253
+ ${o}`}}var KO=process.ppid;function JO(){let t=process.ppid;return!(t!==KO||t===0||t===1)}function mv(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??JO,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 GO}from"node:crypto";import{execFileSync as WO}from"node:child_process";function hv(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=WO("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`__${GO("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var UC=ro(Ra(import.meta.url)),kx=(()=>{for(let t of["../package.json","./package.json"]){let e=xx(UC,t);if(Jp(e))try{return JSON.parse(vx(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
254
254
  `)});process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
255
- `)});var Jp=la(),HC=By(Jp),Pt=new aa({name:"context-mode",version:xx}),vs=new pa({runtimes:Jp,projectRoot:process.env.CLAUDE_PROJECT_DIR}),to=null;function qC(t){try{let e=$a(vx(),".claude","context-mode","sessions");if(!yx(e))return;let r=jC(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=$a(e,n);try{t.index({path:o,source:"session-events"}),AC(o)}catch{}}}catch{}}function xs(){return to||(to=new fa),qC(to),to}var Ve={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 Ve.calls[t]=(Ve.calls[t]||0)+1,Ve.bytesReturned[t]=(Ve.bytesReturned[t]||0)+r,e}function kr(t){Ve.bytesIndexed+=t}function Gp(t,e){try{let r=mp(process.env.CLAUDE_PROJECT_DIR),n=hp(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 Sx(t,e,r){try{let n=pv(t,e);if(n.length===0)return null;let o=mp(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=hp(s,o);if(i.decision==="deny")return 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 FC(t,e){try{let r=lv("Read",process.env.CLAUDE_PROJECT_DIR),n=dv(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 VC=HC.join(", "),BC=lp()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",KC="",JC="";function GC(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===KC){for(e.push(r),n++;n<t.length&&t[n]!==JC;)r++,n++;n<t.length&&n++}else r++,n++;return e}function kx(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of GC(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)+`
255
+ `)});var Gp=la(),HC=Ky(Gp),Pt=new aa({name:"context-mode",version:kx}),vs=new pa({runtimes:Gp,projectRoot:process.env.CLAUDE_PROJECT_DIR}),to=null;function qC(t){try{let e=$a(Sx(),".claude","context-mode","sessions");if(!Jp(e))return;let r=DC(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=$a(e,n);try{t.index({path:o,source:"session-events"}),MC(o)}catch{}}}catch{}}function xs(){return to||(to=new fa),qC(to),to}var Ve={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 Ve.calls[t]=(Ve.calls[t]||0)+1,Ve.bytesReturned[t]=(Ve.bytesReturned[t]||0)+r,e}function kr(t){Ve.bytesIndexed+=t}function Wp(t,e){try{let r=mp(process.env.CLAUDE_PROJECT_DIR),n=hp(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 bx(t,e,r){try{let n=fv(t,e);if(n.length===0)return null;let o=mp(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=hp(s,o);if(i.decision==="deny")return 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 FC(t,e){try{let r=dv("Read",process.env.CLAUDE_PROJECT_DIR),n=pv(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 VC=HC.join(", "),BC=lp()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",KC="",JC="";function GC(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===KC){for(e.push(r),n++;n<t.length&&t[n]!==JC;)r++,n++;n<t.length&&n++}else r++,n++;return e}function wx(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of GC(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)+`
256
256
  \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(`
257
257
 
258
258
  `)}Pt.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.${BC} Available: ${VC}.
259
259
 
260
260
  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'.
261
261
 
262
- 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=Gp(e,"execute");if(s)return s}else{let s=Sx(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
262
+ 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=Wp(e,"execute");if(s)return s}else{let s=bx(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
263
263
  let __cm_net=0;
264
264
  // Report network bytes on process exit \u2014 works with both promise and callback patterns.
265
265
  // process.on('exit') fires after all I/O completes, unlike .finally() which fires
@@ -318,7 +318,7 @@ ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:u,output:l}=gp({langu
318
318
  `)[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(`
319
319
  `)}Pt.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.
320
320
 
321
- 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=FC(t,"execute_file");if(s)return s;if(e==="shell"){let i=Gp(r,"execute_file");if(i)return i}else{let i=Sx(r,e,"execute_file");if(i)return i}try{let i=await vs.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}=gp({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>Ta?(kr(Buffer.byteLength(u)),J("ctx_execute_file",{content:[{type:"text",text:Pa(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)>Ta?(kr(Buffer.byteLength(a)),J("ctx_execute_file",{content:[{type:"text",text:Pa(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})}});Pt.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.
321
+ 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=FC(t,"execute_file");if(s)return s;if(e==="shell"){let i=Wp(r,"execute_file");if(i)return i}else{let i=bx(r,e,"execute_file");if(i)return i}try{let i=await vs.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}=gp({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>Ta?(kr(Buffer.byteLength(u)),J("ctx_execute_file",{content:[{type:"text",text:Pa(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)>Ta?(kr(Buffer.byteLength(a)),J("ctx_execute_file",{content:[{type:"text",text:Pa(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})}});Pt.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.
322
322
 
323
323
  WHEN TO USE:
324
324
  - Documentation from Context7, Skills, or MCP tools (API docs, framework guides, code examples)
@@ -330,12 +330,12 @@ WHEN TO USE:
330
330
 
331
331
  After indexing, use 'search' to retrieve specific sections on-demand.
332
332
  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)kr(Buffer.byteLength(t));else if(e)try{let s=await import("fs");kr(s.readFileSync(e).byteLength)}catch{}let o=xs().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}
333
- 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 cn=0,Fp=Date.now(),WC=6e4,gx=3,_x=8;function Wp(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function YC(t){let e=Wp(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}Pt.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Pass ALL search questions as queries array in ONE call.
333
+ 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 cn=0,Fp=Date.now(),WC=6e4,_x=3,yx=8;function Yp(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function YC(t){let e=Yp(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}Pt.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Pass ALL search questions as queries array in ONE call.
334
334
 
335
- TIPS: 2-4 specific terms per query. Use 'source' to scope results.`,inputSchema:Z.object({queries:Z.preprocess(Wp,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).")})},async t=>{try{let e=xs(),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}=t,i=Date.now();if(i-Fp>WC&&(cn=0,Fp=i),cn++,cn>_x)return J("ctx_search",{content:[{type:"text",text:`BLOCKED: ${cn} search calls in ${Math.round((i-Fp)/1e3)}s. You're flooding context. STOP making individual search calls. Use batch_execute(commands, queries) for your next research step.`}],isError:!0});let a=cn>gx?1:Math.min(o,2),c=40*1024,u=0,l=[];for(let f of n){if(u>c){l.push(`## ${f}
335
+ TIPS: 2-4 specific terms per query. Use 'source' to scope results.`,inputSchema:Z.object({queries:Z.preprocess(Yp,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).")})},async t=>{try{let e=xs(),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}=t,i=Date.now();if(i-Fp>WC&&(cn=0,Fp=i),cn++,cn>yx)return J("ctx_search",{content:[{type:"text",text:`BLOCKED: ${cn} search calls in ${Math.round((i-Fp)/1e3)}s. You're flooding context. STOP making individual search calls. Use batch_execute(commands, queries) for your next research step.`}],isError:!0});let a=cn>_x?1:Math.min(o,2),c=40*1024,u=0,l=[];for(let f of n){if(u>c){l.push(`## ${f}
336
336
  (output cap reached)
337
337
  `);continue}let m=e.searchWithFallback(f,a,s);if(m.length===0){l.push(`## ${f}
338
- No results found.`);continue}let p=m.map((h,g)=>{let _=`--- [${h.source}] ---`,x=`### ${h.title}`,S=kx(h.content,f,1500,h.highlighted);return`${_}
338
+ No results found.`);continue}let p=m.map((h,g)=>{let _=`--- [${h.source}] ---`,x=`### ${h.title}`,S=wx(h.content,f,1500,h.highlighted);return`${_}
339
339
  ${x}
340
340
 
341
341
  ${S}`}).join(`
@@ -346,10 +346,10 @@ ${p}`),u+=p.length}let d=l.join(`
346
346
 
347
347
  ---
348
348
 
349
- `);if(cn>=gx&&(d+=`
349
+ `);if(cn>=_x&&(d+=`
350
350
 
351
- \u26A0 search call #${cn}/${_x} in this window. Results limited to ${a}/query. Batch queries: search(queries: ["q1","q2","q3"]) or use batch_execute.`),d.trim().length===0){let f=e.listSources(),m=f.length>0?`
352
- Indexed sources: ${f.map(p=>`"${p.label}" (${p.chunkCount} sections)`).join(", ")}`:"";return J("ctx_search",{content:[{type:"text",text:`No results found.${m}`}]})}return J("ctx_search",{content:[{type:"text",text:d}]})}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 Vp=null,Bp=null;function XC(){return Vp||(Vp=Ra(import.meta.url).resolve("turndown")),Vp}function QC(){return Bp||(Bp=Ra(import.meta.url).resolve("turndown-plugin-gfm")),Bp}function eI(t,e){let r=JSON.stringify(XC()),n=JSON.stringify(QC()),o=JSON.stringify(e);return`
351
+ \u26A0 search call #${cn}/${yx} in this window. Results limited to ${a}/query. Batch queries: search(queries: ["q1","q2","q3"]) or use batch_execute.`),d.trim().length===0){let f=e.listSources(),m=f.length>0?`
352
+ Indexed sources: ${f.map(p=>`"${p.label}" (${p.chunkCount} sections)`).join(", ")}`:"";return J("ctx_search",{content:[{type:"text",text:`No results found.${m}`}]})}return J("ctx_search",{content:[{type:"text",text:d}]})}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 Vp=null,Bp=null;function XC(){return Vp||(Vp=Kp(import.meta.url).resolve("turndown")),Vp}function QC(){return Bp||(Bp=Kp(import.meta.url).resolve("turndown-plugin-gfm")),Bp}function eI(t,e){let r=JSON.stringify(XC()),n=JSON.stringify(QC()),o=JSON.stringify(e);return`
353
353
  const TurndownService = require(${r});
354
354
  const { gfm } = require(${n});
355
355
  const fs = require('fs');
@@ -399,15 +399,15 @@ main();
399
399
 
400
400
  Better than WebFetch: preview is immediate, full content is searchable, raw HTML never enters context.
401
401
 
402
- 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=$a(ZC(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let n=eI(t,r),o=await vs.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=xs(),i=(o.stdout||"").trim(),a;try{a=MC(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});kr(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)+`
402
+ 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=$a(ZC(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let n=eI(t,r),o=await vs.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=xs(),i=(o.stdout||"").trim(),a;try{a=vx(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});kr(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)+`
403
403
 
404
404
  \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(`
405
- `);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{DC(r)}catch{}}});Pt.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.
405
+ `);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{LC(r)}catch{}}});Pt.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.
406
406
 
407
407
  THIS IS THE PRIMARY TOOL. Use this instead of multiple execute() calls.
408
408
 
409
409
  One batch_execute call replaces 30+ execute calls + 10+ search calls.
410
- Provide all commands to run and all queries to search \u2014 everything happens in one round trip.`,inputSchema:Z.object({commands:Z.preprocess(YC,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(Wp,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=Gp(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,oe=r-R;if(oe<=0){n.push(`# ${w.label}
410
+ Provide all commands to run and all queries to search \u2014 everything happens in one round trip.`,inputSchema:Z.object({commands:Z.preprocess(YC,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(Yp,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=Wp(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,oe=r-R;if(oe<=0){n.push(`# ${w.label}
411
411
 
412
412
  (skipped \u2014 batch timeout exceeded)
413
413
  `),s=!0;continue}let ge=await vs.execute({language:"shell",code:`${w.command} 2>&1`,timeout:oe}),Ae=ge.stdout||"(no output)";if(n.push(`# ${w.label}
@@ -420,11 +420,11 @@ ${Ae}
420
420
  `),a=Buffer.byteLength(i),c=i.split(`
421
421
  `).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});kr(a);let u=xs(),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=[],_=0;for(let w of e){if(_>h){g.push(`## ${w}
422
422
  (output cap reached \u2014 use search(queries: ["${w}"]) for details)
423
- `);continue}let R=u.searchWithFallback(w,3,l),oe=!1;if(R.length===0&&(R=u.searchWithFallback(w,3),oe=R.length>0),g.push(`## ${w}`),oe&&g.push("> **Note:** No results in current batch output. Showing results from previously indexed content."),g.push(""),R.length>0)for(let ge of R){let Ae=kx(ge.content,w,3e3,ge.highlighted),Ut=oe?` _(source: ${ge.source})_`:"";g.push(`### ${ge.title}${Ut}`),g.push(Ae),g.push(""),_+=Ae.length+ge.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?`
423
+ `);continue}let R=u.searchWithFallback(w,3,l),oe=!1;if(R.length===0&&(R=u.searchWithFallback(w,3),oe=R.length>0),g.push(`## ${w}`),oe&&g.push("> **Note:** No results in current batch output. Showing results from previously indexed content."),g.push(""),R.length>0)for(let ge of R){let Ae=wx(ge.content,w,3e3,ge.highlighted),Ut=oe?` _(source: ${ge.source})_`:"";g.push(`### ${ge.title}${Ut}`),g.push(Ae),g.push(""),_+=Ae.length+ge.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?`
424
424
  Searchable terms for follow-up: ${x.join(", ")}`:""].join(`
425
- `);return J("ctx_batch_execute",{content:[{type:"text",text:S}]})}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})}});Pt.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(Ve.bytesReturned).reduce((d,f)=>d+f,0),e=Object.values(Ve.calls).reduce((d,f)=>d+f,0),n=((Date.now()-Ve.sessionStart)/6e4).toFixed(1),o=Ve.bytesIndexed+Ve.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(Ve.calls),...Object.keys(Ve.bytesReturned)]);if(d.size>0){u.push("","| Tool | Calls | Context | Tokens |","|------|------:|--------:|-------:|");for(let f of Array.from(d).sort()){let m=Ve.calls[f]||0,p=Ve.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=NC("sha256").update(d).digest("hex").slice(0,16),m=mv(),p=$a(vx(),".claude","context-mode","sessions",`${f}${m}.db`);if(yx(p)){let g=Ra(import.meta.url)("better-sqlite3"),_=new g(p,{readonly:!0}),x=_.prepare("SELECT COUNT(*) as cnt FROM session_events").get(),S=_.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all(),w=_.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get(),R=_.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get();if(x.cnt>0){let oe=w?.compact_count??0,ge=_.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),Ae=new Map;for(let be of ge){Ae.has(be.category)||Ae.set(be.category,new Set);let br=Ae.get(be.category);if(br.size<5){let Ze=be.data;be.category==="file"?Ze=be.data.split("/").pop()||be.data:be.category==="prompt"&&(Ze=Ze.length>50?Ze.slice(0,47)+"...":Ze),Ze.length>40&&(Ze=Ze.slice(0,37)+"..."),br.add(Ze)}}let Ut={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"},ht={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 be of S){let br=Ut[be.category]||be.category,Ze=Ae.get(be.category),Oa=Ze?Array.from(Ze).join(", "):"",bx=ht[be.category]||"Survives context resets";u.push(`| ${br} | ${be.cnt} | ${Oa} | ${bx} |`)}u.push(`| **Total** | **${x.cnt}** | | **Zero knowledge lost on compact** |`),u.push(""),oe>0?u.push(`Context has been compacted **${oe} 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."),R&&!R.consumed&&u.push(`Resume snapshot ready (${R.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.")}_.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(`
426
- `);return J("ctx_stats",{content:[{type:"text",text:l}]})});Pt.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 "${ys(ys(Kp(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(`
427
- `);return J("ctx_doctor",{content:[{type:"text",text:r}]})});Pt.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 "${ys(ys(Kp(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(`
428
- `);return J("ctx_upgrade",{content:[{type:"text",text:r}]})});async function tI(){let t=sv();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=()=>{vs.cleanupBackgrounded(),to&&to.cleanup()},r=async()=>{e(),process.exit(0)};process.on("exit",e),process.on("SIGINT",()=>{r()}),process.on("SIGTERM",()=>{r()}),fv({onShutdown:()=>r()});let n=new ua;await Pt.connect(n);try{let{detectPlatform:o,getAdapter:s}=await Promise.resolve().then(()=>(hx(),mx)),i=Pt.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=LC(ys(Kp(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${xx} running on stdio`),console.error(`Detected runtimes:
429
- ${Vy(Jp)}`),lp()||(console.error(`
430
- Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}tI().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{kx as extractSnippet,GC as positionsFromHighlight};
425
+ `);return J("ctx_batch_execute",{content:[{type:"text",text:S}]})}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})}});Pt.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(Ve.bytesReturned).reduce((d,f)=>d+f,0),e=Object.values(Ve.calls).reduce((d,f)=>d+f,0),n=((Date.now()-Ve.sessionStart)/6e4).toFixed(1),o=Ve.bytesIndexed+Ve.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(Ve.calls),...Object.keys(Ve.bytesReturned)]);if(d.size>0){u.push("","| Tool | Calls | Context | Tokens |","|------|------:|--------:|-------:|");for(let f of Array.from(d).sort()){let m=Ve.calls[f]||0,p=Ve.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=jC("sha256").update(d).digest("hex").slice(0,16),m=hv(),p=$a(Sx(),".claude","context-mode","sessions",`${f}${m}.db`);if(Jp(p)){let g=Kp(import.meta.url)("better-sqlite3"),_=new g(p,{readonly:!0}),x=_.prepare("SELECT COUNT(*) as cnt FROM session_events").get(),S=_.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all(),w=_.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get(),R=_.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get();if(x.cnt>0){let oe=w?.compact_count??0,ge=_.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),Ae=new Map;for(let be of ge){Ae.has(be.category)||Ae.set(be.category,new Set);let br=Ae.get(be.category);if(br.size<5){let Ze=be.data;be.category==="file"?Ze=be.data.split("/").pop()||be.data:be.category==="prompt"&&(Ze=Ze.length>50?Ze.slice(0,47)+"...":Ze),Ze.length>40&&(Ze=Ze.slice(0,37)+"..."),br.add(Ze)}}let Ut={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"},ht={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 be of S){let br=Ut[be.category]||be.category,Ze=Ae.get(be.category),Oa=Ze?Array.from(Ze).join(", "):"",Ex=ht[be.category]||"Survives context resets";u.push(`| ${br} | ${be.cnt} | ${Oa} | ${Ex} |`)}u.push(`| **Total** | **${x.cnt}** | | **Zero knowledge lost on compact** |`),u.push(""),oe>0?u.push(`Context has been compacted **${oe} 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."),R&&!R.consumed&&u.push(`Resume snapshot ready (${R.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.")}_.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(`
426
+ `);return J("ctx_stats",{content:[{type:"text",text:l}]})});Pt.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(Ra(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(`
427
+ `);return J("ctx_doctor",{content:[{type:"text",text:r}]})});Pt.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(Ra(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(`
428
+ `);return J("ctx_upgrade",{content:[{type:"text",text:r}]})});async function tI(){let t=iv();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=()=>{vs.cleanupBackgrounded(),to&&to.cleanup()},r=async()=>{e(),process.exit(0)};process.on("exit",e),process.on("SIGINT",()=>{r()}),process.on("SIGTERM",()=>{r()}),mv({onShutdown:()=>r()});let n=new ua;await Pt.connect(n);try{let{detectPlatform:o,getAdapter:s}=await Promise.resolve().then(()=>(gx(),hx)),i=Pt.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=xx(ro(Ra(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${kx} running on stdio`),console.error(`Detected runtimes:
429
+ ${By(Gp)}`),lp()||(console.error(`
430
+ Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}tI().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{wx as extractSnippet,GC as positionsFromHighlight};