context-mode 1.0.137 → 1.0.138
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/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/.openclaw-plugin/openclaw.plugin.json +1 -1
- package/.openclaw-plugin/package.json +1 -1
- package/README.md +5 -1
- package/build/adapters/jetbrains-copilot/hooks.d.ts +11 -3
- package/build/adapters/jetbrains-copilot/hooks.js +11 -7
- package/build/adapters/vscode-copilot/hooks.d.ts +27 -3
- package/build/adapters/vscode-copilot/hooks.js +27 -12
- package/build/cli.js +199 -32
- package/build/openclaw-plugin.d.ts +130 -0
- package/build/openclaw-plugin.js +626 -0
- package/build/opencode-plugin.d.ts +122 -0
- package/build/opencode-plugin.js +372 -0
- package/build/pi-extension.d.ts +14 -0
- package/build/pi-extension.js +451 -0
- package/build/server.js +4 -1
- package/build/util/db-lock.d.ts +65 -0
- package/build/util/db-lock.js +166 -0
- package/cli.bundle.mjs +173 -160
- package/openclaw.plugin.json +1 -1
- package/package.json +1 -1
- package/scripts/heal-installed-plugins.mjs +115 -1
- package/scripts/postinstall.mjs +16 -18
- package/server.bundle.mjs +43 -43
- package/start.mjs +11 -14
package/server.bundle.mjs
CHANGED
|
@@ -1,44 +1,44 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
var _E=Object.create;var pu=Object.defineProperty;var xE=Object.getOwnPropertyDescriptor;var vE=Object.getOwnPropertyNames;var bE=Object.getPrototypeOf,SE=Object.prototype.hasOwnProperty;var de=(t,e)=>()=>(t&&(e=t(t=0)),e);var $=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ue=(t,e)=>{for(var r in e)pu(t,r,{get:e[r],enumerable:!0})},kE=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of vE(e))!SE.call(t,o)&&o!==r&&pu(t,o,{get:()=>e[o],enumerable:!(n=xE(e,o))||n.enumerable});return t};var $h=(t,e,r)=>(r=t!=null?_E(bE(t)):{},kE(e||!t||!t.__esModule?pu(r,"default",{value:t,enumerable:!0}):r,t));var $s=$(le=>{"use strict";Object.defineProperty(le,"__esModule",{value:!0});le.regexpCode=le.getEsmExportName=le.getProperty=le.safeStringify=le.stringify=le.strConcat=le.addCodeArg=le.str=le._=le.nil=le._Code=le.Name=le.IDENTIFIER=le._CodeOrName=void 0;var Ps=class{};le._CodeOrName=Ps;le.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Pn=class extends Ps{constructor(e){if(super(),!le.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}}};le.Name=Pn;var $t=class extends Ps{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 Pn&&(r[n.str]=(r[n.str]||0)+1),r),{})}};le._Code=$t;le.nil=new $t("");function w_(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Kd(r,e[n]),r.push(t[++n]);return new $t(r)}le._=w_;var Wd=new $t("+");function T_(t,...e){let r=[Rs(t[0])],n=0;for(;n<e.length;)r.push(Wd),Kd(r,e[n]),r.push(Wd,Rs(t[++n]));return vR(r),new $t(r)}le.str=T_;function Kd(t,e){e instanceof $t?t.push(...e._items):e instanceof Pn?t.push(e):t.push(kR(e))}le.addCodeArg=Kd;function vR(t){let e=1;for(;e<t.length-1;){if(t[e]===Wd){let r=bR(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function bR(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Pn||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 Pn))return`"${t}${e.slice(1)}`}function SR(t,e){return e.emptyStr()?t:t.emptyStr()?e:T_`${t}${e}`}le.strConcat=SR;function kR(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Rs(Array.isArray(t)?t.join(","):t)}function ER(t){return new $t(Rs(t))}le.stringify=ER;function Rs(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}le.safeStringify=Rs;function wR(t){return typeof t=="string"&&le.IDENTIFIER.test(t)?new $t(`.${t}`):w_`[${t}]`}le.getProperty=wR;function TR(t){if(typeof t=="string"&&le.IDENTIFIER.test(t))return new $t(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}le.getEsmExportName=TR;function PR(t){return new $t(t.toString())}le.regexpCode=PR});var Yd=$(dt=>{"use strict";Object.defineProperty(dt,"__esModule",{value:!0});dt.ValueScope=dt.ValueScopeName=dt.Scope=dt.varKinds=dt.UsedValueState=void 0;var lt=$s(),Gd=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Ta;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Ta||(dt.UsedValueState=Ta={}));dt.varKinds={const:new lt.Name("const"),let:new lt.Name("let"),var:new lt.Name("var")};var Pa=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof lt.Name?e:this.name(e)}name(e){return new lt.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}}};dt.Scope=Pa;var Ra=class extends lt.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,lt._)`.${new lt.Name(r)}[${n}]`}};dt.ValueScopeName=Ra;var RR=(0,lt._)`\n`,Jd=class extends Pa{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?RR:lt.nil}}get(){return this._scope}name(e){return new Ra(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 d=a.get(i);if(d)return d}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,lt._)`${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=lt.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,Ta.Started);let d=r(u);if(d){let l=this.opts.es5?dt.varKinds.var:dt.varKinds.const;s=(0,lt._)`${s}${l} ${u} = ${d};${this.opts._n}`}else if(d=o?.(u))s=(0,lt._)`${s}${d}${this.opts._n}`;else throw new Gd(u);c.set(u,Ta.Completed)})}return s}};dt.ValueScope=Jd});var X=$(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.or=ee.and=ee.not=ee.CodeGen=ee.operators=ee.varKinds=ee.ValueScopeName=ee.ValueScope=ee.Scope=ee.Name=ee.regexpCode=ee.stringify=ee.getProperty=ee.nil=ee.strConcat=ee.str=ee._=void 0;var ae=$s(),Vt=Yd(),Br=$s();Object.defineProperty(ee,"_",{enumerable:!0,get:function(){return Br._}});Object.defineProperty(ee,"str",{enumerable:!0,get:function(){return Br.str}});Object.defineProperty(ee,"strConcat",{enumerable:!0,get:function(){return Br.strConcat}});Object.defineProperty(ee,"nil",{enumerable:!0,get:function(){return Br.nil}});Object.defineProperty(ee,"getProperty",{enumerable:!0,get:function(){return Br.getProperty}});Object.defineProperty(ee,"stringify",{enumerable:!0,get:function(){return Br.stringify}});Object.defineProperty(ee,"regexpCode",{enumerable:!0,get:function(){return Br.regexpCode}});Object.defineProperty(ee,"Name",{enumerable:!0,get:function(){return Br.Name}});var Ia=Yd();Object.defineProperty(ee,"Scope",{enumerable:!0,get:function(){return Ia.Scope}});Object.defineProperty(ee,"ValueScope",{enumerable:!0,get:function(){return Ia.ValueScope}});Object.defineProperty(ee,"ValueScopeName",{enumerable:!0,get:function(){return Ia.ValueScopeName}});Object.defineProperty(ee,"varKinds",{enumerable:!0,get:function(){return Ia.varKinds}});ee.operators={GT:new ae._Code(">"),GTE:new ae._Code(">="),LT:new ae._Code("<"),LTE:new ae._Code("<="),EQ:new ae._Code("==="),NEQ:new ae._Code("!=="),NOT:new ae._Code("!"),OR:new ae._Code("||"),AND:new ae._Code("&&"),ADD:new ae._Code("+")};var br=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Xd=class extends br{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Vt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=vo(this.rhs,e,r)),this}get names(){return this.rhs instanceof ae._CodeOrName?this.rhs.names:{}}},$a=class extends br{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 ae.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=vo(this.rhs,e,r),this}get names(){let e=this.lhs instanceof ae.Name?{}:{...this.lhs.names};return Oa(e,this.rhs)}},Qd=class extends $a{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},ep=class extends br{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},tp=class extends br{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},rp=class extends br{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},np=class extends br{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=vo(this.code,e,r),this}get names(){return this.code instanceof ae._CodeOrName?this.code.names:{}}},Cs=class extends br{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)||($R(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Cn(e,r.names),{})}},Sr=class extends Cs{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},op=class extends Cs{},xo=class extends Sr{};xo.kind="else";var Rn=class t extends Sr{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 xo(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(P_(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=vo(this.condition,e,r),this}get names(){let e=super.names;return Oa(e,this.condition),this.else&&Cn(e,this.else.names),e}};Rn.kind="if";var $n=class extends Sr{};$n.kind="for";var sp=class extends $n{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=vo(this.iteration,e,r),this}get names(){return Cn(super.names,this.iteration.names)}},ip=class extends $n{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?Vt.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Oa(super.names,this.from);return Oa(e,this.to)}},Ca=class extends $n{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=vo(this.iterable,e,r),this}get names(){return Cn(super.names,this.iterable.names)}},Os=class extends Sr{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)}};Os.kind="func";var Is=class extends Cs{render(e){return"return "+super.render(e)}};Is.kind="return";var ap=class extends Sr{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&&Cn(e,this.catch.names),this.finally&&Cn(e,this.finally.names),e}},As=class extends Sr{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};As.kind="catch";var Ns=class extends Sr{render(e){return"finally"+super.render(e)}};Ns.kind="finally";var cp=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
3
|
-
`:""},this._extScope=e,this._scope=new Vt.Scope({parent:e}),this._nodes=[new op]}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 Xd(e,s,n)),s}const(e,r,n){return this._def(Vt.varKinds.const,e,r,n)}let(e,r,n){return this._def(Vt.varKinds.let,e,r,n)}var(e,r,n){return this._def(Vt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new $a(e,r,n))}add(e,r){return this._leafNode(new Qd(e,ee.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==ae.nil&&this._leafNode(new np(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,ae.addCodeArg)(r,o));return r.push("}"),new ae._Code(r)}if(e,r,n){if(this._blockNode(new Rn(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 Rn(e))}else(){return this._elseNode(new xo)}endIf(){return this._endBlockNode(Rn,xo)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new sp(e),r)}forRange(e,r,n,o,s=this.opts.es5?Vt.varKinds.var:Vt.varKinds.let){let i=this._scope.toName(e);return this._for(new ip(s,i,r,n),()=>o(i))}forOf(e,r,n,o=Vt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof ae.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,ae._)`${i}.length`,a=>{this.var(s,(0,ae._)`${i}[${a}]`),n(s)})}return this._for(new Ca("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?Vt.varKinds.var:Vt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,ae._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Ca("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode($n)}label(e){return this._leafNode(new ep(e))}break(e){return this._leafNode(new tp(e))}return(e){let r=new Is;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Is)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new ap;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new As(s),r(s)}return n&&(this._currNode=o.finally=new Ns,this.code(n)),this._endBlockNode(As,Ns)}throw(e){return this._leafNode(new rp(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=ae.nil,n,o){return this._blockNode(new Os(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Os)}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 Rn))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}};ee.CodeGen=cp;function Cn(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Oa(t,e){return e instanceof ae._CodeOrName?Cn(t,e.names):t}function vo(t,e,r){if(t instanceof ae.Name)return n(t);if(!o(t))return t;return new ae._Code(t._items.reduce((s,i)=>(i instanceof ae.Name&&(i=n(i)),i instanceof ae._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 ae._Code&&s._items.some(i=>i instanceof ae.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function $R(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function P_(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,ae._)`!${up(t)}`}ee.not=P_;var CR=R_(ee.operators.AND);function OR(...t){return t.reduce(CR)}ee.and=OR;var IR=R_(ee.operators.OR);function AR(...t){return t.reduce(IR)}ee.or=AR;function R_(t){return(e,r)=>e===ae.nil?r:r===ae.nil?e:(0,ae._)`${up(e)} ${t} ${up(r)}`}function up(t){return t instanceof ae.Name?t:(0,ae._)`(${t})`}});var ce=$(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.checkStrictMode=te.getErrorPath=te.Type=te.useFunc=te.setEvaluated=te.evaluatedPropsToName=te.mergeEvaluated=te.eachItem=te.unescapeJsonPointer=te.escapeJsonPointer=te.escapeFragment=te.unescapeFragment=te.schemaRefOrVal=te.schemaHasRulesButRef=te.schemaHasRules=te.checkUnknownRules=te.alwaysValidSchema=te.toHash=void 0;var ge=X(),NR=$s();function DR(t){let e={};for(let r of t)e[r]=!0;return e}te.toHash=DR;function MR(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(O_(t,e),!I_(e,t.self.RULES.all))}te.alwaysValidSchema=MR;function O_(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]||D_(t,`unknown keyword: "${s}"`)}te.checkUnknownRules=O_;function I_(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}te.schemaHasRules=I_;function jR(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}te.schemaHasRulesButRef=jR;function zR({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ge._)`${r}`}return(0,ge._)`${t}${e}${(0,ge.getProperty)(n)}`}te.schemaRefOrVal=zR;function LR(t){return A_(decodeURIComponent(t))}te.unescapeFragment=LR;function UR(t){return encodeURIComponent(dp(t))}te.escapeFragment=UR;function dp(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}te.escapeJsonPointer=dp;function A_(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}te.unescapeJsonPointer=A_;function HR(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}te.eachItem=HR;function $_({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof ge.Name?(s instanceof ge.Name?t(o,s,i):e(o,s,i),i):s instanceof ge.Name?(e(o,i,s),s):r(s,i);return a===ge.Name&&!(c instanceof ge.Name)?n(o,c):c}}te.mergeEvaluated={props:$_({mergeNames:(t,e,r)=>t.if((0,ge._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,ge._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,ge._)`${r} || {}`).code((0,ge._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,ge._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,ge._)`${r} || {}`),pp(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:N_}),items:$_({mergeNames:(t,e,r)=>t.if((0,ge._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,ge._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,ge._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,ge._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function N_(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ge._)`{}`);return e!==void 0&&pp(t,r,e),r}te.evaluatedPropsToName=N_;function pp(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ge._)`${e}${(0,ge.getProperty)(n)}`,!0))}te.setEvaluated=pp;var C_={};function FR(t,e){return t.scopeValue("func",{ref:e,code:C_[e.code]||(C_[e.code]=new NR._Code(e.code))})}te.useFunc=FR;var lp;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(lp||(te.Type=lp={}));function ZR(t,e,r){if(t instanceof ge.Name){let n=e===lp.Num;return r?n?(0,ge._)`"[" + ${t} + "]"`:(0,ge._)`"['" + ${t} + "']"`:n?(0,ge._)`"/" + ${t}`:(0,ge._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ge.getProperty)(t).toString():"/"+dp(t)}te.getErrorPath=ZR;function D_(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}te.checkStrictMode=D_});var kr=$(fp=>{"use strict";Object.defineProperty(fp,"__esModule",{value:!0});var Xe=X(),BR={data:new Xe.Name("data"),valCxt:new Xe.Name("valCxt"),instancePath:new Xe.Name("instancePath"),parentData:new Xe.Name("parentData"),parentDataProperty:new Xe.Name("parentDataProperty"),rootData:new Xe.Name("rootData"),dynamicAnchors:new Xe.Name("dynamicAnchors"),vErrors:new Xe.Name("vErrors"),errors:new Xe.Name("errors"),this:new Xe.Name("this"),self:new Xe.Name("self"),scope:new Xe.Name("scope"),json:new Xe.Name("json"),jsonPos:new Xe.Name("jsonPos"),jsonLen:new Xe.Name("jsonLen"),jsonPart:new Xe.Name("jsonPart")};fp.default=BR});var Ds=$(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.extendErrors=Qe.resetErrorsCount=Qe.reportExtraError=Qe.reportError=Qe.keyword$DataError=Qe.keywordError=void 0;var ue=X(),Aa=ce(),ot=kr();Qe.keywordError={message:({keyword:t})=>(0,ue.str)`must pass "${t}" keyword validation`};Qe.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,ue.str)`"${t}" keyword must be ${e} ($data)`:(0,ue.str)`"${t}" keyword is invalid ($data)`};function qR(t,e=Qe.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=z_(t,e,r);n??(i||a)?M_(s,c):j_(o,(0,ue._)`[${c}]`)}Qe.reportError=qR;function VR(t,e=Qe.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=z_(t,e,r);M_(o,a),s||i||j_(n,ot.default.vErrors)}Qe.reportExtraError=VR;function WR(t,e){t.assign(ot.default.errors,e),t.if((0,ue._)`${ot.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,ue._)`${ot.default.vErrors}.length`,e),()=>t.assign(ot.default.vErrors,null)))}Qe.resetErrorsCount=WR;function KR({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,ot.default.errors,a=>{t.const(i,(0,ue._)`${ot.default.vErrors}[${a}]`),t.if((0,ue._)`${i}.instancePath === undefined`,()=>t.assign((0,ue._)`${i}.instancePath`,(0,ue.strConcat)(ot.default.instancePath,s.errorPath))),t.assign((0,ue._)`${i}.schemaPath`,(0,ue.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,ue._)`${i}.schema`,r),t.assign((0,ue._)`${i}.data`,n))})}Qe.extendErrors=KR;function M_(t,e){let r=t.const("err",e);t.if((0,ue._)`${ot.default.vErrors} === null`,()=>t.assign(ot.default.vErrors,(0,ue._)`[${r}]`),(0,ue._)`${ot.default.vErrors}.push(${r})`),t.code((0,ue._)`${ot.default.errors}++`)}function j_(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,ue._)`new ${t.ValidationError}(${e})`):(r.assign((0,ue._)`${n}.errors`,e),r.return(!1))}var On={keyword:new ue.Name("keyword"),schemaPath:new ue.Name("schemaPath"),params:new ue.Name("params"),propertyName:new ue.Name("propertyName"),message:new ue.Name("message"),schema:new ue.Name("schema"),parentSchema:new ue.Name("parentSchema")};function z_(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,ue._)`{}`:GR(t,e,r)}function GR(t,e,r={}){let{gen:n,it:o}=t,s=[JR(o,r),YR(t,r)];return XR(t,e,s),n.object(...s)}function JR({errorPath:t},{instancePath:e}){let r=e?(0,ue.str)`${t}${(0,Aa.getErrorPath)(e,Aa.Type.Str)}`:t;return[ot.default.instancePath,(0,ue.strConcat)(ot.default.instancePath,r)]}function YR({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,ue.str)`${e}/${t}`;return r&&(o=(0,ue.str)`${o}${(0,Aa.getErrorPath)(r,Aa.Type.Str)}`),[On.schemaPath,o]}function XR(t,{params:e,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=t,{opts:c,propertyName:u,topSchemaRef:d,schemaPath:l}=a;n.push([On.keyword,o],[On.params,typeof e=="function"?e(t):e||(0,ue._)`{}`]),c.messages&&n.push([On.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([On.schema,i],[On.parentSchema,(0,ue._)`${d}${l}`],[ot.default.data,s]),u&&n.push([On.propertyName,u])}});var U_=$(bo=>{"use strict";Object.defineProperty(bo,"__esModule",{value:!0});bo.boolOrEmptySchema=bo.topBoolOrEmptySchema=void 0;var QR=Ds(),e$=X(),t$=kr(),r$={message:"boolean schema is false"};function n$(t){let{gen:e,schema:r,validateName:n}=t;r===!1?L_(t,!1):typeof r=="object"&&r.$async===!0?e.return(t$.default.data):(e.assign((0,e$._)`${n}.errors`,null),e.return(!0))}bo.topBoolOrEmptySchema=n$;function o$(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),L_(t)):r.var(e,!0)}bo.boolOrEmptySchema=o$;function L_(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,QR.reportError)(o,r$,void 0,e)}});var mp=$(So=>{"use strict";Object.defineProperty(So,"__esModule",{value:!0});So.getRules=So.isJSONType=void 0;var s$=["string","number","integer","boolean","null","object","array"],i$=new Set(s$);function a$(t){return typeof t=="string"&&i$.has(t)}So.isJSONType=a$;function c$(){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:{}}}So.getRules=c$});var hp=$(qr=>{"use strict";Object.defineProperty(qr,"__esModule",{value:!0});qr.shouldUseRule=qr.shouldUseGroup=qr.schemaHasRulesForType=void 0;function u$({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&H_(t,n)}qr.schemaHasRulesForType=u$;function H_(t,e){return e.rules.some(r=>F_(t,r))}qr.shouldUseGroup=H_;function F_(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))}qr.shouldUseRule=F_});var Ms=$(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.reportTypeError=et.checkDataTypes=et.checkDataType=et.coerceAndCheckDataType=et.getJSONTypes=et.getSchemaTypes=et.DataType=void 0;var l$=mp(),d$=hp(),p$=Ds(),J=X(),Z_=ce(),ko;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(ko||(et.DataType=ko={}));function f$(t){let e=B_(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}et.getSchemaTypes=f$;function B_(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(l$.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}et.getJSONTypes=B_;function m$(t,e){let{gen:r,data:n,opts:o}=t,s=h$(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,d$.schemaHasRulesForType)(t,e[0]));if(i){let a=yp(e,n,o.strictNumbers,ko.Wrong);r.if(a,()=>{s.length?g$(t,e,s):_p(t)})}return i}et.coerceAndCheckDataType=m$;var q_=new Set(["string","number","integer","boolean","null"]);function h$(t,e){return e?t.filter(r=>q_.has(r)||e==="array"&&r==="array"):[]}function g$(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,J._)`typeof ${o}`),a=n.let("coerced",(0,J._)`undefined`);s.coerceTypes==="array"&&n.if((0,J._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,J._)`${o}[0]`).assign(i,(0,J._)`typeof ${o}`).if(yp(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,J._)`${a} !== undefined`);for(let u of r)(q_.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),_p(t),n.endIf(),n.if((0,J._)`${a} !== undefined`,()=>{n.assign(o,a),y$(t,a)});function c(u){switch(u){case"string":n.elseIf((0,J._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,J._)`"" + ${o}`).elseIf((0,J._)`${o} === null`).assign(a,(0,J._)`""`);return;case"number":n.elseIf((0,J._)`${i} == "boolean" || ${o} === null
|
|
2
|
+
var _E=Object.create;var pu=Object.defineProperty;var xE=Object.getOwnPropertyDescriptor;var vE=Object.getOwnPropertyNames;var bE=Object.getPrototypeOf,SE=Object.prototype.hasOwnProperty;var de=(t,e)=>()=>(t&&(e=t(t=0)),e);var $=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ue=(t,e)=>{for(var r in e)pu(t,r,{get:e[r],enumerable:!0})},kE=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of vE(e))!SE.call(t,o)&&o!==r&&pu(t,o,{get:()=>e[o],enumerable:!(n=xE(e,o))||n.enumerable});return t};var $h=(t,e,r)=>(r=t!=null?_E(bE(t)):{},kE(e||!t||!t.__esModule?pu(r,"default",{value:t,enumerable:!0}):r,t));var $s=$(le=>{"use strict";Object.defineProperty(le,"__esModule",{value:!0});le.regexpCode=le.getEsmExportName=le.getProperty=le.safeStringify=le.stringify=le.strConcat=le.addCodeArg=le.str=le._=le.nil=le._Code=le.Name=le.IDENTIFIER=le._CodeOrName=void 0;var Ps=class{};le._CodeOrName=Ps;le.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Pn=class extends Ps{constructor(e){if(super(),!le.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}}};le.Name=Pn;var $t=class extends Ps{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 Pn&&(r[n.str]=(r[n.str]||0)+1),r),{})}};le._Code=$t;le.nil=new $t("");function w_(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Kd(r,e[n]),r.push(t[++n]);return new $t(r)}le._=w_;var Wd=new $t("+");function T_(t,...e){let r=[Rs(t[0])],n=0;for(;n<e.length;)r.push(Wd),Kd(r,e[n]),r.push(Wd,Rs(t[++n]));return vR(r),new $t(r)}le.str=T_;function Kd(t,e){e instanceof $t?t.push(...e._items):e instanceof Pn?t.push(e):t.push(kR(e))}le.addCodeArg=Kd;function vR(t){let e=1;for(;e<t.length-1;){if(t[e]===Wd){let r=bR(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function bR(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Pn||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 Pn))return`"${t}${e.slice(1)}`}function SR(t,e){return e.emptyStr()?t:t.emptyStr()?e:T_`${t}${e}`}le.strConcat=SR;function kR(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Rs(Array.isArray(t)?t.join(","):t)}function ER(t){return new $t(Rs(t))}le.stringify=ER;function Rs(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}le.safeStringify=Rs;function wR(t){return typeof t=="string"&&le.IDENTIFIER.test(t)?new $t(`.${t}`):w_`[${t}]`}le.getProperty=wR;function TR(t){if(typeof t=="string"&&le.IDENTIFIER.test(t))return new $t(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}le.getEsmExportName=TR;function PR(t){return new $t(t.toString())}le.regexpCode=PR});var Yd=$(dt=>{"use strict";Object.defineProperty(dt,"__esModule",{value:!0});dt.ValueScope=dt.ValueScopeName=dt.Scope=dt.varKinds=dt.UsedValueState=void 0;var lt=$s(),Gd=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Ta;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Ta||(dt.UsedValueState=Ta={}));dt.varKinds={const:new lt.Name("const"),let:new lt.Name("let"),var:new lt.Name("var")};var Pa=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof lt.Name?e:this.name(e)}name(e){return new lt.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}}};dt.Scope=Pa;var Ra=class extends lt.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,lt._)`.${new lt.Name(r)}[${n}]`}};dt.ValueScopeName=Ra;var RR=(0,lt._)`\n`,Jd=class extends Pa{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?RR:lt.nil}}get(){return this._scope}name(e){return new Ra(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 d=a.get(i);if(d)return d}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,lt._)`${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=lt.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,Ta.Started);let d=r(u);if(d){let l=this.opts.es5?dt.varKinds.var:dt.varKinds.const;s=(0,lt._)`${s}${l} ${u} = ${d};${this.opts._n}`}else if(d=o?.(u))s=(0,lt._)`${s}${d}${this.opts._n}`;else throw new Gd(u);c.set(u,Ta.Completed)})}return s}};dt.ValueScope=Jd});var X=$(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.or=ee.and=ee.not=ee.CodeGen=ee.operators=ee.varKinds=ee.ValueScopeName=ee.ValueScope=ee.Scope=ee.Name=ee.regexpCode=ee.stringify=ee.getProperty=ee.nil=ee.strConcat=ee.str=ee._=void 0;var ae=$s(),Vt=Yd(),Zr=$s();Object.defineProperty(ee,"_",{enumerable:!0,get:function(){return Zr._}});Object.defineProperty(ee,"str",{enumerable:!0,get:function(){return Zr.str}});Object.defineProperty(ee,"strConcat",{enumerable:!0,get:function(){return Zr.strConcat}});Object.defineProperty(ee,"nil",{enumerable:!0,get:function(){return Zr.nil}});Object.defineProperty(ee,"getProperty",{enumerable:!0,get:function(){return Zr.getProperty}});Object.defineProperty(ee,"stringify",{enumerable:!0,get:function(){return Zr.stringify}});Object.defineProperty(ee,"regexpCode",{enumerable:!0,get:function(){return Zr.regexpCode}});Object.defineProperty(ee,"Name",{enumerable:!0,get:function(){return Zr.Name}});var Ia=Yd();Object.defineProperty(ee,"Scope",{enumerable:!0,get:function(){return Ia.Scope}});Object.defineProperty(ee,"ValueScope",{enumerable:!0,get:function(){return Ia.ValueScope}});Object.defineProperty(ee,"ValueScopeName",{enumerable:!0,get:function(){return Ia.ValueScopeName}});Object.defineProperty(ee,"varKinds",{enumerable:!0,get:function(){return Ia.varKinds}});ee.operators={GT:new ae._Code(">"),GTE:new ae._Code(">="),LT:new ae._Code("<"),LTE:new ae._Code("<="),EQ:new ae._Code("==="),NEQ:new ae._Code("!=="),NOT:new ae._Code("!"),OR:new ae._Code("||"),AND:new ae._Code("&&"),ADD:new ae._Code("+")};var vr=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Xd=class extends vr{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Vt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=vo(this.rhs,e,r)),this}get names(){return this.rhs instanceof ae._CodeOrName?this.rhs.names:{}}},$a=class extends vr{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 ae.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=vo(this.rhs,e,r),this}get names(){let e=this.lhs instanceof ae.Name?{}:{...this.lhs.names};return Oa(e,this.rhs)}},Qd=class extends $a{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},ep=class extends vr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},tp=class extends vr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},rp=class extends vr{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},np=class extends vr{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=vo(this.code,e,r),this}get names(){return this.code instanceof ae._CodeOrName?this.code.names:{}}},Cs=class extends vr{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)||($R(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Cn(e,r.names),{})}},br=class extends Cs{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},op=class extends Cs{},xo=class extends br{};xo.kind="else";var Rn=class t extends br{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 xo(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(P_(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=vo(this.condition,e,r),this}get names(){let e=super.names;return Oa(e,this.condition),this.else&&Cn(e,this.else.names),e}};Rn.kind="if";var $n=class extends br{};$n.kind="for";var sp=class extends $n{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=vo(this.iteration,e,r),this}get names(){return Cn(super.names,this.iteration.names)}},ip=class extends $n{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?Vt.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Oa(super.names,this.from);return Oa(e,this.to)}},Ca=class extends $n{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=vo(this.iterable,e,r),this}get names(){return Cn(super.names,this.iterable.names)}},Os=class extends br{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)}};Os.kind="func";var Is=class extends Cs{render(e){return"return "+super.render(e)}};Is.kind="return";var ap=class extends br{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&&Cn(e,this.catch.names),this.finally&&Cn(e,this.finally.names),e}},As=class extends br{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};As.kind="catch";var Ns=class extends br{render(e){return"finally"+super.render(e)}};Ns.kind="finally";var cp=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
3
|
+
`:""},this._extScope=e,this._scope=new Vt.Scope({parent:e}),this._nodes=[new op]}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 Xd(e,s,n)),s}const(e,r,n){return this._def(Vt.varKinds.const,e,r,n)}let(e,r,n){return this._def(Vt.varKinds.let,e,r,n)}var(e,r,n){return this._def(Vt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new $a(e,r,n))}add(e,r){return this._leafNode(new Qd(e,ee.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==ae.nil&&this._leafNode(new np(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,ae.addCodeArg)(r,o));return r.push("}"),new ae._Code(r)}if(e,r,n){if(this._blockNode(new Rn(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 Rn(e))}else(){return this._elseNode(new xo)}endIf(){return this._endBlockNode(Rn,xo)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new sp(e),r)}forRange(e,r,n,o,s=this.opts.es5?Vt.varKinds.var:Vt.varKinds.let){let i=this._scope.toName(e);return this._for(new ip(s,i,r,n),()=>o(i))}forOf(e,r,n,o=Vt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof ae.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,ae._)`${i}.length`,a=>{this.var(s,(0,ae._)`${i}[${a}]`),n(s)})}return this._for(new Ca("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?Vt.varKinds.var:Vt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,ae._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Ca("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode($n)}label(e){return this._leafNode(new ep(e))}break(e){return this._leafNode(new tp(e))}return(e){let r=new Is;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Is)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new ap;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new As(s),r(s)}return n&&(this._currNode=o.finally=new Ns,this.code(n)),this._endBlockNode(As,Ns)}throw(e){return this._leafNode(new rp(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=ae.nil,n,o){return this._blockNode(new Os(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Os)}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 Rn))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}};ee.CodeGen=cp;function Cn(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Oa(t,e){return e instanceof ae._CodeOrName?Cn(t,e.names):t}function vo(t,e,r){if(t instanceof ae.Name)return n(t);if(!o(t))return t;return new ae._Code(t._items.reduce((s,i)=>(i instanceof ae.Name&&(i=n(i)),i instanceof ae._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 ae._Code&&s._items.some(i=>i instanceof ae.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function $R(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function P_(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,ae._)`!${up(t)}`}ee.not=P_;var CR=R_(ee.operators.AND);function OR(...t){return t.reduce(CR)}ee.and=OR;var IR=R_(ee.operators.OR);function AR(...t){return t.reduce(IR)}ee.or=AR;function R_(t){return(e,r)=>e===ae.nil?r:r===ae.nil?e:(0,ae._)`${up(e)} ${t} ${up(r)}`}function up(t){return t instanceof ae.Name?t:(0,ae._)`(${t})`}});var ce=$(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.checkStrictMode=te.getErrorPath=te.Type=te.useFunc=te.setEvaluated=te.evaluatedPropsToName=te.mergeEvaluated=te.eachItem=te.unescapeJsonPointer=te.escapeJsonPointer=te.escapeFragment=te.unescapeFragment=te.schemaRefOrVal=te.schemaHasRulesButRef=te.schemaHasRules=te.checkUnknownRules=te.alwaysValidSchema=te.toHash=void 0;var ge=X(),NR=$s();function DR(t){let e={};for(let r of t)e[r]=!0;return e}te.toHash=DR;function MR(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(O_(t,e),!I_(e,t.self.RULES.all))}te.alwaysValidSchema=MR;function O_(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]||D_(t,`unknown keyword: "${s}"`)}te.checkUnknownRules=O_;function I_(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}te.schemaHasRules=I_;function jR(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}te.schemaHasRulesButRef=jR;function zR({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ge._)`${r}`}return(0,ge._)`${t}${e}${(0,ge.getProperty)(n)}`}te.schemaRefOrVal=zR;function LR(t){return A_(decodeURIComponent(t))}te.unescapeFragment=LR;function UR(t){return encodeURIComponent(dp(t))}te.escapeFragment=UR;function dp(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}te.escapeJsonPointer=dp;function A_(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}te.unescapeJsonPointer=A_;function HR(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}te.eachItem=HR;function $_({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof ge.Name?(s instanceof ge.Name?t(o,s,i):e(o,s,i),i):s instanceof ge.Name?(e(o,i,s),s):r(s,i);return a===ge.Name&&!(c instanceof ge.Name)?n(o,c):c}}te.mergeEvaluated={props:$_({mergeNames:(t,e,r)=>t.if((0,ge._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,ge._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,ge._)`${r} || {}`).code((0,ge._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,ge._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,ge._)`${r} || {}`),pp(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:N_}),items:$_({mergeNames:(t,e,r)=>t.if((0,ge._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,ge._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,ge._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,ge._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function N_(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ge._)`{}`);return e!==void 0&&pp(t,r,e),r}te.evaluatedPropsToName=N_;function pp(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ge._)`${e}${(0,ge.getProperty)(n)}`,!0))}te.setEvaluated=pp;var C_={};function FR(t,e){return t.scopeValue("func",{ref:e,code:C_[e.code]||(C_[e.code]=new NR._Code(e.code))})}te.useFunc=FR;var lp;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(lp||(te.Type=lp={}));function ZR(t,e,r){if(t instanceof ge.Name){let n=e===lp.Num;return r?n?(0,ge._)`"[" + ${t} + "]"`:(0,ge._)`"['" + ${t} + "']"`:n?(0,ge._)`"/" + ${t}`:(0,ge._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ge.getProperty)(t).toString():"/"+dp(t)}te.getErrorPath=ZR;function D_(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}te.checkStrictMode=D_});var Sr=$(fp=>{"use strict";Object.defineProperty(fp,"__esModule",{value:!0});var Xe=X(),BR={data:new Xe.Name("data"),valCxt:new Xe.Name("valCxt"),instancePath:new Xe.Name("instancePath"),parentData:new Xe.Name("parentData"),parentDataProperty:new Xe.Name("parentDataProperty"),rootData:new Xe.Name("rootData"),dynamicAnchors:new Xe.Name("dynamicAnchors"),vErrors:new Xe.Name("vErrors"),errors:new Xe.Name("errors"),this:new Xe.Name("this"),self:new Xe.Name("self"),scope:new Xe.Name("scope"),json:new Xe.Name("json"),jsonPos:new Xe.Name("jsonPos"),jsonLen:new Xe.Name("jsonLen"),jsonPart:new Xe.Name("jsonPart")};fp.default=BR});var Ds=$(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.extendErrors=Qe.resetErrorsCount=Qe.reportExtraError=Qe.reportError=Qe.keyword$DataError=Qe.keywordError=void 0;var ue=X(),Aa=ce(),ot=Sr();Qe.keywordError={message:({keyword:t})=>(0,ue.str)`must pass "${t}" keyword validation`};Qe.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,ue.str)`"${t}" keyword must be ${e} ($data)`:(0,ue.str)`"${t}" keyword is invalid ($data)`};function qR(t,e=Qe.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=z_(t,e,r);n??(i||a)?M_(s,c):j_(o,(0,ue._)`[${c}]`)}Qe.reportError=qR;function VR(t,e=Qe.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=z_(t,e,r);M_(o,a),s||i||j_(n,ot.default.vErrors)}Qe.reportExtraError=VR;function WR(t,e){t.assign(ot.default.errors,e),t.if((0,ue._)`${ot.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,ue._)`${ot.default.vErrors}.length`,e),()=>t.assign(ot.default.vErrors,null)))}Qe.resetErrorsCount=WR;function KR({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,ot.default.errors,a=>{t.const(i,(0,ue._)`${ot.default.vErrors}[${a}]`),t.if((0,ue._)`${i}.instancePath === undefined`,()=>t.assign((0,ue._)`${i}.instancePath`,(0,ue.strConcat)(ot.default.instancePath,s.errorPath))),t.assign((0,ue._)`${i}.schemaPath`,(0,ue.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,ue._)`${i}.schema`,r),t.assign((0,ue._)`${i}.data`,n))})}Qe.extendErrors=KR;function M_(t,e){let r=t.const("err",e);t.if((0,ue._)`${ot.default.vErrors} === null`,()=>t.assign(ot.default.vErrors,(0,ue._)`[${r}]`),(0,ue._)`${ot.default.vErrors}.push(${r})`),t.code((0,ue._)`${ot.default.errors}++`)}function j_(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,ue._)`new ${t.ValidationError}(${e})`):(r.assign((0,ue._)`${n}.errors`,e),r.return(!1))}var On={keyword:new ue.Name("keyword"),schemaPath:new ue.Name("schemaPath"),params:new ue.Name("params"),propertyName:new ue.Name("propertyName"),message:new ue.Name("message"),schema:new ue.Name("schema"),parentSchema:new ue.Name("parentSchema")};function z_(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,ue._)`{}`:GR(t,e,r)}function GR(t,e,r={}){let{gen:n,it:o}=t,s=[JR(o,r),YR(t,r)];return XR(t,e,s),n.object(...s)}function JR({errorPath:t},{instancePath:e}){let r=e?(0,ue.str)`${t}${(0,Aa.getErrorPath)(e,Aa.Type.Str)}`:t;return[ot.default.instancePath,(0,ue.strConcat)(ot.default.instancePath,r)]}function YR({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,ue.str)`${e}/${t}`;return r&&(o=(0,ue.str)`${o}${(0,Aa.getErrorPath)(r,Aa.Type.Str)}`),[On.schemaPath,o]}function XR(t,{params:e,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=t,{opts:c,propertyName:u,topSchemaRef:d,schemaPath:l}=a;n.push([On.keyword,o],[On.params,typeof e=="function"?e(t):e||(0,ue._)`{}`]),c.messages&&n.push([On.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([On.schema,i],[On.parentSchema,(0,ue._)`${d}${l}`],[ot.default.data,s]),u&&n.push([On.propertyName,u])}});var U_=$(bo=>{"use strict";Object.defineProperty(bo,"__esModule",{value:!0});bo.boolOrEmptySchema=bo.topBoolOrEmptySchema=void 0;var QR=Ds(),e$=X(),t$=Sr(),r$={message:"boolean schema is false"};function n$(t){let{gen:e,schema:r,validateName:n}=t;r===!1?L_(t,!1):typeof r=="object"&&r.$async===!0?e.return(t$.default.data):(e.assign((0,e$._)`${n}.errors`,null),e.return(!0))}bo.topBoolOrEmptySchema=n$;function o$(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),L_(t)):r.var(e,!0)}bo.boolOrEmptySchema=o$;function L_(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,QR.reportError)(o,r$,void 0,e)}});var mp=$(So=>{"use strict";Object.defineProperty(So,"__esModule",{value:!0});So.getRules=So.isJSONType=void 0;var s$=["string","number","integer","boolean","null","object","array"],i$=new Set(s$);function a$(t){return typeof t=="string"&&i$.has(t)}So.isJSONType=a$;function c$(){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:{}}}So.getRules=c$});var hp=$(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});Br.shouldUseRule=Br.shouldUseGroup=Br.schemaHasRulesForType=void 0;function u$({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&H_(t,n)}Br.schemaHasRulesForType=u$;function H_(t,e){return e.rules.some(r=>F_(t,r))}Br.shouldUseGroup=H_;function F_(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))}Br.shouldUseRule=F_});var Ms=$(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.reportTypeError=et.checkDataTypes=et.checkDataType=et.coerceAndCheckDataType=et.getJSONTypes=et.getSchemaTypes=et.DataType=void 0;var l$=mp(),d$=hp(),p$=Ds(),J=X(),Z_=ce(),ko;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(ko||(et.DataType=ko={}));function f$(t){let e=B_(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}et.getSchemaTypes=f$;function B_(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(l$.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}et.getJSONTypes=B_;function m$(t,e){let{gen:r,data:n,opts:o}=t,s=h$(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,d$.schemaHasRulesForType)(t,e[0]));if(i){let a=yp(e,n,o.strictNumbers,ko.Wrong);r.if(a,()=>{s.length?g$(t,e,s):_p(t)})}return i}et.coerceAndCheckDataType=m$;var q_=new Set(["string","number","integer","boolean","null"]);function h$(t,e){return e?t.filter(r=>q_.has(r)||e==="array"&&r==="array"):[]}function g$(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,J._)`typeof ${o}`),a=n.let("coerced",(0,J._)`undefined`);s.coerceTypes==="array"&&n.if((0,J._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,J._)`${o}[0]`).assign(i,(0,J._)`typeof ${o}`).if(yp(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,J._)`${a} !== undefined`);for(let u of r)(q_.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),_p(t),n.endIf(),n.if((0,J._)`${a} !== undefined`,()=>{n.assign(o,a),y$(t,a)});function c(u){switch(u){case"string":n.elseIf((0,J._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,J._)`"" + ${o}`).elseIf((0,J._)`${o} === null`).assign(a,(0,J._)`""`);return;case"number":n.elseIf((0,J._)`${i} == "boolean" || ${o} === null
|
|
4
4
|
|| (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,J._)`+${o}`);return;case"integer":n.elseIf((0,J._)`${i} === "boolean" || ${o} === null
|
|
5
5
|
|| (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,J._)`+${o}`);return;case"boolean":n.elseIf((0,J._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,J._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,J._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,J._)`${i} === "string" || ${i} === "number"
|
|
6
|
-
|| ${i} === "boolean" || ${o} === null`).assign(a,(0,J._)`[${o}]`)}}}function y$({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,J._)`${e} !== undefined`,()=>t.assign((0,J._)`${e}[${r}]`,n))}function gp(t,e,r,n=ko.Correct){let o=n===ko.Correct?J.operators.EQ:J.operators.NEQ,s;switch(t){case"null":return(0,J._)`${e} ${o} null`;case"array":s=(0,J._)`Array.isArray(${e})`;break;case"object":s=(0,J._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,J._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,J._)`typeof ${e} ${o} ${t}`}return n===ko.Correct?s:(0,J.not)(s);function i(a=J.nil){return(0,J.and)((0,J._)`typeof ${e} == "number"`,a,r?(0,J._)`isFinite(${e})`:J.nil)}}et.checkDataType=gp;function yp(t,e,r,n){if(t.length===1)return gp(t[0],e,r,n);let o,s=(0,Z_.toHash)(t);if(s.array&&s.object){let i=(0,J._)`typeof ${e} != "object"`;o=s.null?i:(0,J._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=J.nil;s.number&&delete s.integer;for(let i in s)o=(0,J.and)(o,gp(i,e,r,n));return o}et.checkDataTypes=yp;var _$={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,J._)`{type: ${t}}`:(0,J._)`{type: ${e}}`};function _p(t){let e=x$(t);(0,p$.reportError)(e,_$)}et.reportTypeError=_p;function x$(t){let{gen:e,data:r,schema:n}=t,o=(0,Z_.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var W_=$(Na=>{"use strict";Object.defineProperty(Na,"__esModule",{value:!0});Na.assignDefaults=void 0;var Eo=X(),v$=ce();function b$(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)V_(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>V_(t,s,o.default))}Na.assignDefaults=b$;function V_(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Eo._)`${s}${(0,Eo.getProperty)(e)}`;if(o){(0,v$.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Eo._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Eo._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Eo._)`${a} = ${(0,Eo.stringify)(r)}`)}});var Ct=$(me=>{"use strict";Object.defineProperty(me,"__esModule",{value:!0});me.validateUnion=me.validateArray=me.usePattern=me.callValidateCode=me.schemaProperties=me.allSchemaProperties=me.noPropertyInData=me.propertyInData=me.isOwnProperty=me.hasPropFunc=me.reportMissingProp=me.checkMissingProp=me.checkReportMissingProp=void 0;var Ee=X(),xp=ce(),Vr=kr(),S$=ce();function k$(t,e){let{gen:r,data:n,it:o}=t;r.if(bp(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Ee._)`${e}`},!0),t.error()})}me.checkReportMissingProp=k$;function E$({gen:t,data:e,it:{opts:r}},n,o){return(0,Ee.or)(...n.map(s=>(0,Ee.and)(bp(t,e,s,r.ownProperties),(0,Ee._)`${o} = ${s}`)))}me.checkMissingProp=E$;function w$(t,e){t.setParams({missingProperty:e},!0),t.error()}me.reportMissingProp=w$;function K_(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Ee._)`Object.prototype.hasOwnProperty`})}me.hasPropFunc=K_;function vp(t,e,r){return(0,Ee._)`${K_(t)}.call(${e}, ${r})`}me.isOwnProperty=vp;function T$(t,e,r,n){let o=(0,Ee._)`${e}${(0,Ee.getProperty)(r)} !== undefined`;return n?(0,Ee._)`${o} && ${vp(t,e,r)}`:o}me.propertyInData=T$;function bp(t,e,r,n){let o=(0,Ee._)`${e}${(0,Ee.getProperty)(r)} === undefined`;return n?(0,Ee.or)(o,(0,Ee.not)(vp(t,e,r))):o}me.noPropertyInData=bp;function G_(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}me.allSchemaProperties=G_;function P$(t,e){return G_(e).filter(r=>!(0,xp.alwaysValidSchema)(t,e[r]))}me.schemaProperties=P$;function R$({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let d=u?(0,Ee._)`${t}, ${e}, ${n}${o}`:e,l=[[Vr.default.instancePath,(0,Ee.strConcat)(Vr.default.instancePath,s)],[Vr.default.parentData,i.parentData],[Vr.default.parentDataProperty,i.parentDataProperty],[Vr.default.rootData,Vr.default.rootData]];i.opts.dynamicRef&&l.push([Vr.default.dynamicAnchors,Vr.default.dynamicAnchors]);let f=(0,Ee._)`${d}, ${r.object(...l)}`;return c!==Ee.nil?(0,Ee._)`${a}.call(${c}, ${f})`:(0,Ee._)`${a}(${f})`}me.callValidateCode=R$;var $$=(0,Ee._)`new RegExp`;function C$({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,Ee._)`${o.code==="new RegExp"?$$:(0,S$.useFunc)(t,o)}(${r}, ${n})`})}me.usePattern=C$;function O$(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,Ee._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:xp.Type.Num},s),e.if((0,Ee.not)(s),a)})}}me.validateArray=O$;function I$(t){let{gen:e,schema:r,keyword:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,xp.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let d=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,Ee._)`${i} || ${a}`),t.mergeValidEvaluated(d,a)||e.if((0,Ee.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}me.validateUnion=I$});var X_=$(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.validateKeywordUsage=cr.validSchemaType=cr.funcKeywordCode=cr.macroKeywordCode=void 0;var st=X(),In=kr(),A$=Ct(),N$=Ds();function D$(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Y_(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:st.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}cr.macroKeywordCode=D$;function M$(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;z$(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,d=Y_(n,o,u),l=n.let("valid");t.block$data(l,f),t.ok((r=e.valid)!==null&&r!==void 0?r:l);function f(){if(e.errors===!1)h(),e.modifying&&J_(t),g(()=>t.error());else{let _=e.async?m():p();e.modifying&&J_(t),g(()=>j$(t,_))}}function m(){let _=n.let("ruleErrs",null);return n.try(()=>h((0,st._)`await `),x=>n.assign(l,!1).if((0,st._)`${x} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,st._)`${x}.errors`),()=>n.throw(x))),_}function p(){let _=(0,st._)`${d}.errors`;return n.assign(_,null),h(st.nil),_}function h(_=e.async?(0,st._)`await `:st.nil){let x=c.opts.passContext?In.default.this:In.default.self,y=!("compile"in e&&!a||e.schema===!1);n.assign(l,(0,st._)`${_}${(0,A$.callValidateCode)(t,d,x,y)}`,e.modifying)}function g(_){var x;n.if((0,st.not)((x=e.valid)!==null&&x!==void 0?x:l),_)}}cr.funcKeywordCode=M$;function J_(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,st._)`${n.parentData}[${n.parentDataProperty}]`))}function j$(t,e){let{gen:r}=t;r.if((0,st._)`Array.isArray(${e})`,()=>{r.assign(In.default.vErrors,(0,st._)`${In.default.vErrors} === null ? ${e} : ${In.default.vErrors}.concat(${e})`).assign(In.default.errors,(0,st._)`${In.default.vErrors}.length`),(0,N$.extendErrors)(t)},()=>t.error())}function z$({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Y_(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,st.stringify)(r)})}function L$(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}cr.validSchemaType=L$;function U$({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)}}cr.validateKeywordUsage=U$});var ex=$(Wr=>{"use strict";Object.defineProperty(Wr,"__esModule",{value:!0});Wr.extendSubschemaMode=Wr.extendSubschemaData=Wr.getSubschema=void 0;var ur=X(),Q_=ce();function H$(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,ur._)`${t.schemaPath}${(0,ur.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,ur._)`${t.schemaPath}${(0,ur.getProperty)(e)}${(0,ur.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Q_.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')}Wr.getSubschema=H$;function F$(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:d,opts:l}=e,f=a.let("data",(0,ur._)`${e.data}${(0,ur.getProperty)(r)}`,!0);c(f),t.errorPath=(0,ur.str)`${u}${(0,Q_.getErrorPath)(r,n,l.jsPropertySyntax)}`,t.parentDataProperty=(0,ur._)`${r}`,t.dataPathArr=[...d,t.parentDataProperty]}if(o!==void 0){let u=o instanceof ur.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]}}Wr.extendSubschemaData=F$;function Z$(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}Wr.extendSubschemaMode=Z$});var Sp=$((jF,tx)=>{"use strict";tx.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 nx=$((zF,rx)=>{"use strict";var Kr=rx.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(){};Da(e,n,o,t,"",t)};Kr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Kr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Kr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Kr.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 Da(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 d in n){var l=n[d];if(Array.isArray(l)){if(d in Kr.arrayKeywords)for(var f=0;f<l.length;f++)Da(t,e,r,l[f],o+"/"+d+"/"+f,s,o,d,n,f)}else if(d in Kr.propsKeywords){if(l&&typeof l=="object")for(var m in l)Da(t,e,r,l[m],o+"/"+d+"/"+B$(m),s,o,d,n,m)}else(d in Kr.keywords||t.allKeys&&!(d in Kr.skipKeywords))&&Da(t,e,r,l,o+"/"+d,s,o,d,n)}r(n,o,s,i,a,c,u)}}function B$(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var js=$(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.getSchemaRefs=pt.resolveUrl=pt.normalizeId=pt._getFullPath=pt.getFullPath=pt.inlineRef=void 0;var q$=ce(),V$=Sp(),W$=nx(),K$=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function G$(t,e=!0){return typeof t=="boolean"?!0:e===!0?!kp(t):e?ox(t)<=e:!1}pt.inlineRef=G$;var J$=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function kp(t){for(let e in t){if(J$.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(kp)||typeof r=="object"&&kp(r))return!0}return!1}function ox(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!K$.has(r)&&(typeof t[r]=="object"&&(0,q$.eachItem)(t[r],n=>e+=ox(n)),e===1/0))return 1/0}return e}function sx(t,e="",r){r!==!1&&(e=wo(e));let n=t.parse(e);return ix(t,n)}pt.getFullPath=sx;function ix(t,e){return t.serialize(e).split("#")[0]+"#"}pt._getFullPath=ix;var Y$=/#\/?$/;function wo(t){return t?t.replace(Y$,""):""}pt.normalizeId=wo;function X$(t,e,r){return r=wo(r),t.resolve(e,r)}pt.resolveUrl=X$;var Q$=/^[a-z_][-a-z0-9._]*$/i;function eC(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=wo(t[r]||e),s={"":o},i=sx(n,o,!1),a={},c=new Set;return W$(t,{allKeys:!0},(l,f,m,p)=>{if(p===void 0)return;let h=i+f,g=s[p];typeof l[r]=="string"&&(g=_.call(this,l[r])),x.call(this,l.$anchor),x.call(this,l.$dynamicAnchor),s[f]=g;function _(y){let S=this.opts.uriResolver.resolve;if(y=wo(g?S(g,y):y),c.has(y))throw d(y);c.add(y);let E=this.refs[y];return typeof E=="string"&&(E=this.refs[E]),typeof E=="object"?u(l,E.schema,y):y!==wo(h)&&(y[0]==="#"?(u(l,a[y],y),a[y]=l):this.refs[y]=h),y}function x(y){if(typeof y=="string"){if(!Q$.test(y))throw new Error(`invalid anchor "${y}"`);_.call(this,`#${y}`)}}}),a;function u(l,f,m){if(f!==void 0&&!V$(l,f))throw d(m)}function d(l){return new Error(`reference "${l}" resolves to more than one schema`)}}pt.getSchemaRefs=eC});var Us=$(Gr=>{"use strict";Object.defineProperty(Gr,"__esModule",{value:!0});Gr.getData=Gr.KeywordCxt=Gr.validateFunctionCode=void 0;var dx=U_(),ax=Ms(),wp=hp(),Ma=Ms(),tC=W_(),Ls=X_(),Ep=ex(),H=X(),K=kr(),rC=js(),Er=ce(),zs=Ds();function nC(t){if(mx(t)&&(hx(t),fx(t))){iC(t);return}px(t,()=>(0,dx.topBoolOrEmptySchema)(t))}Gr.validateFunctionCode=nC;function px({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,H._)`${K.default.data}, ${K.default.valCxt}`,n.$async,()=>{t.code((0,H._)`"use strict"; ${cx(r,o)}`),sC(t,o),t.code(s)}):t.func(e,(0,H._)`${K.default.data}, ${oC(o)}`,n.$async,()=>t.code(cx(r,o)).code(s))}function oC(t){return(0,H._)`{${K.default.instancePath}="", ${K.default.parentData}, ${K.default.parentDataProperty}, ${K.default.rootData}=${K.default.data}${t.dynamicRef?(0,H._)`, ${K.default.dynamicAnchors}={}`:H.nil}}={}`}function sC(t,e){t.if(K.default.valCxt,()=>{t.var(K.default.instancePath,(0,H._)`${K.default.valCxt}.${K.default.instancePath}`),t.var(K.default.parentData,(0,H._)`${K.default.valCxt}.${K.default.parentData}`),t.var(K.default.parentDataProperty,(0,H._)`${K.default.valCxt}.${K.default.parentDataProperty}`),t.var(K.default.rootData,(0,H._)`${K.default.valCxt}.${K.default.rootData}`),e.dynamicRef&&t.var(K.default.dynamicAnchors,(0,H._)`${K.default.valCxt}.${K.default.dynamicAnchors}`)},()=>{t.var(K.default.instancePath,(0,H._)`""`),t.var(K.default.parentData,(0,H._)`undefined`),t.var(K.default.parentDataProperty,(0,H._)`undefined`),t.var(K.default.rootData,K.default.data),e.dynamicRef&&t.var(K.default.dynamicAnchors,(0,H._)`{}`)})}function iC(t){let{schema:e,opts:r,gen:n}=t;px(t,()=>{r.$comment&&e.$comment&&yx(t),dC(t),n.let(K.default.vErrors,null),n.let(K.default.errors,0),r.unevaluated&&aC(t),gx(t),mC(t)})}function aC(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,H._)`${r}.evaluated`),e.if((0,H._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,H._)`${t.evaluated}.props`,(0,H._)`undefined`)),e.if((0,H._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,H._)`${t.evaluated}.items`,(0,H._)`undefined`))}function cx(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,H._)`/*# sourceURL=${r} */`:H.nil}function cC(t,e){if(mx(t)&&(hx(t),fx(t))){uC(t,e);return}(0,dx.boolOrEmptySchema)(t,e)}function fx({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 mx(t){return typeof t.schema!="boolean"}function uC(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&yx(t),pC(t),fC(t);let s=n.const("_errs",K.default.errors);gx(t,s),n.var(e,(0,H._)`${s} === ${K.default.errors}`)}function hx(t){(0,Er.checkUnknownRules)(t),lC(t)}function gx(t,e){if(t.opts.jtd)return ux(t,[],!1,e);let r=(0,ax.getSchemaTypes)(t.schema),n=(0,ax.coerceAndCheckDataType)(t,r);ux(t,r,!n,e)}function lC(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Er.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function dC(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Er.checkStrictMode)(t,"default is ignored in the schema root")}function pC(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,rC.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function fC(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function yx({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,H._)`${K.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,H.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,H._)`${K.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function mC(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,H._)`${K.default.errors} === 0`,()=>e.return(K.default.data),()=>e.throw((0,H._)`new ${o}(${K.default.vErrors})`)):(e.assign((0,H._)`${n}.errors`,K.default.vErrors),s.unevaluated&&hC(t),e.return((0,H._)`${K.default.errors} === 0`))}function hC({gen:t,evaluated:e,props:r,items:n}){r instanceof H.Name&&t.assign((0,H._)`${e}.props`,r),n instanceof H.Name&&t.assign((0,H._)`${e}.items`,n)}function ux(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:d}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Er.schemaHasRulesButRef)(s,d))){o.block(()=>xx(t,"$ref",d.all.$ref.definition));return}c.jtd||gC(t,e),o.block(()=>{for(let f of d.rules)l(f);l(d.post)});function l(f){(0,wp.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Ma.checkDataType)(f.type,i,c.strictNumbers)),lx(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,Ma.reportTypeError)(t)),o.endIf()):lx(t,f),a||o.if((0,H._)`${K.default.errors} === ${n||0}`))}}function lx(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,tC.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,wp.shouldUseRule)(n,s)&&xx(t,s.keyword,s.definition,e.type)})}function gC(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(yC(t,e),t.opts.allowUnionTypes||_C(t,e),xC(t,t.dataTypes))}function yC(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{_x(t.dataTypes,r)||Tp(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),bC(t,e)}}function _C(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Tp(t,"use allowUnionTypes to allow union type keyword")}function xC(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,wp.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>vC(e,i))&&Tp(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function vC(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function _x(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function bC(t,e){let r=[];for(let n of t.dataTypes)_x(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Tp(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Er.checkStrictMode)(t,e,t.opts.strictTypes)}var ja=class{constructor(e,r,n){if((0,Ls.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,Er.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",vx(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Ls.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",K.default.errors))}result(e,r,n){this.failResult((0,H.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,H.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,H._)`${r} !== undefined && (${(0,H.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?zs.reportExtraError:zs.reportError)(this,this.def.error,r)}$dataError(){(0,zs.reportError)(this,this.def.$dataError||zs.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,zs.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=H.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=H.nil,r=H.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,H.or)((0,H._)`${o} === undefined`,r)),e!==H.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==H.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,H.or)(i(),a());function i(){if(n.length){if(!(r instanceof H.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,H._)`${(0,Ma.checkDataTypes)(c,r,s.opts.strictNumbers,Ma.DataType.Wrong)}`}return H.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,H._)`!${c}(${r})`}return H.nil}}subschema(e,r){let n=(0,Ep.getSubschema)(this.it,e);(0,Ep.extendSubschemaData)(n,this.it,e),(0,Ep.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return cC(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Er.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Er.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,H.Name)),!0}};Gr.KeywordCxt=ja;function xx(t,e,r,n){let o=new ja(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Ls.funcKeywordCode)(o,r):"macro"in r?(0,Ls.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Ls.funcKeywordCode)(o,r)}var SC=/^\/(?:[^~]|~0|~1)*$/,kC=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function vx(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return K.default.rootData;if(t[0]==="/"){if(!SC.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=K.default.rootData}else{let u=kC.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let d=+u[1];if(o=u[2],o==="#"){if(d>=e)throw new Error(c("property/index",d));return n[e-d]}if(d>e)throw new Error(c("data",d));if(s=r[e-d],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,H._)`${s}${(0,H.getProperty)((0,Er.unescapeJsonPointer)(u))}`,i=(0,H._)`${i} && ${s}`);return i;function c(u,d){return`Cannot access ${u} ${d} levels up, current level is ${e}`}}Gr.getData=vx});var za=$(Rp=>{"use strict";Object.defineProperty(Rp,"__esModule",{value:!0});var Pp=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Rp.default=Pp});var Hs=$(Op=>{"use strict";Object.defineProperty(Op,"__esModule",{value:!0});var $p=js(),Cp=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,$p.resolveUrl)(e,r,n),this.missingSchema=(0,$p.normalizeId)((0,$p.getFullPath)(e,this.missingRef))}};Op.default=Cp});var Ua=$(Ot=>{"use strict";Object.defineProperty(Ot,"__esModule",{value:!0});Ot.resolveSchema=Ot.getCompilingSchema=Ot.resolveRef=Ot.compileSchema=Ot.SchemaEnv=void 0;var Wt=X(),EC=za(),An=kr(),Kt=js(),bx=ce(),wC=Us(),To=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={}}};Ot.SchemaEnv=To;function Ap(t){let e=Sx.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 Wt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:EC.default,code:(0,Wt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:An.default.data,parentData:An.default.parentData,parentDataProperty:An.default.parentDataProperty,dataNames:[An.default.data],dataPathArr:[Wt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Wt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Wt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Wt._)`""`,opts:this.opts,self:this},d;try{this._compilations.add(t),(0,wC.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let l=i.toString();d=`${i.scopeRefs(An.default.scope)}return ${l}`,this.opts.code.process&&(d=this.opts.code.process(d,t));let m=new Function(`${An.default.self}`,`${An.default.scope}`,d)(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:l,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof Wt.Name?void 0:p,items:h instanceof Wt.Name?void 0:h,dynamicProps:p instanceof Wt.Name,dynamicItems:h instanceof Wt.Name},m.source&&(m.source.evaluated=(0,Wt.stringify)(m.evaluated))}return t.validate=m,t}catch(l){throw delete t.validate,delete t.validateName,d&&this.logger.error("Error compiling schema, function code:",d),l}finally{this._compilations.delete(t)}}Ot.compileSchema=Ap;function TC(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=$C.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 To({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=PC.call(this,s)}Ot.resolveRef=TC;function PC(t){return(0,Kt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Ap.call(this,t)}function Sx(t){for(let e of this._compilations)if(RC(e,t))return e}Ot.getCompilingSchema=Sx;function RC(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function $C(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||La.call(this,t,e)}function La(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 Ip.call(this,r,t);let s=(0,Kt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=La.call(this,t,i);return typeof a?.schema!="object"?void 0:Ip.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Ap.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 To({schema:a,schemaId:c,root:t,baseId:o})}return Ip.call(this,r,i)}}Ot.resolveSchema=La;var CC=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Ip(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,bx.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!CC.has(a)&&u&&(e=(0,Kt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,bx.schemaHasRulesButRef)(r,this.RULES)){let a=(0,Kt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=La.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new To({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var kx=$((BF,OC)=>{OC.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 Dp=$((qF,Px)=>{"use strict";var IC=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),wx=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 Np(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 AC=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Ex(t){return t.length=0,!0}function NC(t,e,r){if(t.length){let n=Np(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function DC(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=NC;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=Ex}else{o.push(u);continue}}return o.length&&(a===Ex?r.zone=o.join(""):i?n.push(o.join("")):n.push(Np(o))),r.address=n.join(""),r}function Tx(t){if(MC(t,":")<2)return{host:t,isIPV6:!1};let e=DC(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 MC(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function jC(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 zC(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 LC(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!wx(r)){let n=Tx(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}Px.exports={nonSimpleDomain:AC,recomposeAuthority:LC,normalizeComponentEncoding:zC,removeDotSegments:jC,isIPv4:wx,isUUID:IC,normalizeIPv6:Tx,stringArrayToHexStripped:Np}});var Ix=$((VF,Ox)=>{"use strict";var{isUUID:UC}=Dp(),HC=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,FC=["http","https","ws","wss","urn","urn:uuid"];function ZC(t){return FC.indexOf(t)!==-1}function Mp(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 Rx(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function $x(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 BC(t){return t.secure=Mp(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function qC(t){if((t.port===(Mp(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 VC(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(HC);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=jp(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function WC(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=jp(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 KC(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!UC(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function GC(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Cx={scheme:"http",domainHost:!0,parse:Rx,serialize:$x},JC={scheme:"https",domainHost:Cx.domainHost,parse:Rx,serialize:$x},Ha={scheme:"ws",domainHost:!0,parse:BC,serialize:qC},YC={scheme:"wss",domainHost:Ha.domainHost,parse:Ha.parse,serialize:Ha.serialize},XC={scheme:"urn",parse:VC,serialize:WC,skipNormalize:!0},QC={scheme:"urn:uuid",parse:KC,serialize:GC,skipNormalize:!0},Fa={http:Cx,https:JC,ws:Ha,wss:YC,urn:XC,"urn:uuid":QC};Object.setPrototypeOf(Fa,null);function jp(t){return t&&(Fa[t]||Fa[t.toLowerCase()])||void 0}Ox.exports={wsIsSecure:Mp,SCHEMES:Fa,isValidSchemeName:ZC,getSchemeHandler:jp}});var Dx=$((WF,Ba)=>{"use strict";var{normalizeIPv6:eO,removeDotSegments:Fs,recomposeAuthority:tO,normalizeComponentEncoding:Za,isIPv4:rO,nonSimpleDomain:nO}=Dp(),{SCHEMES:oO,getSchemeHandler:Ax}=Ix();function sO(t,e){return typeof t=="string"?t=lr(wr(t,e),e):typeof t=="object"&&(t=wr(lr(t,e),e)),t}function iO(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Nx(wr(t,n),wr(e,n),n,!0);return n.skipEscape=!0,lr(o,n)}function Nx(t,e,r,n){let o={};return n||(t=wr(lr(t,r),r),e=wr(lr(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=Fs(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=Fs(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Fs(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=Fs(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 aO(t,e,r){return typeof t=="string"?(t=unescape(t),t=lr(Za(wr(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=lr(Za(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=lr(Za(wr(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=lr(Za(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function lr(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=Ax(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=tO(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=Fs(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 cO=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function wr(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(cO);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(rO(n.host)===!1){let c=eO(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=Ax(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&nO(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 zp={SCHEMES:oO,normalize:sO,resolve:iO,resolveComponent:Nx,equal:aO,serialize:lr,parse:wr};Ba.exports=zp;Ba.exports.default=zp;Ba.exports.fastUri=zp});var jx=$(Lp=>{"use strict";Object.defineProperty(Lp,"__esModule",{value:!0});var Mx=Dx();Mx.code='require("ajv/dist/runtime/uri").default';Lp.default=Mx});var qx=$(Ve=>{"use strict";Object.defineProperty(Ve,"__esModule",{value:!0});Ve.CodeGen=Ve.Name=Ve.nil=Ve.stringify=Ve.str=Ve._=Ve.KeywordCxt=void 0;var uO=Us();Object.defineProperty(Ve,"KeywordCxt",{enumerable:!0,get:function(){return uO.KeywordCxt}});var Po=X();Object.defineProperty(Ve,"_",{enumerable:!0,get:function(){return Po._}});Object.defineProperty(Ve,"str",{enumerable:!0,get:function(){return Po.str}});Object.defineProperty(Ve,"stringify",{enumerable:!0,get:function(){return Po.stringify}});Object.defineProperty(Ve,"nil",{enumerable:!0,get:function(){return Po.nil}});Object.defineProperty(Ve,"Name",{enumerable:!0,get:function(){return Po.Name}});Object.defineProperty(Ve,"CodeGen",{enumerable:!0,get:function(){return Po.CodeGen}});var lO=za(),Fx=Hs(),dO=mp(),Zs=Ua(),pO=X(),Bs=js(),qa=Ms(),Hp=ce(),zx=kx(),fO=jx(),Zx=(t,e)=>new RegExp(t,e);Zx.code="new RegExp";var mO=["removeAdditional","useDefaults","coerceTypes"],hO=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),gO={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."},yO={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Lx=200;function _O(t){var e,r,n,o,s,i,a,c,u,d,l,f,m,p,h,g,_,x,y,S,E,O,L,A,z;let w=t.strict,P=(e=t.code)===null||e===void 0?void 0:e.optimize,N=P===!0||P===void 0?1:P||0,Q=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Zx,nr=(o=t.uriResolver)!==null&&o!==void 0?o:fO.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:w)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:w)!==null&&c!==void 0?c:!0,strictTypes:(d=(u=t.strictTypes)!==null&&u!==void 0?u:w)!==null&&d!==void 0?d:"log",strictTuples:(f=(l=t.strictTuples)!==null&&l!==void 0?l:w)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:w)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:N,regExp:Q}:{optimize:N,regExp:Q},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Lx,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:Lx,meta:(_=t.meta)!==null&&_!==void 0?_:!0,messages:(x=t.messages)!==null&&x!==void 0?x:!0,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(S=t.schemaId)!==null&&S!==void 0?S:"$id",addUsedSchema:(E=t.addUsedSchema)!==null&&E!==void 0?E:!0,validateSchema:(O=t.validateSchema)!==null&&O!==void 0?O:!0,validateFormats:(L=t.validateFormats)!==null&&L!==void 0?L:!0,unicodeRegExp:(A=t.unicodeRegExp)!==null&&A!==void 0?A:!0,int32range:(z=t.int32range)!==null&&z!==void 0?z:!0,uriResolver:nr}}var qs=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,..._O(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new pO.ValueScope({scope:{},prefixes:hO,es5:r,lines:n}),this.logger=EO(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,dO.getRules)(),Ux.call(this,gO,e,"NOT SUPPORTED"),Ux.call(this,yO,e,"DEPRECATED","warn"),this._metaOpts=SO.call(this),e.formats&&vO.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&bO.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),xO.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=zx;n==="id"&&(o={...zx},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(d,l){await s.call(this,d.$schema);let f=this._addSchema(d,l);return f.validate||i.call(this,f)}async function s(d){d&&!this.getSchema(d)&&await o.call(this,{$ref:d},!0)}async function i(d){try{return this._compileSchemaEnv(d)}catch(l){if(!(l instanceof Fx.default))throw l;return a.call(this,l),await c.call(this,l.missingSchema),i.call(this,d)}}function a({missingSchema:d,missingRef:l}){if(this.refs[d])throw new Error(`AnySchema ${d} is loaded but ${l} cannot be resolved`)}async function c(d){let l=await u.call(this,d);this.refs[d]||await s.call(this,l.$schema),this.refs[d]||this.addSchema(l,d,r)}async function u(d){let l=this._loading[d];if(l)return l;try{return await(this._loading[d]=n(d))}finally{delete this._loading[d]}}}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,Bs.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=Hx.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Zs.SchemaEnv({schema:{},schemaId:n});if(r=Zs.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=Hx.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,Bs.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(TO.call(this,n,r),!r)return(0,Hp.eachItem)(n,s=>Up.call(this,s)),this;RO.call(this,r);let o={...r,type:(0,qa.getJSONTypes)(r.type),schemaType:(0,qa.getJSONTypes)(r.schemaType)};return(0,Hp.eachItem)(n,o.type.length===0?s=>Up.call(this,s,o):s=>o.type.forEach(i=>Up.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,d=i[a];u&&d&&(i[a]=Bx(d))}}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,Bs.normalizeId)(i||n);let u=Bs.getSchemaRefs.call(this,e,n);return c=new Zs.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):Zs.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{Zs.compileSchema.call(this,e)}finally{this.opts=r}}};qs.ValidationError=lO.default;qs.MissingRefError=Fx.default;Ve.default=qs;function Ux(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 Hx(t){return t=(0,Bs.normalizeId)(t),this.schemas[t]||this.refs[t]}function xO(){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 vO(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function bO(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 SO(){let t={...this.opts};for(let e of mO)delete t[e];return t}var kO={log(){},warn(){},error(){}};function EO(t){if(t===!1)return kO;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 wO=/^[a-z_$][a-z0-9_$:-]*$/i;function TO(t,e){let{RULES:r}=this;if((0,Hp.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!wO.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 Up(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,qa.getJSONTypes)(e.type),schemaType:(0,qa.getJSONTypes)(e.schemaType)}};e.before?PO.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 PO(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 RO(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Bx(e)),t.validateSchema=this.compile(e,!0))}var $O={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Bx(t){return{anyOf:[t,$O]}}});var Vx=$(Fp=>{"use strict";Object.defineProperty(Fp,"__esModule",{value:!0});var CO={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Fp.default=CO});var Jx=$(Nn=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.callRef=Nn.getValidate=void 0;var OO=Hs(),Wx=Ct(),ft=X(),Ro=kr(),Kx=Ua(),Va=ce(),IO={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 l();let d=Kx.resolveRef.call(c,u,o,r);if(d===void 0)throw new OO.default(n.opts.uriResolver,o,r);if(d instanceof Kx.SchemaEnv)return f(d);return m(d);function l(){if(s===u)return Wa(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Wa(t,(0,ft._)`${p}.validate`,u,u.$async)}function f(p){let h=Gx(t,p);Wa(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,ft.stringify)(p)}:{ref:p}),g=e.name("valid"),_=t.subschema({schema:p,dataTypes:[],schemaPath:ft.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(_),t.ok(g)}}};function Gx(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,ft._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Nn.getValidate=Gx;function Wa(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Ro.default.this:ft.nil;n?d():l();function d(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,ft._)`await ${(0,Wx.callValidateCode)(t,e,u)}`),m(e),i||o.assign(p,!0)},h=>{o.if((0,ft._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),f(h),i||o.assign(p,!1)}),t.ok(p)}function l(){t.result((0,Wx.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,ft._)`${p}.errors`;o.assign(Ro.default.vErrors,(0,ft._)`${Ro.default.vErrors} === null ? ${h} : ${Ro.default.vErrors}.concat(${h})`),o.assign(Ro.default.errors,(0,ft._)`${Ro.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=Va.mergeEvaluated.props(o,g.props,s.props));else{let _=o.var("props",(0,ft._)`${p}.evaluated.props`);s.props=Va.mergeEvaluated.props(o,_,s.props,ft.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Va.mergeEvaluated.items(o,g.items,s.items));else{let _=o.var("items",(0,ft._)`${p}.evaluated.items`);s.items=Va.mergeEvaluated.items(o,_,s.items,ft.Name)}}}Nn.callRef=Wa;Nn.default=IO});var Yx=$(Zp=>{"use strict";Object.defineProperty(Zp,"__esModule",{value:!0});var AO=Vx(),NO=Jx(),DO=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",AO.default,NO.default];Zp.default=DO});var Xx=$(Bp=>{"use strict";Object.defineProperty(Bp,"__esModule",{value:!0});var Ka=X(),Jr=Ka.operators,Ga={maximum:{okStr:"<=",ok:Jr.LTE,fail:Jr.GT},minimum:{okStr:">=",ok:Jr.GTE,fail:Jr.LT},exclusiveMaximum:{okStr:"<",ok:Jr.LT,fail:Jr.GTE},exclusiveMinimum:{okStr:">",ok:Jr.GT,fail:Jr.LTE}},MO={message:({keyword:t,schemaCode:e})=>(0,Ka.str)`must be ${Ga[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ka._)`{comparison: ${Ga[t].okStr}, limit: ${e}}`},jO={keyword:Object.keys(Ga),type:"number",schemaType:"number",$data:!0,error:MO,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Ka._)`${r} ${Ga[e].fail} ${n} || isNaN(${r})`)}};Bp.default=jO});var Qx=$(qp=>{"use strict";Object.defineProperty(qp,"__esModule",{value:!0});var Vs=X(),zO={message:({schemaCode:t})=>(0,Vs.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Vs._)`{multipleOf: ${t}}`},LO={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:zO,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Vs._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Vs._)`${i} !== parseInt(${i})`;t.fail$data((0,Vs._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};qp.default=LO});var tv=$(Vp=>{"use strict";Object.defineProperty(Vp,"__esModule",{value:!0});function ev(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}Vp.default=ev;ev.code='require("ajv/dist/runtime/ucs2length").default'});var rv=$(Wp=>{"use strict";Object.defineProperty(Wp,"__esModule",{value:!0});var Dn=X(),UO=ce(),HO=tv(),FO={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Dn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Dn._)`{limit: ${t}}`},ZO={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:FO,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?Dn.operators.GT:Dn.operators.LT,i=o.opts.unicode===!1?(0,Dn._)`${r}.length`:(0,Dn._)`${(0,UO.useFunc)(t.gen,HO.default)}(${r})`;t.fail$data((0,Dn._)`${i} ${s} ${n}`)}};Wp.default=ZO});var nv=$(Kp=>{"use strict";Object.defineProperty(Kp,"__esModule",{value:!0});var BO=Ct(),qO=ce(),$o=X(),VO={message:({schemaCode:t})=>(0,$o.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,$o._)`{pattern: ${t}}`},WO={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:VO,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,$o._)`new RegExp`:(0,qO.useFunc)(e,c),d=e.let("valid");e.try(()=>e.assign(d,(0,$o._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(d,!1)),t.fail$data((0,$o._)`!${d}`)}else{let c=(0,BO.usePattern)(t,o);t.fail$data((0,$o._)`!${c}.test(${r})`)}}};Kp.default=WO});var ov=$(Gp=>{"use strict";Object.defineProperty(Gp,"__esModule",{value:!0});var Ws=X(),KO={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Ws.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Ws._)`{limit: ${t}}`},GO={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:KO,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Ws.operators.GT:Ws.operators.LT;t.fail$data((0,Ws._)`Object.keys(${r}).length ${o} ${n}`)}};Gp.default=GO});var sv=$(Jp=>{"use strict";Object.defineProperty(Jp,"__esModule",{value:!0});var Ks=Ct(),Gs=X(),JO=ce(),YO={message:({params:{missingProperty:t}})=>(0,Gs.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Gs._)`{missingProperty: ${t}}`},XO={keyword:"required",type:"object",schemaType:"array",$data:!0,error:YO,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():d(),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,JO.checkStrictMode)(i,_,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(Gs.nil,l);else for(let m of r)(0,Ks.checkReportMissingProp)(t,m)}function d(){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,Ks.checkMissingProp)(t,r,m)),(0,Ks.reportMissingProp)(t,m),e.else()}function l(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,Ks.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,Ks.propertyInData)(e,o,m,a.ownProperties)),e.if((0,Gs.not)(p),()=>{t.error(),e.break()})},Gs.nil)}}};Jp.default=XO});var iv=$(Yp=>{"use strict";Object.defineProperty(Yp,"__esModule",{value:!0});var Js=X(),QO={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Js.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Js._)`{limit: ${t}}`},eI={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:QO,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?Js.operators.GT:Js.operators.LT;t.fail$data((0,Js._)`${r}.length ${o} ${n}`)}};Yp.default=eI});var Ja=$(Xp=>{"use strict";Object.defineProperty(Xp,"__esModule",{value:!0});var av=Sp();av.code='require("ajv/dist/runtime/equal").default';Xp.default=av});var cv=$(ef=>{"use strict";Object.defineProperty(ef,"__esModule",{value:!0});var Qp=Ms(),We=X(),tI=ce(),rI=Ja(),nI={message:({params:{i:t,j:e}})=>(0,We.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,We._)`{i: ${t}, j: ${e}}`},oI={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:nI,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,Qp.getSchemaTypes)(s.items):[];t.block$data(c,d,(0,We._)`${i} === false`),t.ok(c);function d(){let p=e.let("i",(0,We._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,We._)`${p} > 1`,()=>(l()?f:m)(p,h))}function l(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,h){let g=e.name("item"),_=(0,Qp.checkDataTypes)(u,g,a.opts.strictNumbers,Qp.DataType.Wrong),x=e.const("indices",(0,We._)`{}`);e.for((0,We._)`;${p}--;`,()=>{e.let(g,(0,We._)`${r}[${p}]`),e.if(_,(0,We._)`continue`),u.length>1&&e.if((0,We._)`typeof ${g} == "string"`,(0,We._)`${g} += "_"`),e.if((0,We._)`typeof ${x}[${g}] == "number"`,()=>{e.assign(h,(0,We._)`${x}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,We._)`${x}[${g}] = ${p}`)})}function m(p,h){let g=(0,tI.useFunc)(e,rI.default),_=e.name("outer");e.label(_).for((0,We._)`;${p}--;`,()=>e.for((0,We._)`${h} = ${p}; ${h}--;`,()=>e.if((0,We._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(_)})))}}};ef.default=oI});var uv=$(rf=>{"use strict";Object.defineProperty(rf,"__esModule",{value:!0});var tf=X(),sI=ce(),iI=Ja(),aI={message:"must be equal to constant",params:({schemaCode:t})=>(0,tf._)`{allowedValue: ${t}}`},cI={keyword:"const",$data:!0,error:aI,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,tf._)`!${(0,sI.useFunc)(e,iI.default)}(${r}, ${o})`):t.fail((0,tf._)`${s} !== ${r}`)}};rf.default=cI});var lv=$(nf=>{"use strict";Object.defineProperty(nf,"__esModule",{value:!0});var Ys=X(),uI=ce(),lI=Ja(),dI={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Ys._)`{allowedValues: ${t}}`},pI={keyword:"enum",schemaType:"array",$data:!0,error:dI,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,uI.useFunc)(e,lI.default)),d;if(a||n)d=e.let("valid"),t.block$data(d,l);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let m=e.const("vSchema",s);d=(0,Ys.or)(...o.map((p,h)=>f(m,h)))}t.pass(d);function l(){e.assign(d,!1),e.forOf("v",s,m=>e.if((0,Ys._)`${u()}(${r}, ${m})`,()=>e.assign(d,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,Ys._)`${u()}(${r}, ${m}[${p}])`:(0,Ys._)`${r} === ${h}`}}};nf.default=pI});var dv=$(of=>{"use strict";Object.defineProperty(of,"__esModule",{value:!0});var fI=Xx(),mI=Qx(),hI=rv(),gI=nv(),yI=ov(),_I=sv(),xI=iv(),vI=cv(),bI=uv(),SI=lv(),kI=[fI.default,mI.default,hI.default,gI.default,yI.default,_I.default,xI.default,vI.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},bI.default,SI.default];of.default=kI});var af=$(Xs=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});Xs.validateAdditionalItems=void 0;var Mn=X(),sf=ce(),EI={message:({params:{len:t}})=>(0,Mn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Mn._)`{limit: ${t}}`},wI={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:EI,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,sf.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}pv(t,n)}};function pv(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Mn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Mn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,sf.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Mn._)`${a} <= ${e.length}`);r.if((0,Mn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,d=>{t.subschema({keyword:s,dataProp:d,dataPropType:sf.Type.Num},u),i.allErrors||r.if((0,Mn.not)(u),()=>r.break())})}}Xs.validateAdditionalItems=pv;Xs.default=wI});var cf=$(Qs=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});Qs.validateTuple=void 0;var fv=X(),Ya=ce(),TI=Ct(),PI={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return mv(t,"additionalItems",e);r.items=!0,!(0,Ya.alwaysValidSchema)(r,e)&&t.ok((0,TI.validateArray)(t))}};function mv(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;d(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Ya.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,fv._)`${s}.length`);r.forEach((l,f)=>{(0,Ya.alwaysValidSchema)(a,l)||(n.if((0,fv._)`${u} > ${f}`,()=>t.subschema({keyword:i,schemaProp:f,dataProp:f},c)),t.ok(c))});function d(l){let{opts:f,errSchemaPath:m}=a,p=r.length,h=p===l.minItems&&(p===l.maxItems||l[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,Ya.checkStrictMode)(a,g,f.strictTuples)}}}Qs.validateTuple=mv;Qs.default=PI});var hv=$(uf=>{"use strict";Object.defineProperty(uf,"__esModule",{value:!0});var RI=cf(),$I={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,RI.validateTuple)(t,"items")};uf.default=$I});var yv=$(lf=>{"use strict";Object.defineProperty(lf,"__esModule",{value:!0});var gv=X(),CI=ce(),OI=Ct(),II=af(),AI={message:({params:{len:t}})=>(0,gv.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,gv._)`{limit: ${t}}`},NI={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:AI,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,CI.alwaysValidSchema)(n,e)&&(o?(0,II.validateAdditionalItems)(t,o):t.ok((0,OI.validateArray)(t)))}};lf.default=NI});var _v=$(df=>{"use strict";Object.defineProperty(df,"__esModule",{value:!0});var It=X(),Xa=ce(),DI={message:({params:{min:t,max:e}})=>e===void 0?(0,It.str)`must contain at least ${t} valid item(s)`:(0,It.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,It._)`{minContains: ${t}}`:(0,It._)`{minContains: ${t}, maxContains: ${e}}`},MI={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:DI,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 d=e.const("len",(0,It._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Xa.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Xa.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Xa.alwaysValidSchema)(s,r)){let h=(0,It._)`${d} >= ${i}`;a!==void 0&&(h=(0,It._)`${h} && ${d} <= ${a}`),t.pass(h);return}s.items=!0;let l=e.name("valid");a===void 0&&i===1?m(l,()=>e.if(l,()=>e.break())):i===0?(e.let(l,!0),a!==void 0&&e.if((0,It._)`${o}.length > 0`,f)):(e.let(l,!1),f()),t.result(l,()=>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,d,_=>{t.subschema({keyword:"contains",dataProp:_,dataPropType:Xa.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,It._)`${h}++`),a===void 0?e.if((0,It._)`${h} >= ${i}`,()=>e.assign(l,!0).break()):(e.if((0,It._)`${h} > ${a}`,()=>e.assign(l,!1).break()),i===1?e.assign(l,!0):e.if((0,It._)`${h} >= ${i}`,()=>e.assign(l,!0)))}}};df.default=MI});var bv=$(dr=>{"use strict";Object.defineProperty(dr,"__esModule",{value:!0});dr.validateSchemaDeps=dr.validatePropertyDeps=dr.error=void 0;var pf=X(),jI=ce(),ei=Ct();dr.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,pf.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,pf._)`{property: ${t},
|
|
6
|
+
|| ${i} === "boolean" || ${o} === null`).assign(a,(0,J._)`[${o}]`)}}}function y$({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,J._)`${e} !== undefined`,()=>t.assign((0,J._)`${e}[${r}]`,n))}function gp(t,e,r,n=ko.Correct){let o=n===ko.Correct?J.operators.EQ:J.operators.NEQ,s;switch(t){case"null":return(0,J._)`${e} ${o} null`;case"array":s=(0,J._)`Array.isArray(${e})`;break;case"object":s=(0,J._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,J._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,J._)`typeof ${e} ${o} ${t}`}return n===ko.Correct?s:(0,J.not)(s);function i(a=J.nil){return(0,J.and)((0,J._)`typeof ${e} == "number"`,a,r?(0,J._)`isFinite(${e})`:J.nil)}}et.checkDataType=gp;function yp(t,e,r,n){if(t.length===1)return gp(t[0],e,r,n);let o,s=(0,Z_.toHash)(t);if(s.array&&s.object){let i=(0,J._)`typeof ${e} != "object"`;o=s.null?i:(0,J._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=J.nil;s.number&&delete s.integer;for(let i in s)o=(0,J.and)(o,gp(i,e,r,n));return o}et.checkDataTypes=yp;var _$={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,J._)`{type: ${t}}`:(0,J._)`{type: ${e}}`};function _p(t){let e=x$(t);(0,p$.reportError)(e,_$)}et.reportTypeError=_p;function x$(t){let{gen:e,data:r,schema:n}=t,o=(0,Z_.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var W_=$(Na=>{"use strict";Object.defineProperty(Na,"__esModule",{value:!0});Na.assignDefaults=void 0;var Eo=X(),v$=ce();function b$(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)V_(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>V_(t,s,o.default))}Na.assignDefaults=b$;function V_(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Eo._)`${s}${(0,Eo.getProperty)(e)}`;if(o){(0,v$.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Eo._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Eo._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Eo._)`${a} = ${(0,Eo.stringify)(r)}`)}});var Ct=$(me=>{"use strict";Object.defineProperty(me,"__esModule",{value:!0});me.validateUnion=me.validateArray=me.usePattern=me.callValidateCode=me.schemaProperties=me.allSchemaProperties=me.noPropertyInData=me.propertyInData=me.isOwnProperty=me.hasPropFunc=me.reportMissingProp=me.checkMissingProp=me.checkReportMissingProp=void 0;var ke=X(),xp=ce(),qr=Sr(),S$=ce();function k$(t,e){let{gen:r,data:n,it:o}=t;r.if(bp(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,ke._)`${e}`},!0),t.error()})}me.checkReportMissingProp=k$;function E$({gen:t,data:e,it:{opts:r}},n,o){return(0,ke.or)(...n.map(s=>(0,ke.and)(bp(t,e,s,r.ownProperties),(0,ke._)`${o} = ${s}`)))}me.checkMissingProp=E$;function w$(t,e){t.setParams({missingProperty:e},!0),t.error()}me.reportMissingProp=w$;function K_(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,ke._)`Object.prototype.hasOwnProperty`})}me.hasPropFunc=K_;function vp(t,e,r){return(0,ke._)`${K_(t)}.call(${e}, ${r})`}me.isOwnProperty=vp;function T$(t,e,r,n){let o=(0,ke._)`${e}${(0,ke.getProperty)(r)} !== undefined`;return n?(0,ke._)`${o} && ${vp(t,e,r)}`:o}me.propertyInData=T$;function bp(t,e,r,n){let o=(0,ke._)`${e}${(0,ke.getProperty)(r)} === undefined`;return n?(0,ke.or)(o,(0,ke.not)(vp(t,e,r))):o}me.noPropertyInData=bp;function G_(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}me.allSchemaProperties=G_;function P$(t,e){return G_(e).filter(r=>!(0,xp.alwaysValidSchema)(t,e[r]))}me.schemaProperties=P$;function R$({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let d=u?(0,ke._)`${t}, ${e}, ${n}${o}`:e,l=[[qr.default.instancePath,(0,ke.strConcat)(qr.default.instancePath,s)],[qr.default.parentData,i.parentData],[qr.default.parentDataProperty,i.parentDataProperty],[qr.default.rootData,qr.default.rootData]];i.opts.dynamicRef&&l.push([qr.default.dynamicAnchors,qr.default.dynamicAnchors]);let f=(0,ke._)`${d}, ${r.object(...l)}`;return c!==ke.nil?(0,ke._)`${a}.call(${c}, ${f})`:(0,ke._)`${a}(${f})`}me.callValidateCode=R$;var $$=(0,ke._)`new RegExp`;function C$({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,ke._)`${o.code==="new RegExp"?$$:(0,S$.useFunc)(t,o)}(${r}, ${n})`})}me.usePattern=C$;function O$(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,ke._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:xp.Type.Num},s),e.if((0,ke.not)(s),a)})}}me.validateArray=O$;function I$(t){let{gen:e,schema:r,keyword:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,xp.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let d=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,ke._)`${i} || ${a}`),t.mergeValidEvaluated(d,a)||e.if((0,ke.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}me.validateUnion=I$});var X_=$(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.validateKeywordUsage=cr.validSchemaType=cr.funcKeywordCode=cr.macroKeywordCode=void 0;var st=X(),In=Sr(),A$=Ct(),N$=Ds();function D$(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Y_(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:st.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}cr.macroKeywordCode=D$;function M$(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;z$(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,d=Y_(n,o,u),l=n.let("valid");t.block$data(l,f),t.ok((r=e.valid)!==null&&r!==void 0?r:l);function f(){if(e.errors===!1)h(),e.modifying&&J_(t),g(()=>t.error());else{let _=e.async?m():p();e.modifying&&J_(t),g(()=>j$(t,_))}}function m(){let _=n.let("ruleErrs",null);return n.try(()=>h((0,st._)`await `),x=>n.assign(l,!1).if((0,st._)`${x} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,st._)`${x}.errors`),()=>n.throw(x))),_}function p(){let _=(0,st._)`${d}.errors`;return n.assign(_,null),h(st.nil),_}function h(_=e.async?(0,st._)`await `:st.nil){let x=c.opts.passContext?In.default.this:In.default.self,y=!("compile"in e&&!a||e.schema===!1);n.assign(l,(0,st._)`${_}${(0,A$.callValidateCode)(t,d,x,y)}`,e.modifying)}function g(_){var x;n.if((0,st.not)((x=e.valid)!==null&&x!==void 0?x:l),_)}}cr.funcKeywordCode=M$;function J_(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,st._)`${n.parentData}[${n.parentDataProperty}]`))}function j$(t,e){let{gen:r}=t;r.if((0,st._)`Array.isArray(${e})`,()=>{r.assign(In.default.vErrors,(0,st._)`${In.default.vErrors} === null ? ${e} : ${In.default.vErrors}.concat(${e})`).assign(In.default.errors,(0,st._)`${In.default.vErrors}.length`),(0,N$.extendErrors)(t)},()=>t.error())}function z$({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Y_(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,st.stringify)(r)})}function L$(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}cr.validSchemaType=L$;function U$({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)}}cr.validateKeywordUsage=U$});var ex=$(Vr=>{"use strict";Object.defineProperty(Vr,"__esModule",{value:!0});Vr.extendSubschemaMode=Vr.extendSubschemaData=Vr.getSubschema=void 0;var ur=X(),Q_=ce();function H$(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,ur._)`${t.schemaPath}${(0,ur.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,ur._)`${t.schemaPath}${(0,ur.getProperty)(e)}${(0,ur.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Q_.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')}Vr.getSubschema=H$;function F$(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:d,opts:l}=e,f=a.let("data",(0,ur._)`${e.data}${(0,ur.getProperty)(r)}`,!0);c(f),t.errorPath=(0,ur.str)`${u}${(0,Q_.getErrorPath)(r,n,l.jsPropertySyntax)}`,t.parentDataProperty=(0,ur._)`${r}`,t.dataPathArr=[...d,t.parentDataProperty]}if(o!==void 0){let u=o instanceof ur.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]}}Vr.extendSubschemaData=F$;function Z$(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}Vr.extendSubschemaMode=Z$});var Sp=$((jF,tx)=>{"use strict";tx.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 nx=$((zF,rx)=>{"use strict";var Wr=rx.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(){};Da(e,n,o,t,"",t)};Wr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Wr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Wr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Wr.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 Da(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 d in n){var l=n[d];if(Array.isArray(l)){if(d in Wr.arrayKeywords)for(var f=0;f<l.length;f++)Da(t,e,r,l[f],o+"/"+d+"/"+f,s,o,d,n,f)}else if(d in Wr.propsKeywords){if(l&&typeof l=="object")for(var m in l)Da(t,e,r,l[m],o+"/"+d+"/"+B$(m),s,o,d,n,m)}else(d in Wr.keywords||t.allKeys&&!(d in Wr.skipKeywords))&&Da(t,e,r,l,o+"/"+d,s,o,d,n)}r(n,o,s,i,a,c,u)}}function B$(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var js=$(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.getSchemaRefs=pt.resolveUrl=pt.normalizeId=pt._getFullPath=pt.getFullPath=pt.inlineRef=void 0;var q$=ce(),V$=Sp(),W$=nx(),K$=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function G$(t,e=!0){return typeof t=="boolean"?!0:e===!0?!kp(t):e?ox(t)<=e:!1}pt.inlineRef=G$;var J$=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function kp(t){for(let e in t){if(J$.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(kp)||typeof r=="object"&&kp(r))return!0}return!1}function ox(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!K$.has(r)&&(typeof t[r]=="object"&&(0,q$.eachItem)(t[r],n=>e+=ox(n)),e===1/0))return 1/0}return e}function sx(t,e="",r){r!==!1&&(e=wo(e));let n=t.parse(e);return ix(t,n)}pt.getFullPath=sx;function ix(t,e){return t.serialize(e).split("#")[0]+"#"}pt._getFullPath=ix;var Y$=/#\/?$/;function wo(t){return t?t.replace(Y$,""):""}pt.normalizeId=wo;function X$(t,e,r){return r=wo(r),t.resolve(e,r)}pt.resolveUrl=X$;var Q$=/^[a-z_][-a-z0-9._]*$/i;function eC(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=wo(t[r]||e),s={"":o},i=sx(n,o,!1),a={},c=new Set;return W$(t,{allKeys:!0},(l,f,m,p)=>{if(p===void 0)return;let h=i+f,g=s[p];typeof l[r]=="string"&&(g=_.call(this,l[r])),x.call(this,l.$anchor),x.call(this,l.$dynamicAnchor),s[f]=g;function _(y){let S=this.opts.uriResolver.resolve;if(y=wo(g?S(g,y):y),c.has(y))throw d(y);c.add(y);let E=this.refs[y];return typeof E=="string"&&(E=this.refs[E]),typeof E=="object"?u(l,E.schema,y):y!==wo(h)&&(y[0]==="#"?(u(l,a[y],y),a[y]=l):this.refs[y]=h),y}function x(y){if(typeof y=="string"){if(!Q$.test(y))throw new Error(`invalid anchor "${y}"`);_.call(this,`#${y}`)}}}),a;function u(l,f,m){if(f!==void 0&&!V$(l,f))throw d(m)}function d(l){return new Error(`reference "${l}" resolves to more than one schema`)}}pt.getSchemaRefs=eC});var Us=$(Kr=>{"use strict";Object.defineProperty(Kr,"__esModule",{value:!0});Kr.getData=Kr.KeywordCxt=Kr.validateFunctionCode=void 0;var dx=U_(),ax=Ms(),wp=hp(),Ma=Ms(),tC=W_(),Ls=X_(),Ep=ex(),H=X(),K=Sr(),rC=js(),kr=ce(),zs=Ds();function nC(t){if(mx(t)&&(hx(t),fx(t))){iC(t);return}px(t,()=>(0,dx.topBoolOrEmptySchema)(t))}Kr.validateFunctionCode=nC;function px({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,H._)`${K.default.data}, ${K.default.valCxt}`,n.$async,()=>{t.code((0,H._)`"use strict"; ${cx(r,o)}`),sC(t,o),t.code(s)}):t.func(e,(0,H._)`${K.default.data}, ${oC(o)}`,n.$async,()=>t.code(cx(r,o)).code(s))}function oC(t){return(0,H._)`{${K.default.instancePath}="", ${K.default.parentData}, ${K.default.parentDataProperty}, ${K.default.rootData}=${K.default.data}${t.dynamicRef?(0,H._)`, ${K.default.dynamicAnchors}={}`:H.nil}}={}`}function sC(t,e){t.if(K.default.valCxt,()=>{t.var(K.default.instancePath,(0,H._)`${K.default.valCxt}.${K.default.instancePath}`),t.var(K.default.parentData,(0,H._)`${K.default.valCxt}.${K.default.parentData}`),t.var(K.default.parentDataProperty,(0,H._)`${K.default.valCxt}.${K.default.parentDataProperty}`),t.var(K.default.rootData,(0,H._)`${K.default.valCxt}.${K.default.rootData}`),e.dynamicRef&&t.var(K.default.dynamicAnchors,(0,H._)`${K.default.valCxt}.${K.default.dynamicAnchors}`)},()=>{t.var(K.default.instancePath,(0,H._)`""`),t.var(K.default.parentData,(0,H._)`undefined`),t.var(K.default.parentDataProperty,(0,H._)`undefined`),t.var(K.default.rootData,K.default.data),e.dynamicRef&&t.var(K.default.dynamicAnchors,(0,H._)`{}`)})}function iC(t){let{schema:e,opts:r,gen:n}=t;px(t,()=>{r.$comment&&e.$comment&&yx(t),dC(t),n.let(K.default.vErrors,null),n.let(K.default.errors,0),r.unevaluated&&aC(t),gx(t),mC(t)})}function aC(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,H._)`${r}.evaluated`),e.if((0,H._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,H._)`${t.evaluated}.props`,(0,H._)`undefined`)),e.if((0,H._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,H._)`${t.evaluated}.items`,(0,H._)`undefined`))}function cx(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,H._)`/*# sourceURL=${r} */`:H.nil}function cC(t,e){if(mx(t)&&(hx(t),fx(t))){uC(t,e);return}(0,dx.boolOrEmptySchema)(t,e)}function fx({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 mx(t){return typeof t.schema!="boolean"}function uC(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&yx(t),pC(t),fC(t);let s=n.const("_errs",K.default.errors);gx(t,s),n.var(e,(0,H._)`${s} === ${K.default.errors}`)}function hx(t){(0,kr.checkUnknownRules)(t),lC(t)}function gx(t,e){if(t.opts.jtd)return ux(t,[],!1,e);let r=(0,ax.getSchemaTypes)(t.schema),n=(0,ax.coerceAndCheckDataType)(t,r);ux(t,r,!n,e)}function lC(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,kr.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function dC(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,kr.checkStrictMode)(t,"default is ignored in the schema root")}function pC(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,rC.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function fC(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function yx({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,H._)`${K.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,H.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,H._)`${K.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function mC(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,H._)`${K.default.errors} === 0`,()=>e.return(K.default.data),()=>e.throw((0,H._)`new ${o}(${K.default.vErrors})`)):(e.assign((0,H._)`${n}.errors`,K.default.vErrors),s.unevaluated&&hC(t),e.return((0,H._)`${K.default.errors} === 0`))}function hC({gen:t,evaluated:e,props:r,items:n}){r instanceof H.Name&&t.assign((0,H._)`${e}.props`,r),n instanceof H.Name&&t.assign((0,H._)`${e}.items`,n)}function ux(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:d}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,kr.schemaHasRulesButRef)(s,d))){o.block(()=>xx(t,"$ref",d.all.$ref.definition));return}c.jtd||gC(t,e),o.block(()=>{for(let f of d.rules)l(f);l(d.post)});function l(f){(0,wp.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Ma.checkDataType)(f.type,i,c.strictNumbers)),lx(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,Ma.reportTypeError)(t)),o.endIf()):lx(t,f),a||o.if((0,H._)`${K.default.errors} === ${n||0}`))}}function lx(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,tC.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,wp.shouldUseRule)(n,s)&&xx(t,s.keyword,s.definition,e.type)})}function gC(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(yC(t,e),t.opts.allowUnionTypes||_C(t,e),xC(t,t.dataTypes))}function yC(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{_x(t.dataTypes,r)||Tp(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),bC(t,e)}}function _C(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Tp(t,"use allowUnionTypes to allow union type keyword")}function xC(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,wp.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>vC(e,i))&&Tp(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function vC(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function _x(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function bC(t,e){let r=[];for(let n of t.dataTypes)_x(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Tp(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,kr.checkStrictMode)(t,e,t.opts.strictTypes)}var ja=class{constructor(e,r,n){if((0,Ls.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,kr.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",vx(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Ls.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",K.default.errors))}result(e,r,n){this.failResult((0,H.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,H.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,H._)`${r} !== undefined && (${(0,H.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?zs.reportExtraError:zs.reportError)(this,this.def.error,r)}$dataError(){(0,zs.reportError)(this,this.def.$dataError||zs.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,zs.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=H.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=H.nil,r=H.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,H.or)((0,H._)`${o} === undefined`,r)),e!==H.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==H.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,H.or)(i(),a());function i(){if(n.length){if(!(r instanceof H.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,H._)`${(0,Ma.checkDataTypes)(c,r,s.opts.strictNumbers,Ma.DataType.Wrong)}`}return H.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,H._)`!${c}(${r})`}return H.nil}}subschema(e,r){let n=(0,Ep.getSubschema)(this.it,e);(0,Ep.extendSubschemaData)(n,this.it,e),(0,Ep.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return cC(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=kr.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=kr.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,H.Name)),!0}};Kr.KeywordCxt=ja;function xx(t,e,r,n){let o=new ja(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Ls.funcKeywordCode)(o,r):"macro"in r?(0,Ls.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Ls.funcKeywordCode)(o,r)}var SC=/^\/(?:[^~]|~0|~1)*$/,kC=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function vx(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return K.default.rootData;if(t[0]==="/"){if(!SC.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=K.default.rootData}else{let u=kC.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let d=+u[1];if(o=u[2],o==="#"){if(d>=e)throw new Error(c("property/index",d));return n[e-d]}if(d>e)throw new Error(c("data",d));if(s=r[e-d],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,H._)`${s}${(0,H.getProperty)((0,kr.unescapeJsonPointer)(u))}`,i=(0,H._)`${i} && ${s}`);return i;function c(u,d){return`Cannot access ${u} ${d} levels up, current level is ${e}`}}Kr.getData=vx});var za=$(Rp=>{"use strict";Object.defineProperty(Rp,"__esModule",{value:!0});var Pp=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Rp.default=Pp});var Hs=$(Op=>{"use strict";Object.defineProperty(Op,"__esModule",{value:!0});var $p=js(),Cp=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,$p.resolveUrl)(e,r,n),this.missingSchema=(0,$p.normalizeId)((0,$p.getFullPath)(e,this.missingRef))}};Op.default=Cp});var Ua=$(Ot=>{"use strict";Object.defineProperty(Ot,"__esModule",{value:!0});Ot.resolveSchema=Ot.getCompilingSchema=Ot.resolveRef=Ot.compileSchema=Ot.SchemaEnv=void 0;var Wt=X(),EC=za(),An=Sr(),Kt=js(),bx=ce(),wC=Us(),To=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={}}};Ot.SchemaEnv=To;function Ap(t){let e=Sx.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 Wt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:EC.default,code:(0,Wt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:An.default.data,parentData:An.default.parentData,parentDataProperty:An.default.parentDataProperty,dataNames:[An.default.data],dataPathArr:[Wt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Wt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Wt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Wt._)`""`,opts:this.opts,self:this},d;try{this._compilations.add(t),(0,wC.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let l=i.toString();d=`${i.scopeRefs(An.default.scope)}return ${l}`,this.opts.code.process&&(d=this.opts.code.process(d,t));let m=new Function(`${An.default.self}`,`${An.default.scope}`,d)(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:l,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof Wt.Name?void 0:p,items:h instanceof Wt.Name?void 0:h,dynamicProps:p instanceof Wt.Name,dynamicItems:h instanceof Wt.Name},m.source&&(m.source.evaluated=(0,Wt.stringify)(m.evaluated))}return t.validate=m,t}catch(l){throw delete t.validate,delete t.validateName,d&&this.logger.error("Error compiling schema, function code:",d),l}finally{this._compilations.delete(t)}}Ot.compileSchema=Ap;function TC(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=$C.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 To({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=PC.call(this,s)}Ot.resolveRef=TC;function PC(t){return(0,Kt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Ap.call(this,t)}function Sx(t){for(let e of this._compilations)if(RC(e,t))return e}Ot.getCompilingSchema=Sx;function RC(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function $C(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||La.call(this,t,e)}function La(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 Ip.call(this,r,t);let s=(0,Kt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=La.call(this,t,i);return typeof a?.schema!="object"?void 0:Ip.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Ap.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 To({schema:a,schemaId:c,root:t,baseId:o})}return Ip.call(this,r,i)}}Ot.resolveSchema=La;var CC=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Ip(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,bx.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!CC.has(a)&&u&&(e=(0,Kt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,bx.schemaHasRulesButRef)(r,this.RULES)){let a=(0,Kt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=La.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new To({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var kx=$((BF,OC)=>{OC.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 Dp=$((qF,Px)=>{"use strict";var IC=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),wx=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 Np(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 AC=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Ex(t){return t.length=0,!0}function NC(t,e,r){if(t.length){let n=Np(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function DC(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=NC;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=Ex}else{o.push(u);continue}}return o.length&&(a===Ex?r.zone=o.join(""):i?n.push(o.join("")):n.push(Np(o))),r.address=n.join(""),r}function Tx(t){if(MC(t,":")<2)return{host:t,isIPV6:!1};let e=DC(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 MC(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function jC(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 zC(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 LC(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!wx(r)){let n=Tx(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}Px.exports={nonSimpleDomain:AC,recomposeAuthority:LC,normalizeComponentEncoding:zC,removeDotSegments:jC,isIPv4:wx,isUUID:IC,normalizeIPv6:Tx,stringArrayToHexStripped:Np}});var Ix=$((VF,Ox)=>{"use strict";var{isUUID:UC}=Dp(),HC=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,FC=["http","https","ws","wss","urn","urn:uuid"];function ZC(t){return FC.indexOf(t)!==-1}function Mp(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 Rx(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function $x(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 BC(t){return t.secure=Mp(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function qC(t){if((t.port===(Mp(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 VC(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(HC);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=jp(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function WC(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=jp(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 KC(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!UC(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function GC(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Cx={scheme:"http",domainHost:!0,parse:Rx,serialize:$x},JC={scheme:"https",domainHost:Cx.domainHost,parse:Rx,serialize:$x},Ha={scheme:"ws",domainHost:!0,parse:BC,serialize:qC},YC={scheme:"wss",domainHost:Ha.domainHost,parse:Ha.parse,serialize:Ha.serialize},XC={scheme:"urn",parse:VC,serialize:WC,skipNormalize:!0},QC={scheme:"urn:uuid",parse:KC,serialize:GC,skipNormalize:!0},Fa={http:Cx,https:JC,ws:Ha,wss:YC,urn:XC,"urn:uuid":QC};Object.setPrototypeOf(Fa,null);function jp(t){return t&&(Fa[t]||Fa[t.toLowerCase()])||void 0}Ox.exports={wsIsSecure:Mp,SCHEMES:Fa,isValidSchemeName:ZC,getSchemeHandler:jp}});var Dx=$((WF,Ba)=>{"use strict";var{normalizeIPv6:eO,removeDotSegments:Fs,recomposeAuthority:tO,normalizeComponentEncoding:Za,isIPv4:rO,nonSimpleDomain:nO}=Dp(),{SCHEMES:oO,getSchemeHandler:Ax}=Ix();function sO(t,e){return typeof t=="string"?t=lr(Er(t,e),e):typeof t=="object"&&(t=Er(lr(t,e),e)),t}function iO(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Nx(Er(t,n),Er(e,n),n,!0);return n.skipEscape=!0,lr(o,n)}function Nx(t,e,r,n){let o={};return n||(t=Er(lr(t,r),r),e=Er(lr(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=Fs(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=Fs(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Fs(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=Fs(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 aO(t,e,r){return typeof t=="string"?(t=unescape(t),t=lr(Za(Er(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=lr(Za(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=lr(Za(Er(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=lr(Za(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function lr(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=Ax(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=tO(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=Fs(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 cO=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Er(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(cO);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(rO(n.host)===!1){let c=eO(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=Ax(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&nO(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 zp={SCHEMES:oO,normalize:sO,resolve:iO,resolveComponent:Nx,equal:aO,serialize:lr,parse:Er};Ba.exports=zp;Ba.exports.default=zp;Ba.exports.fastUri=zp});var jx=$(Lp=>{"use strict";Object.defineProperty(Lp,"__esModule",{value:!0});var Mx=Dx();Mx.code='require("ajv/dist/runtime/uri").default';Lp.default=Mx});var qx=$(Ve=>{"use strict";Object.defineProperty(Ve,"__esModule",{value:!0});Ve.CodeGen=Ve.Name=Ve.nil=Ve.stringify=Ve.str=Ve._=Ve.KeywordCxt=void 0;var uO=Us();Object.defineProperty(Ve,"KeywordCxt",{enumerable:!0,get:function(){return uO.KeywordCxt}});var Po=X();Object.defineProperty(Ve,"_",{enumerable:!0,get:function(){return Po._}});Object.defineProperty(Ve,"str",{enumerable:!0,get:function(){return Po.str}});Object.defineProperty(Ve,"stringify",{enumerable:!0,get:function(){return Po.stringify}});Object.defineProperty(Ve,"nil",{enumerable:!0,get:function(){return Po.nil}});Object.defineProperty(Ve,"Name",{enumerable:!0,get:function(){return Po.Name}});Object.defineProperty(Ve,"CodeGen",{enumerable:!0,get:function(){return Po.CodeGen}});var lO=za(),Fx=Hs(),dO=mp(),Zs=Ua(),pO=X(),Bs=js(),qa=Ms(),Hp=ce(),zx=kx(),fO=jx(),Zx=(t,e)=>new RegExp(t,e);Zx.code="new RegExp";var mO=["removeAdditional","useDefaults","coerceTypes"],hO=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),gO={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."},yO={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Lx=200;function _O(t){var e,r,n,o,s,i,a,c,u,d,l,f,m,p,h,g,_,x,y,S,E,O,L,A,z;let w=t.strict,P=(e=t.code)===null||e===void 0?void 0:e.optimize,N=P===!0||P===void 0?1:P||0,Q=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Zx,nr=(o=t.uriResolver)!==null&&o!==void 0?o:fO.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:w)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:w)!==null&&c!==void 0?c:!0,strictTypes:(d=(u=t.strictTypes)!==null&&u!==void 0?u:w)!==null&&d!==void 0?d:"log",strictTuples:(f=(l=t.strictTuples)!==null&&l!==void 0?l:w)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:w)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:N,regExp:Q}:{optimize:N,regExp:Q},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Lx,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:Lx,meta:(_=t.meta)!==null&&_!==void 0?_:!0,messages:(x=t.messages)!==null&&x!==void 0?x:!0,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(S=t.schemaId)!==null&&S!==void 0?S:"$id",addUsedSchema:(E=t.addUsedSchema)!==null&&E!==void 0?E:!0,validateSchema:(O=t.validateSchema)!==null&&O!==void 0?O:!0,validateFormats:(L=t.validateFormats)!==null&&L!==void 0?L:!0,unicodeRegExp:(A=t.unicodeRegExp)!==null&&A!==void 0?A:!0,int32range:(z=t.int32range)!==null&&z!==void 0?z:!0,uriResolver:nr}}var qs=class{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,..._O(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new pO.ValueScope({scope:{},prefixes:hO,es5:r,lines:n}),this.logger=EO(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,dO.getRules)(),Ux.call(this,gO,e,"NOT SUPPORTED"),Ux.call(this,yO,e,"DEPRECATED","warn"),this._metaOpts=SO.call(this),e.formats&&vO.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&bO.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),xO.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=zx;n==="id"&&(o={...zx},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(d,l){await s.call(this,d.$schema);let f=this._addSchema(d,l);return f.validate||i.call(this,f)}async function s(d){d&&!this.getSchema(d)&&await o.call(this,{$ref:d},!0)}async function i(d){try{return this._compileSchemaEnv(d)}catch(l){if(!(l instanceof Fx.default))throw l;return a.call(this,l),await c.call(this,l.missingSchema),i.call(this,d)}}function a({missingSchema:d,missingRef:l}){if(this.refs[d])throw new Error(`AnySchema ${d} is loaded but ${l} cannot be resolved`)}async function c(d){let l=await u.call(this,d);this.refs[d]||await s.call(this,l.$schema),this.refs[d]||this.addSchema(l,d,r)}async function u(d){let l=this._loading[d];if(l)return l;try{return await(this._loading[d]=n(d))}finally{delete this._loading[d]}}}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,Bs.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=Hx.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Zs.SchemaEnv({schema:{},schemaId:n});if(r=Zs.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=Hx.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,Bs.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(TO.call(this,n,r),!r)return(0,Hp.eachItem)(n,s=>Up.call(this,s)),this;RO.call(this,r);let o={...r,type:(0,qa.getJSONTypes)(r.type),schemaType:(0,qa.getJSONTypes)(r.schemaType)};return(0,Hp.eachItem)(n,o.type.length===0?s=>Up.call(this,s,o):s=>o.type.forEach(i=>Up.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,d=i[a];u&&d&&(i[a]=Bx(d))}}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,Bs.normalizeId)(i||n);let u=Bs.getSchemaRefs.call(this,e,n);return c=new Zs.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):Zs.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{Zs.compileSchema.call(this,e)}finally{this.opts=r}}};qs.ValidationError=lO.default;qs.MissingRefError=Fx.default;Ve.default=qs;function Ux(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 Hx(t){return t=(0,Bs.normalizeId)(t),this.schemas[t]||this.refs[t]}function xO(){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 vO(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function bO(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 SO(){let t={...this.opts};for(let e of mO)delete t[e];return t}var kO={log(){},warn(){},error(){}};function EO(t){if(t===!1)return kO;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 wO=/^[a-z_$][a-z0-9_$:-]*$/i;function TO(t,e){let{RULES:r}=this;if((0,Hp.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!wO.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 Up(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,qa.getJSONTypes)(e.type),schemaType:(0,qa.getJSONTypes)(e.schemaType)}};e.before?PO.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 PO(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 RO(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Bx(e)),t.validateSchema=this.compile(e,!0))}var $O={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Bx(t){return{anyOf:[t,$O]}}});var Vx=$(Fp=>{"use strict";Object.defineProperty(Fp,"__esModule",{value:!0});var CO={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Fp.default=CO});var Jx=$(Nn=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.callRef=Nn.getValidate=void 0;var OO=Hs(),Wx=Ct(),ft=X(),Ro=Sr(),Kx=Ua(),Va=ce(),IO={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 l();let d=Kx.resolveRef.call(c,u,o,r);if(d===void 0)throw new OO.default(n.opts.uriResolver,o,r);if(d instanceof Kx.SchemaEnv)return f(d);return m(d);function l(){if(s===u)return Wa(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Wa(t,(0,ft._)`${p}.validate`,u,u.$async)}function f(p){let h=Gx(t,p);Wa(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,ft.stringify)(p)}:{ref:p}),g=e.name("valid"),_=t.subschema({schema:p,dataTypes:[],schemaPath:ft.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(_),t.ok(g)}}};function Gx(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,ft._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Nn.getValidate=Gx;function Wa(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Ro.default.this:ft.nil;n?d():l();function d(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,ft._)`await ${(0,Wx.callValidateCode)(t,e,u)}`),m(e),i||o.assign(p,!0)},h=>{o.if((0,ft._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),f(h),i||o.assign(p,!1)}),t.ok(p)}function l(){t.result((0,Wx.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,ft._)`${p}.errors`;o.assign(Ro.default.vErrors,(0,ft._)`${Ro.default.vErrors} === null ? ${h} : ${Ro.default.vErrors}.concat(${h})`),o.assign(Ro.default.errors,(0,ft._)`${Ro.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=Va.mergeEvaluated.props(o,g.props,s.props));else{let _=o.var("props",(0,ft._)`${p}.evaluated.props`);s.props=Va.mergeEvaluated.props(o,_,s.props,ft.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Va.mergeEvaluated.items(o,g.items,s.items));else{let _=o.var("items",(0,ft._)`${p}.evaluated.items`);s.items=Va.mergeEvaluated.items(o,_,s.items,ft.Name)}}}Nn.callRef=Wa;Nn.default=IO});var Yx=$(Zp=>{"use strict";Object.defineProperty(Zp,"__esModule",{value:!0});var AO=Vx(),NO=Jx(),DO=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",AO.default,NO.default];Zp.default=DO});var Xx=$(Bp=>{"use strict";Object.defineProperty(Bp,"__esModule",{value:!0});var Ka=X(),Gr=Ka.operators,Ga={maximum:{okStr:"<=",ok:Gr.LTE,fail:Gr.GT},minimum:{okStr:">=",ok:Gr.GTE,fail:Gr.LT},exclusiveMaximum:{okStr:"<",ok:Gr.LT,fail:Gr.GTE},exclusiveMinimum:{okStr:">",ok:Gr.GT,fail:Gr.LTE}},MO={message:({keyword:t,schemaCode:e})=>(0,Ka.str)`must be ${Ga[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ka._)`{comparison: ${Ga[t].okStr}, limit: ${e}}`},jO={keyword:Object.keys(Ga),type:"number",schemaType:"number",$data:!0,error:MO,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Ka._)`${r} ${Ga[e].fail} ${n} || isNaN(${r})`)}};Bp.default=jO});var Qx=$(qp=>{"use strict";Object.defineProperty(qp,"__esModule",{value:!0});var Vs=X(),zO={message:({schemaCode:t})=>(0,Vs.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Vs._)`{multipleOf: ${t}}`},LO={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:zO,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Vs._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Vs._)`${i} !== parseInt(${i})`;t.fail$data((0,Vs._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};qp.default=LO});var tv=$(Vp=>{"use strict";Object.defineProperty(Vp,"__esModule",{value:!0});function ev(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}Vp.default=ev;ev.code='require("ajv/dist/runtime/ucs2length").default'});var rv=$(Wp=>{"use strict";Object.defineProperty(Wp,"__esModule",{value:!0});var Dn=X(),UO=ce(),HO=tv(),FO={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Dn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Dn._)`{limit: ${t}}`},ZO={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:FO,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?Dn.operators.GT:Dn.operators.LT,i=o.opts.unicode===!1?(0,Dn._)`${r}.length`:(0,Dn._)`${(0,UO.useFunc)(t.gen,HO.default)}(${r})`;t.fail$data((0,Dn._)`${i} ${s} ${n}`)}};Wp.default=ZO});var nv=$(Kp=>{"use strict";Object.defineProperty(Kp,"__esModule",{value:!0});var BO=Ct(),qO=ce(),$o=X(),VO={message:({schemaCode:t})=>(0,$o.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,$o._)`{pattern: ${t}}`},WO={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:VO,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,$o._)`new RegExp`:(0,qO.useFunc)(e,c),d=e.let("valid");e.try(()=>e.assign(d,(0,$o._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(d,!1)),t.fail$data((0,$o._)`!${d}`)}else{let c=(0,BO.usePattern)(t,o);t.fail$data((0,$o._)`!${c}.test(${r})`)}}};Kp.default=WO});var ov=$(Gp=>{"use strict";Object.defineProperty(Gp,"__esModule",{value:!0});var Ws=X(),KO={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Ws.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Ws._)`{limit: ${t}}`},GO={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:KO,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Ws.operators.GT:Ws.operators.LT;t.fail$data((0,Ws._)`Object.keys(${r}).length ${o} ${n}`)}};Gp.default=GO});var sv=$(Jp=>{"use strict";Object.defineProperty(Jp,"__esModule",{value:!0});var Ks=Ct(),Gs=X(),JO=ce(),YO={message:({params:{missingProperty:t}})=>(0,Gs.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Gs._)`{missingProperty: ${t}}`},XO={keyword:"required",type:"object",schemaType:"array",$data:!0,error:YO,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():d(),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,JO.checkStrictMode)(i,_,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(Gs.nil,l);else for(let m of r)(0,Ks.checkReportMissingProp)(t,m)}function d(){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,Ks.checkMissingProp)(t,r,m)),(0,Ks.reportMissingProp)(t,m),e.else()}function l(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,Ks.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,Ks.propertyInData)(e,o,m,a.ownProperties)),e.if((0,Gs.not)(p),()=>{t.error(),e.break()})},Gs.nil)}}};Jp.default=XO});var iv=$(Yp=>{"use strict";Object.defineProperty(Yp,"__esModule",{value:!0});var Js=X(),QO={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Js.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Js._)`{limit: ${t}}`},eI={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:QO,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?Js.operators.GT:Js.operators.LT;t.fail$data((0,Js._)`${r}.length ${o} ${n}`)}};Yp.default=eI});var Ja=$(Xp=>{"use strict";Object.defineProperty(Xp,"__esModule",{value:!0});var av=Sp();av.code='require("ajv/dist/runtime/equal").default';Xp.default=av});var cv=$(ef=>{"use strict";Object.defineProperty(ef,"__esModule",{value:!0});var Qp=Ms(),We=X(),tI=ce(),rI=Ja(),nI={message:({params:{i:t,j:e}})=>(0,We.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,We._)`{i: ${t}, j: ${e}}`},oI={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:nI,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,Qp.getSchemaTypes)(s.items):[];t.block$data(c,d,(0,We._)`${i} === false`),t.ok(c);function d(){let p=e.let("i",(0,We._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,We._)`${p} > 1`,()=>(l()?f:m)(p,h))}function l(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,h){let g=e.name("item"),_=(0,Qp.checkDataTypes)(u,g,a.opts.strictNumbers,Qp.DataType.Wrong),x=e.const("indices",(0,We._)`{}`);e.for((0,We._)`;${p}--;`,()=>{e.let(g,(0,We._)`${r}[${p}]`),e.if(_,(0,We._)`continue`),u.length>1&&e.if((0,We._)`typeof ${g} == "string"`,(0,We._)`${g} += "_"`),e.if((0,We._)`typeof ${x}[${g}] == "number"`,()=>{e.assign(h,(0,We._)`${x}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,We._)`${x}[${g}] = ${p}`)})}function m(p,h){let g=(0,tI.useFunc)(e,rI.default),_=e.name("outer");e.label(_).for((0,We._)`;${p}--;`,()=>e.for((0,We._)`${h} = ${p}; ${h}--;`,()=>e.if((0,We._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(_)})))}}};ef.default=oI});var uv=$(rf=>{"use strict";Object.defineProperty(rf,"__esModule",{value:!0});var tf=X(),sI=ce(),iI=Ja(),aI={message:"must be equal to constant",params:({schemaCode:t})=>(0,tf._)`{allowedValue: ${t}}`},cI={keyword:"const",$data:!0,error:aI,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,tf._)`!${(0,sI.useFunc)(e,iI.default)}(${r}, ${o})`):t.fail((0,tf._)`${s} !== ${r}`)}};rf.default=cI});var lv=$(nf=>{"use strict";Object.defineProperty(nf,"__esModule",{value:!0});var Ys=X(),uI=ce(),lI=Ja(),dI={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Ys._)`{allowedValues: ${t}}`},pI={keyword:"enum",schemaType:"array",$data:!0,error:dI,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,uI.useFunc)(e,lI.default)),d;if(a||n)d=e.let("valid"),t.block$data(d,l);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let m=e.const("vSchema",s);d=(0,Ys.or)(...o.map((p,h)=>f(m,h)))}t.pass(d);function l(){e.assign(d,!1),e.forOf("v",s,m=>e.if((0,Ys._)`${u()}(${r}, ${m})`,()=>e.assign(d,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,Ys._)`${u()}(${r}, ${m}[${p}])`:(0,Ys._)`${r} === ${h}`}}};nf.default=pI});var dv=$(of=>{"use strict";Object.defineProperty(of,"__esModule",{value:!0});var fI=Xx(),mI=Qx(),hI=rv(),gI=nv(),yI=ov(),_I=sv(),xI=iv(),vI=cv(),bI=uv(),SI=lv(),kI=[fI.default,mI.default,hI.default,gI.default,yI.default,_I.default,xI.default,vI.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},bI.default,SI.default];of.default=kI});var af=$(Xs=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});Xs.validateAdditionalItems=void 0;var Mn=X(),sf=ce(),EI={message:({params:{len:t}})=>(0,Mn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Mn._)`{limit: ${t}}`},wI={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:EI,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,sf.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}pv(t,n)}};function pv(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Mn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Mn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,sf.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Mn._)`${a} <= ${e.length}`);r.if((0,Mn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,d=>{t.subschema({keyword:s,dataProp:d,dataPropType:sf.Type.Num},u),i.allErrors||r.if((0,Mn.not)(u),()=>r.break())})}}Xs.validateAdditionalItems=pv;Xs.default=wI});var cf=$(Qs=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});Qs.validateTuple=void 0;var fv=X(),Ya=ce(),TI=Ct(),PI={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return mv(t,"additionalItems",e);r.items=!0,!(0,Ya.alwaysValidSchema)(r,e)&&t.ok((0,TI.validateArray)(t))}};function mv(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;d(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Ya.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,fv._)`${s}.length`);r.forEach((l,f)=>{(0,Ya.alwaysValidSchema)(a,l)||(n.if((0,fv._)`${u} > ${f}`,()=>t.subschema({keyword:i,schemaProp:f,dataProp:f},c)),t.ok(c))});function d(l){let{opts:f,errSchemaPath:m}=a,p=r.length,h=p===l.minItems&&(p===l.maxItems||l[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,Ya.checkStrictMode)(a,g,f.strictTuples)}}}Qs.validateTuple=mv;Qs.default=PI});var hv=$(uf=>{"use strict";Object.defineProperty(uf,"__esModule",{value:!0});var RI=cf(),$I={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,RI.validateTuple)(t,"items")};uf.default=$I});var yv=$(lf=>{"use strict";Object.defineProperty(lf,"__esModule",{value:!0});var gv=X(),CI=ce(),OI=Ct(),II=af(),AI={message:({params:{len:t}})=>(0,gv.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,gv._)`{limit: ${t}}`},NI={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:AI,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,CI.alwaysValidSchema)(n,e)&&(o?(0,II.validateAdditionalItems)(t,o):t.ok((0,OI.validateArray)(t)))}};lf.default=NI});var _v=$(df=>{"use strict";Object.defineProperty(df,"__esModule",{value:!0});var It=X(),Xa=ce(),DI={message:({params:{min:t,max:e}})=>e===void 0?(0,It.str)`must contain at least ${t} valid item(s)`:(0,It.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,It._)`{minContains: ${t}}`:(0,It._)`{minContains: ${t}, maxContains: ${e}}`},MI={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:DI,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 d=e.const("len",(0,It._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Xa.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Xa.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Xa.alwaysValidSchema)(s,r)){let h=(0,It._)`${d} >= ${i}`;a!==void 0&&(h=(0,It._)`${h} && ${d} <= ${a}`),t.pass(h);return}s.items=!0;let l=e.name("valid");a===void 0&&i===1?m(l,()=>e.if(l,()=>e.break())):i===0?(e.let(l,!0),a!==void 0&&e.if((0,It._)`${o}.length > 0`,f)):(e.let(l,!1),f()),t.result(l,()=>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,d,_=>{t.subschema({keyword:"contains",dataProp:_,dataPropType:Xa.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,It._)`${h}++`),a===void 0?e.if((0,It._)`${h} >= ${i}`,()=>e.assign(l,!0).break()):(e.if((0,It._)`${h} > ${a}`,()=>e.assign(l,!1).break()),i===1?e.assign(l,!0):e.if((0,It._)`${h} >= ${i}`,()=>e.assign(l,!0)))}}};df.default=MI});var bv=$(dr=>{"use strict";Object.defineProperty(dr,"__esModule",{value:!0});dr.validateSchemaDeps=dr.validatePropertyDeps=dr.error=void 0;var pf=X(),jI=ce(),ei=Ct();dr.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,pf.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,pf._)`{property: ${t},
|
|
7
7
|
missingProperty: ${n},
|
|
8
8
|
depsCount: ${e},
|
|
9
|
-
deps: ${r}}`};var zI={keyword:"dependencies",type:"object",schemaType:"object",error:dr.error,code(t){let[e,r]=LI(t);xv(t,e),vv(t,r)}};function LI({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 xv(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,ei.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,ei.checkReportMissingProp)(t,u)}):(r.if((0,pf._)`${c} && (${(0,ei.checkMissingProp)(t,a,s)})`),(0,ei.reportMissingProp)(t,s),r.else())}}dr.validatePropertyDeps=xv;function vv(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,jI.alwaysValidSchema)(s,e[a])||(r.if((0,ei.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))}dr.validateSchemaDeps=vv;dr.default=zI});var kv=$(ff=>{"use strict";Object.defineProperty(ff,"__esModule",{value:!0});var Sv=X(),UI=ce(),HI={message:"property name must be valid",params:({params:t})=>(0,Sv._)`{propertyName: ${t.propertyName}}`},FI={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:HI,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,UI.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,Sv.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};ff.default=FI});var hf=$(mf=>{"use strict";Object.defineProperty(mf,"__esModule",{value:!0});var Qa=Ct(),Gt=X(),ZI=kr(),ec=ce(),BI={message:"must NOT have additional properties",params:({params:t})=>(0,Gt._)`{additionalProperty: ${t.additionalProperty}}`},qI={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:BI,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,ec.alwaysValidSchema)(i,r))return;let u=(0,Qa.allSchemaProperties)(n.properties),d=(0,Qa.allSchemaProperties)(n.patternProperties);l(),t.ok((0,Gt._)`${s} === ${ZI.default.errors}`);function l(){e.forIn("key",o,g=>{!u.length&&!d.length?p(g):e.if(f(g),()=>p(g))})}function f(g){let _;if(u.length>8){let x=(0,ec.schemaRefOrVal)(i,n.properties,"properties");_=(0,Qa.isOwnProperty)(e,x,g)}else u.length?_=(0,Gt.or)(...u.map(x=>(0,Gt._)`${g} === ${x}`)):_=Gt.nil;return d.length&&(_=(0,Gt.or)(_,...d.map(x=>(0,Gt._)`${(0,Qa.usePattern)(t,x)}.test(${g})`))),(0,Gt.not)(_)}function m(g){e.code((0,Gt._)`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,ec.alwaysValidSchema)(i,r)){let _=e.name("valid");c.removeAdditional==="failing"?(h(g,_,!1),e.if((0,Gt.not)(_),()=>{t.reset(),m(g)})):(h(g,_),a||e.if((0,Gt.not)(_),()=>e.break()))}}function h(g,_,x){let y={keyword:"additionalProperties",dataProp:g,dataPropType:ec.Type.Str};x===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(y,_)}}};mf.default=qI});var Tv=$(yf=>{"use strict";Object.defineProperty(yf,"__esModule",{value:!0});var VI=Us(),Ev=Ct(),gf=ce(),wv=hf(),WI={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&&wv.default.code(new VI.KeywordCxt(s,wv.default,"additionalProperties"));let i=(0,Ev.allSchemaProperties)(r);for(let l of i)s.definedProperties.add(l);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=gf.mergeEvaluated.props(e,(0,gf.toHash)(i),s.props));let a=i.filter(l=>!(0,gf.alwaysValidSchema)(s,r[l]));if(a.length===0)return;let c=e.name("valid");for(let l of a)u(l)?d(l):(e.if((0,Ev.propertyInData)(e,o,l,s.opts.ownProperties)),d(l),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(l),t.ok(c);function u(l){return s.opts.useDefaults&&!s.compositeRule&&r[l].default!==void 0}function d(l){t.subschema({keyword:"properties",schemaProp:l,dataProp:l},c)}}};yf.default=WI});var Cv=$(_f=>{"use strict";Object.defineProperty(_f,"__esModule",{value:!0});var Pv=Ct(),tc=X(),Rv=ce(),$v=ce(),KI={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,Pv.allSchemaProperties)(r),c=a.filter(h=>(0,Rv.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,d=e.name("valid");s.props!==!0&&!(s.props instanceof tc.Name)&&(s.props=(0,$v.evaluatedPropsToName)(e,s.props));let{props:l}=s;f();function f(){for(let h of a)u&&m(h),s.allErrors?p(h):(e.var(d,!0),p(h),e.if(d))}function m(h){for(let g in u)new RegExp(h).test(g)&&(0,Rv.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,tc._)`${(0,Pv.usePattern)(t,h)}.test(${g})`,()=>{let _=c.includes(h);_||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:$v.Type.Str},d),s.opts.unevaluated&&l!==!0?e.assign((0,tc._)`${l}[${g}]`,!0):!_&&!s.allErrors&&e.if((0,tc.not)(d),()=>e.break())})})}}};_f.default=KI});var Ov=$(xf=>{"use strict";Object.defineProperty(xf,"__esModule",{value:!0});var GI=ce(),JI={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,GI.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"}};xf.default=JI});var Iv=$(vf=>{"use strict";Object.defineProperty(vf,"__esModule",{value:!0});var YI=Ct(),XI={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:YI.validateUnion,error:{message:"must match a schema in anyOf"}};vf.default=XI});var Av=$(bf=>{"use strict";Object.defineProperty(bf,"__esModule",{value:!0});var rc=X(),QI=ce(),eA={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,rc._)`{passingSchemas: ${t.passing}}`},tA={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:eA,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((d,l)=>{let f;(0,QI.alwaysValidSchema)(o,d)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:l,compositeRule:!0},c),l>0&&e.if((0,rc._)`${c} && ${i}`).assign(i,!1).assign(a,(0,rc._)`[${a}, ${l}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,l),f&&t.mergeEvaluated(f,rc.Name)})})}}};bf.default=tA});var Nv=$(Sf=>{"use strict";Object.defineProperty(Sf,"__esModule",{value:!0});var rA=ce(),nA={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,rA.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Sf.default=nA});var jv=$(kf=>{"use strict";Object.defineProperty(kf,"__esModule",{value:!0});var nc=X(),Mv=ce(),oA={message:({params:t})=>(0,nc.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,nc._)`{failingKeyword: ${t.ifClause}}`},sA={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:oA,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Mv.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Dv(n,"then"),s=Dv(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let d=e.let("ifClause");t.setParams({ifClause:d}),e.if(a,u("then",d),u("else",d))}else o?e.if(a,u("then")):e.if((0,nc.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let d=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(d)}function u(d,l){return()=>{let f=t.subschema({keyword:d},a);e.assign(i,a),t.mergeValidEvaluated(f,i),l?e.assign(l,(0,nc._)`${d}`):t.setParams({ifClause:d})}}}};function Dv(t,e){let r=t.schema[e];return r!==void 0&&!(0,Mv.alwaysValidSchema)(t,r)}kf.default=sA});var zv=$(Ef=>{"use strict";Object.defineProperty(Ef,"__esModule",{value:!0});var iA=ce(),aA={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,iA.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Ef.default=aA});var Lv=$(wf=>{"use strict";Object.defineProperty(wf,"__esModule",{value:!0});var cA=af(),uA=hv(),lA=cf(),dA=yv(),pA=_v(),fA=bv(),mA=kv(),hA=hf(),gA=Tv(),yA=Cv(),_A=Ov(),xA=Iv(),vA=Av(),bA=Nv(),SA=jv(),kA=zv();function EA(t=!1){let e=[_A.default,xA.default,vA.default,bA.default,SA.default,kA.default,mA.default,hA.default,fA.default,gA.default,yA.default];return t?e.push(uA.default,dA.default):e.push(cA.default,lA.default),e.push(pA.default),e}wf.default=EA});var Uv=$(Tf=>{"use strict";Object.defineProperty(Tf,"__esModule",{value:!0});var De=X(),wA={message:({schemaCode:t})=>(0,De.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,De._)`{format: ${t}}`},TA={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:wA,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:d,self:l}=a;if(!c.validateFormats)return;o?f():m();function f(){let p=r.scopeValue("formats",{ref:l.formats,code:c.code.formats}),h=r.const("fDef",(0,De._)`${p}[${i}]`),g=r.let("fType"),_=r.let("format");r.if((0,De._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,De._)`${h}.type || "string"`).assign(_,(0,De._)`${h}.validate`),()=>r.assign(g,(0,De._)`"string"`).assign(_,h)),t.fail$data((0,De.or)(x(),y()));function x(){return c.strictSchema===!1?De.nil:(0,De._)`${i} && !${_}`}function y(){let S=d.$async?(0,De._)`(${h}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,De._)`${_}(${n})`,E=(0,De._)`(typeof ${_} == "function" ? ${S} : ${_}.test(${n}))`;return(0,De._)`${_} && ${_} !== true && ${g} === ${e} && !${E}`}}function m(){let p=l.formats[s];if(!p){x();return}if(p===!0)return;let[h,g,_]=y(p);h===e&&t.pass(S());function x(){if(c.strictSchema===!1){l.logger.warn(E());return}throw new Error(E());function E(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function y(E){let O=E instanceof RegExp?(0,De.regexpCode)(E):c.code.formats?(0,De._)`${c.code.formats}${(0,De.getProperty)(s)}`:void 0,L=r.scopeValue("formats",{key:s,ref:E,code:O});return typeof E=="object"&&!(E instanceof RegExp)?[E.type||"string",E.validate,(0,De._)`${L}.validate`]:["string",E,L]}function S(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!d.$async)throw new Error("async format in sync schema");return(0,De._)`await ${_}(${n})`}return typeof g=="function"?(0,De._)`${_}(${n})`:(0,De._)`${_}.test(${n})`}}}};Tf.default=TA});var Hv=$(Pf=>{"use strict";Object.defineProperty(Pf,"__esModule",{value:!0});var PA=Uv(),RA=[PA.default];Pf.default=RA});var Fv=$(Co=>{"use strict";Object.defineProperty(Co,"__esModule",{value:!0});Co.contentVocabulary=Co.metadataVocabulary=void 0;Co.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Co.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Bv=$(Rf=>{"use strict";Object.defineProperty(Rf,"__esModule",{value:!0});var $A=Yx(),CA=dv(),OA=Lv(),IA=Hv(),Zv=Fv(),AA=[$A.default,CA.default,(0,OA.default)(),IA.default,Zv.metadataVocabulary,Zv.contentVocabulary];Rf.default=AA});var Vv=$(oc=>{"use strict";Object.defineProperty(oc,"__esModule",{value:!0});oc.DiscrError=void 0;var qv;(function(t){t.Tag="tag",t.Mapping="mapping"})(qv||(oc.DiscrError=qv={}))});var Kv=$(Cf=>{"use strict";Object.defineProperty(Cf,"__esModule",{value:!0});var Oo=X(),$f=Vv(),Wv=Ua(),NA=Hs(),DA=ce(),MA={message:({params:{discrError:t,tagName:e}})=>t===$f.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Oo._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},jA={keyword:"discriminator",type:"object",schemaType:"object",error:MA,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,Oo._)`${r}${(0,Oo.getProperty)(a)}`);e.if((0,Oo._)`typeof ${u} == "string"`,()=>d(),()=>t.error(!1,{discrError:$f.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function d(){let m=f();e.if(!1);for(let p in m)e.elseIf((0,Oo._)`${u} === ${p}`),e.assign(c,l(m[p]));e.else(),t.error(!1,{discrError:$f.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function l(m){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:m},p);return t.mergeEvaluated(h,Oo.Name),p}function f(){var m;let p={},h=_(o),g=!0;for(let S=0;S<i.length;S++){let E=i[S];if(E?.$ref&&!(0,DA.schemaHasRulesButRef)(E,s.self.RULES)){let L=E.$ref;if(E=Wv.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,L),E instanceof Wv.SchemaEnv&&(E=E.schema),E===void 0)throw new NA.default(s.opts.uriResolver,s.baseId,L)}let O=(m=E?.properties)===null||m===void 0?void 0:m[a];if(typeof O!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||_(E)),x(O,S)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function _({required:S}){return Array.isArray(S)&&S.includes(a)}function x(S,E){if(S.const)y(S.const,E);else if(S.enum)for(let O of S.enum)y(O,E);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function y(S,E){if(typeof S!="string"||S in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[S]=E}}}};Cf.default=jA});var Gv=$((DZ,zA)=>{zA.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 If=$((we,Of)=>{"use strict";Object.defineProperty(we,"__esModule",{value:!0});we.MissingRefError=we.ValidationError=we.CodeGen=we.Name=we.nil=we.stringify=we.str=we._=we.KeywordCxt=we.Ajv=void 0;var LA=qx(),UA=Bv(),HA=Kv(),Jv=Gv(),FA=["/properties"],sc="http://json-schema.org/draft-07/schema",Io=class extends LA.default{_addVocabularies(){super._addVocabularies(),UA.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(HA.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Jv,FA):Jv;this.addMetaSchema(e,sc,!1),this.refs["http://json-schema.org/schema"]=sc}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(sc)?sc:void 0)}};we.Ajv=Io;Of.exports=we=Io;Of.exports.Ajv=Io;Object.defineProperty(we,"__esModule",{value:!0});we.default=Io;var ZA=Us();Object.defineProperty(we,"KeywordCxt",{enumerable:!0,get:function(){return ZA.KeywordCxt}});var Ao=X();Object.defineProperty(we,"_",{enumerable:!0,get:function(){return Ao._}});Object.defineProperty(we,"str",{enumerable:!0,get:function(){return Ao.str}});Object.defineProperty(we,"stringify",{enumerable:!0,get:function(){return Ao.stringify}});Object.defineProperty(we,"nil",{enumerable:!0,get:function(){return Ao.nil}});Object.defineProperty(we,"Name",{enumerable:!0,get:function(){return Ao.Name}});Object.defineProperty(we,"CodeGen",{enumerable:!0,get:function(){return Ao.CodeGen}});var BA=za();Object.defineProperty(we,"ValidationError",{enumerable:!0,get:function(){return BA.default}});var qA=Hs();Object.defineProperty(we,"MissingRefError",{enumerable:!0,get:function(){return qA.default}})});var ob=$(fr=>{"use strict";Object.defineProperty(fr,"__esModule",{value:!0});fr.formatNames=fr.fastFormats=fr.fullFormats=void 0;function pr(t,e){return{validate:t,compare:e}}fr.fullFormats={date:pr(eb,Mf),time:pr(Nf(!0),jf),"date-time":pr(Yv(!0),rb),"iso-time":pr(Nf(),tb),"iso-date-time":pr(Yv(),nb),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:YA,"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:oN,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:XA,int32:{type:"number",validate:tN},int64:{type:"number",validate:rN},float:{type:"number",validate:Qv},double:{type:"number",validate:Qv},password:!0,binary:!0};fr.fastFormats={...fr.fullFormats,date:pr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Mf),time:pr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,jf),"date-time":pr(/^\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,rb),"iso-time":pr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,tb),"iso-date-time":pr(/^\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,nb),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};fr.formatNames=Object.keys(fr.fullFormats);function VA(t){return t%4===0&&(t%100!==0||t%400===0)}var WA=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,KA=[0,31,28,31,30,31,30,31,31,30,31,30,31];function eb(t){let e=WA.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&&VA(r)?29:KA[n])}function Mf(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Af=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Nf(t){return function(r){let n=Af.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),d=+(n[7]||0);if(u>23||d>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let l=s-d*c,f=o-u*c-(l<0?1:0);return(f===23||f===-1)&&(l===59||l===-1)&&i<61}}function jf(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 tb(t,e){if(!(t&&e))return;let r=Af.exec(t),n=Af.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 Df=/t|\s/i;function Yv(t){let e=Nf(t);return function(n){let o=n.split(Df);return o.length===2&&eb(o[0])&&e(o[1])}}function rb(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function nb(t,e){if(!(t&&e))return;let[r,n]=t.split(Df),[o,s]=e.split(Df),i=Mf(r,o);if(i!==void 0)return i||jf(n,s)}var GA=/\/|:/,JA=/^(?:[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 YA(t){return GA.test(t)&&JA.test(t)}var Xv=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function XA(t){return Xv.lastIndex=0,Xv.test(t)}var QA=-(2**31),eN=2**31-1;function tN(t){return Number.isInteger(t)&&t<=eN&&t>=QA}function rN(t){return Number.isInteger(t)}function Qv(){return!0}var nN=/[^\\]\\Z/;function oN(t){if(nN.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var sb=$(No=>{"use strict";Object.defineProperty(No,"__esModule",{value:!0});No.formatLimitDefinition=void 0;var sN=If(),Jt=X(),Yr=Jt.operators,ic={formatMaximum:{okStr:"<=",ok:Yr.LTE,fail:Yr.GT},formatMinimum:{okStr:">=",ok:Yr.GTE,fail:Yr.LT},formatExclusiveMaximum:{okStr:"<",ok:Yr.LT,fail:Yr.GTE},formatExclusiveMinimum:{okStr:">",ok:Yr.GT,fail:Yr.LTE}},iN={message:({keyword:t,schemaCode:e})=>(0,Jt.str)`should be ${ic[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Jt._)`{comparison: ${ic[t].okStr}, limit: ${e}}`};No.formatLimitDefinition={keyword:Object.keys(ic),type:"string",schemaType:"string",$data:!0,error:iN,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 sN.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():d();function u(){let f=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,Jt._)`${f}[${c.schemaCode}]`);t.fail$data((0,Jt.or)((0,Jt._)`typeof ${m} != "object"`,(0,Jt._)`${m} instanceof RegExp`,(0,Jt._)`typeof ${m}.compare != "function"`,l(m)))}function d(){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,Jt._)`${i.code.formats}${(0,Jt.getProperty)(f)}`:void 0});t.fail$data(l(p))}function l(f){return(0,Jt._)`${f}.compare(${r}, ${n}) ${ic[o].fail} 0`}},dependencies:["format"]};var aN=t=>(t.addKeyword(No.formatLimitDefinition),t);No.default=aN});var ub=$((ti,cb)=>{"use strict";Object.defineProperty(ti,"__esModule",{value:!0});var Do=ob(),cN=sb(),zf=X(),ib=new zf.Name("fullFormats"),uN=new zf.Name("fastFormats"),Lf=(t,e={keywords:!0})=>{if(Array.isArray(e))return ab(t,e,Do.fullFormats,ib),t;let[r,n]=e.mode==="fast"?[Do.fastFormats,uN]:[Do.fullFormats,ib],o=e.formats||Do.formatNames;return ab(t,o,r,n),e.keywords&&(0,cN.default)(t),t};Lf.get=(t,e="full")=>{let n=(e==="fast"?Do.fastFormats:Do.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function ab(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,zf._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}cb.exports=ti=Lf;Object.defineProperty(ti,"__esModule",{value:!0});ti.default=Lf});var Wb,Kb=de(()=>{"use strict";Wb={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot","JetBrains Client":"jetbrains-copilot","IntelliJ IDEA":"jetbrains-copilot",PyCharm:"jetbrains-copilot",Codex:"codex","codex-mcp-client":"codex","Kilo Code":"kilo","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi","omp-coding-agent":"omp",Zed:"zed",zed:"zed","qwen-code":"qwen-code","qwen-cli-mcp-client":"qwen-code"}});import{join as om}from"node:path";import{accessSync as VN,copyFileSync as WN,constants as KN,mkdirSync as GN}from"node:fs";import{homedir as Gb}from"node:os";var Se,xt=de(()=>{"use strict";Se=class{constructor(e){this.sessionDirSegments=e}sessionDirSegments;getSessionDir(){let e=om(Gb(),...this.sessionDirSegments,"context-mode","sessions");return GN(e,{recursive:!0}),e}getConfigDir(e){return om(Gb(),...this.sessionDirSegments)}getInstructionFiles(){return["CLAUDE.md"]}getMemoryDir(){return om(this.getConfigDir(),"memory")}backupSettings(){let e=this.getSettingsPath();try{VN(e,KN.R_OK);let r=e+".bak";return WN(e,r),r}catch{return null}}}});var zo,sm=de(()=>{"use strict";xt();zo=class extends Se{parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??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[this.projectDirEnvVar]??process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??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[this.projectDirEnvVar]??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{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??""}}});async function JN(){if(Lo)return Lo;if(li)return null;try{let t=[new URL("../../scripts/plugin-cache-integrity.mjs",import.meta.url),new URL("./scripts/plugin-cache-integrity.mjs",import.meta.url)],e=null;for(let r of t)try{let n=await import(r.href);if(typeof n?.assertPluginCacheIntegrity=="function")return Lo=n,Lo}catch(n){e=n}return li=e instanceof Error?e.message:String(e??"not found"),null}catch(t){return li=t instanceof Error?t.message:String(t),null}}function Jb(t){if(Lo){let e=Lo.assertPluginCacheIntegrity({pluginRoot:t});return e.ok?{status:"OK",detail:`${t} (all required runtime siblings present)`}:{status:"FAIL",detail:`missing: ${e.missing.join(", ")}`}}return li?{status:"FAIL",detail:`integrity helper unavailable: ${li}`}:{status:"FAIL",detail:"integrity helper not yet loaded"}}var Lo,li,Yb=de(()=>{"use strict";Lo=null,li=null;JN()});function ye(t){let e=process.execPath.replace(/\\/g,"/"),r=t.replace(/\\/g,"/");return`"${e}" "${r}"`}function bc(t){if(typeof t!="string"||t.length===0)return null;let e=t.match(/^"([^"]+)"\s+"([^"]+)"\s*$/);return e?{nodePath:e[1],scriptPath:e[2]}:null}var mr=de(()=>{"use strict"});function di(t,e){let r=zn[e],n=am(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function am(t,e){if(e){let r=zn[t];return ye(`${e}/hooks/${r}`)}return`context-mode hook claude-code ${t.toLowerCase()}`}function cm(t){let e=bc(t);if(e)return e.scriptPath.endsWith(".mjs")?e.scriptPath:null;let r=t.match(/^\s*node\s+"([^"]+\.mjs)"\s*$/);if(r)return r[1];let n=t.match(/^\s*node\s+(\S+\.mjs)\s*$/);return n?n[1]:null}function eS(t){let e=Object.values(zn);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var Yt,YN,im,Xb,XN,JB,zn,Qb,YB,tS=de(()=>{"use strict";mr();Yt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},YN="mcp__",im=["Bash","WebFetch","Read","Grep","Agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute",YN],Xb=im.join("|"),XN=["Bash","Read","Write","Edit","NotebookEdit","Glob","Grep","TodoWrite","TaskCreate","TaskUpdate","EnterPlanMode","ExitPlanMode","Skill","Agent","AskUserQuestion","EnterWorktree","mcp__"],JB=XN.join("|"),zn={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},Qb=[Yt.PRE_TOOL_USE,Yt.SESSION_START],YB=[Yt.POST_TOOL_USE,Yt.PRE_COMPACT,Yt.USER_PROMPT_SUBMIT]});var lm={};Ue(lm,{ClaudeCodeAdapter:()=>um});import{readFileSync as Sc,writeFileSync as rS,existsSync as nS,readdirSync as QN,chmodSync as eD,accessSync as tD,mkdirSync as rD,constants as nD}from"node:fs";import{resolve as kc,join as Ln}from"node:path";import{homedir as oS}from"node:os";var um,dm=de(()=>{"use strict";sm();Un();Yb();mr();tS();um=class extends zo{constructor(){super([".claude"])}name="Claude Code";paradigm="json-stdio";projectDirEnvVar="CLAUDE_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getConfigDir(e){return vt()}getSessionDir(){let e=Ln(this.getConfigDir(),"context-mode","sessions");return rD(e,{recursive:!0}),e}getSettingsPath(){return Ln(this.getConfigDir(),"settings.json")}generateHookConfig(e){let r=ye(`${e}/hooks/pretooluse.mjs`);return{PreToolUse:[...im].map(o=>({matcher:o,hooks:[{type:"command",command:r}]})),PostToolUse:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/posttooluse.mjs`)}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/precompact.mjs`)}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/userpromptsubmit.mjs`)}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/sessionstart.mjs`)}]}]}}readSettings(){try{let e=Sc(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){rS(this.getSettingsPath(),JSON.stringify(e,null,2)+`
|
|
9
|
+
deps: ${r}}`};var zI={keyword:"dependencies",type:"object",schemaType:"object",error:dr.error,code(t){let[e,r]=LI(t);xv(t,e),vv(t,r)}};function LI({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 xv(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,ei.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,ei.checkReportMissingProp)(t,u)}):(r.if((0,pf._)`${c} && (${(0,ei.checkMissingProp)(t,a,s)})`),(0,ei.reportMissingProp)(t,s),r.else())}}dr.validatePropertyDeps=xv;function vv(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,jI.alwaysValidSchema)(s,e[a])||(r.if((0,ei.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))}dr.validateSchemaDeps=vv;dr.default=zI});var kv=$(ff=>{"use strict";Object.defineProperty(ff,"__esModule",{value:!0});var Sv=X(),UI=ce(),HI={message:"property name must be valid",params:({params:t})=>(0,Sv._)`{propertyName: ${t.propertyName}}`},FI={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:HI,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,UI.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,Sv.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};ff.default=FI});var hf=$(mf=>{"use strict";Object.defineProperty(mf,"__esModule",{value:!0});var Qa=Ct(),Gt=X(),ZI=Sr(),ec=ce(),BI={message:"must NOT have additional properties",params:({params:t})=>(0,Gt._)`{additionalProperty: ${t.additionalProperty}}`},qI={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:BI,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,ec.alwaysValidSchema)(i,r))return;let u=(0,Qa.allSchemaProperties)(n.properties),d=(0,Qa.allSchemaProperties)(n.patternProperties);l(),t.ok((0,Gt._)`${s} === ${ZI.default.errors}`);function l(){e.forIn("key",o,g=>{!u.length&&!d.length?p(g):e.if(f(g),()=>p(g))})}function f(g){let _;if(u.length>8){let x=(0,ec.schemaRefOrVal)(i,n.properties,"properties");_=(0,Qa.isOwnProperty)(e,x,g)}else u.length?_=(0,Gt.or)(...u.map(x=>(0,Gt._)`${g} === ${x}`)):_=Gt.nil;return d.length&&(_=(0,Gt.or)(_,...d.map(x=>(0,Gt._)`${(0,Qa.usePattern)(t,x)}.test(${g})`))),(0,Gt.not)(_)}function m(g){e.code((0,Gt._)`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,ec.alwaysValidSchema)(i,r)){let _=e.name("valid");c.removeAdditional==="failing"?(h(g,_,!1),e.if((0,Gt.not)(_),()=>{t.reset(),m(g)})):(h(g,_),a||e.if((0,Gt.not)(_),()=>e.break()))}}function h(g,_,x){let y={keyword:"additionalProperties",dataProp:g,dataPropType:ec.Type.Str};x===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(y,_)}}};mf.default=qI});var Tv=$(yf=>{"use strict";Object.defineProperty(yf,"__esModule",{value:!0});var VI=Us(),Ev=Ct(),gf=ce(),wv=hf(),WI={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&&wv.default.code(new VI.KeywordCxt(s,wv.default,"additionalProperties"));let i=(0,Ev.allSchemaProperties)(r);for(let l of i)s.definedProperties.add(l);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=gf.mergeEvaluated.props(e,(0,gf.toHash)(i),s.props));let a=i.filter(l=>!(0,gf.alwaysValidSchema)(s,r[l]));if(a.length===0)return;let c=e.name("valid");for(let l of a)u(l)?d(l):(e.if((0,Ev.propertyInData)(e,o,l,s.opts.ownProperties)),d(l),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(l),t.ok(c);function u(l){return s.opts.useDefaults&&!s.compositeRule&&r[l].default!==void 0}function d(l){t.subschema({keyword:"properties",schemaProp:l,dataProp:l},c)}}};yf.default=WI});var Cv=$(_f=>{"use strict";Object.defineProperty(_f,"__esModule",{value:!0});var Pv=Ct(),tc=X(),Rv=ce(),$v=ce(),KI={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,Pv.allSchemaProperties)(r),c=a.filter(h=>(0,Rv.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,d=e.name("valid");s.props!==!0&&!(s.props instanceof tc.Name)&&(s.props=(0,$v.evaluatedPropsToName)(e,s.props));let{props:l}=s;f();function f(){for(let h of a)u&&m(h),s.allErrors?p(h):(e.var(d,!0),p(h),e.if(d))}function m(h){for(let g in u)new RegExp(h).test(g)&&(0,Rv.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,tc._)`${(0,Pv.usePattern)(t,h)}.test(${g})`,()=>{let _=c.includes(h);_||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:$v.Type.Str},d),s.opts.unevaluated&&l!==!0?e.assign((0,tc._)`${l}[${g}]`,!0):!_&&!s.allErrors&&e.if((0,tc.not)(d),()=>e.break())})})}}};_f.default=KI});var Ov=$(xf=>{"use strict";Object.defineProperty(xf,"__esModule",{value:!0});var GI=ce(),JI={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,GI.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"}};xf.default=JI});var Iv=$(vf=>{"use strict";Object.defineProperty(vf,"__esModule",{value:!0});var YI=Ct(),XI={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:YI.validateUnion,error:{message:"must match a schema in anyOf"}};vf.default=XI});var Av=$(bf=>{"use strict";Object.defineProperty(bf,"__esModule",{value:!0});var rc=X(),QI=ce(),eA={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,rc._)`{passingSchemas: ${t.passing}}`},tA={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:eA,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((d,l)=>{let f;(0,QI.alwaysValidSchema)(o,d)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:l,compositeRule:!0},c),l>0&&e.if((0,rc._)`${c} && ${i}`).assign(i,!1).assign(a,(0,rc._)`[${a}, ${l}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,l),f&&t.mergeEvaluated(f,rc.Name)})})}}};bf.default=tA});var Nv=$(Sf=>{"use strict";Object.defineProperty(Sf,"__esModule",{value:!0});var rA=ce(),nA={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,rA.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Sf.default=nA});var jv=$(kf=>{"use strict";Object.defineProperty(kf,"__esModule",{value:!0});var nc=X(),Mv=ce(),oA={message:({params:t})=>(0,nc.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,nc._)`{failingKeyword: ${t.ifClause}}`},sA={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:oA,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Mv.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Dv(n,"then"),s=Dv(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let d=e.let("ifClause");t.setParams({ifClause:d}),e.if(a,u("then",d),u("else",d))}else o?e.if(a,u("then")):e.if((0,nc.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let d=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(d)}function u(d,l){return()=>{let f=t.subschema({keyword:d},a);e.assign(i,a),t.mergeValidEvaluated(f,i),l?e.assign(l,(0,nc._)`${d}`):t.setParams({ifClause:d})}}}};function Dv(t,e){let r=t.schema[e];return r!==void 0&&!(0,Mv.alwaysValidSchema)(t,r)}kf.default=sA});var zv=$(Ef=>{"use strict";Object.defineProperty(Ef,"__esModule",{value:!0});var iA=ce(),aA={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,iA.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Ef.default=aA});var Lv=$(wf=>{"use strict";Object.defineProperty(wf,"__esModule",{value:!0});var cA=af(),uA=hv(),lA=cf(),dA=yv(),pA=_v(),fA=bv(),mA=kv(),hA=hf(),gA=Tv(),yA=Cv(),_A=Ov(),xA=Iv(),vA=Av(),bA=Nv(),SA=jv(),kA=zv();function EA(t=!1){let e=[_A.default,xA.default,vA.default,bA.default,SA.default,kA.default,mA.default,hA.default,fA.default,gA.default,yA.default];return t?e.push(uA.default,dA.default):e.push(cA.default,lA.default),e.push(pA.default),e}wf.default=EA});var Uv=$(Tf=>{"use strict";Object.defineProperty(Tf,"__esModule",{value:!0});var De=X(),wA={message:({schemaCode:t})=>(0,De.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,De._)`{format: ${t}}`},TA={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:wA,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:d,self:l}=a;if(!c.validateFormats)return;o?f():m();function f(){let p=r.scopeValue("formats",{ref:l.formats,code:c.code.formats}),h=r.const("fDef",(0,De._)`${p}[${i}]`),g=r.let("fType"),_=r.let("format");r.if((0,De._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,De._)`${h}.type || "string"`).assign(_,(0,De._)`${h}.validate`),()=>r.assign(g,(0,De._)`"string"`).assign(_,h)),t.fail$data((0,De.or)(x(),y()));function x(){return c.strictSchema===!1?De.nil:(0,De._)`${i} && !${_}`}function y(){let S=d.$async?(0,De._)`(${h}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,De._)`${_}(${n})`,E=(0,De._)`(typeof ${_} == "function" ? ${S} : ${_}.test(${n}))`;return(0,De._)`${_} && ${_} !== true && ${g} === ${e} && !${E}`}}function m(){let p=l.formats[s];if(!p){x();return}if(p===!0)return;let[h,g,_]=y(p);h===e&&t.pass(S());function x(){if(c.strictSchema===!1){l.logger.warn(E());return}throw new Error(E());function E(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function y(E){let O=E instanceof RegExp?(0,De.regexpCode)(E):c.code.formats?(0,De._)`${c.code.formats}${(0,De.getProperty)(s)}`:void 0,L=r.scopeValue("formats",{key:s,ref:E,code:O});return typeof E=="object"&&!(E instanceof RegExp)?[E.type||"string",E.validate,(0,De._)`${L}.validate`]:["string",E,L]}function S(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!d.$async)throw new Error("async format in sync schema");return(0,De._)`await ${_}(${n})`}return typeof g=="function"?(0,De._)`${_}(${n})`:(0,De._)`${_}.test(${n})`}}}};Tf.default=TA});var Hv=$(Pf=>{"use strict";Object.defineProperty(Pf,"__esModule",{value:!0});var PA=Uv(),RA=[PA.default];Pf.default=RA});var Fv=$(Co=>{"use strict";Object.defineProperty(Co,"__esModule",{value:!0});Co.contentVocabulary=Co.metadataVocabulary=void 0;Co.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Co.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Bv=$(Rf=>{"use strict";Object.defineProperty(Rf,"__esModule",{value:!0});var $A=Yx(),CA=dv(),OA=Lv(),IA=Hv(),Zv=Fv(),AA=[$A.default,CA.default,(0,OA.default)(),IA.default,Zv.metadataVocabulary,Zv.contentVocabulary];Rf.default=AA});var Vv=$(oc=>{"use strict";Object.defineProperty(oc,"__esModule",{value:!0});oc.DiscrError=void 0;var qv;(function(t){t.Tag="tag",t.Mapping="mapping"})(qv||(oc.DiscrError=qv={}))});var Kv=$(Cf=>{"use strict";Object.defineProperty(Cf,"__esModule",{value:!0});var Oo=X(),$f=Vv(),Wv=Ua(),NA=Hs(),DA=ce(),MA={message:({params:{discrError:t,tagName:e}})=>t===$f.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Oo._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},jA={keyword:"discriminator",type:"object",schemaType:"object",error:MA,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,Oo._)`${r}${(0,Oo.getProperty)(a)}`);e.if((0,Oo._)`typeof ${u} == "string"`,()=>d(),()=>t.error(!1,{discrError:$f.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function d(){let m=f();e.if(!1);for(let p in m)e.elseIf((0,Oo._)`${u} === ${p}`),e.assign(c,l(m[p]));e.else(),t.error(!1,{discrError:$f.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function l(m){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:m},p);return t.mergeEvaluated(h,Oo.Name),p}function f(){var m;let p={},h=_(o),g=!0;for(let S=0;S<i.length;S++){let E=i[S];if(E?.$ref&&!(0,DA.schemaHasRulesButRef)(E,s.self.RULES)){let L=E.$ref;if(E=Wv.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,L),E instanceof Wv.SchemaEnv&&(E=E.schema),E===void 0)throw new NA.default(s.opts.uriResolver,s.baseId,L)}let O=(m=E?.properties)===null||m===void 0?void 0:m[a];if(typeof O!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||_(E)),x(O,S)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function _({required:S}){return Array.isArray(S)&&S.includes(a)}function x(S,E){if(S.const)y(S.const,E);else if(S.enum)for(let O of S.enum)y(O,E);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function y(S,E){if(typeof S!="string"||S in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[S]=E}}}};Cf.default=jA});var Gv=$((DZ,zA)=>{zA.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 If=$((Ee,Of)=>{"use strict";Object.defineProperty(Ee,"__esModule",{value:!0});Ee.MissingRefError=Ee.ValidationError=Ee.CodeGen=Ee.Name=Ee.nil=Ee.stringify=Ee.str=Ee._=Ee.KeywordCxt=Ee.Ajv=void 0;var LA=qx(),UA=Bv(),HA=Kv(),Jv=Gv(),FA=["/properties"],sc="http://json-schema.org/draft-07/schema",Io=class extends LA.default{_addVocabularies(){super._addVocabularies(),UA.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(HA.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Jv,FA):Jv;this.addMetaSchema(e,sc,!1),this.refs["http://json-schema.org/schema"]=sc}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(sc)?sc:void 0)}};Ee.Ajv=Io;Of.exports=Ee=Io;Of.exports.Ajv=Io;Object.defineProperty(Ee,"__esModule",{value:!0});Ee.default=Io;var ZA=Us();Object.defineProperty(Ee,"KeywordCxt",{enumerable:!0,get:function(){return ZA.KeywordCxt}});var Ao=X();Object.defineProperty(Ee,"_",{enumerable:!0,get:function(){return Ao._}});Object.defineProperty(Ee,"str",{enumerable:!0,get:function(){return Ao.str}});Object.defineProperty(Ee,"stringify",{enumerable:!0,get:function(){return Ao.stringify}});Object.defineProperty(Ee,"nil",{enumerable:!0,get:function(){return Ao.nil}});Object.defineProperty(Ee,"Name",{enumerable:!0,get:function(){return Ao.Name}});Object.defineProperty(Ee,"CodeGen",{enumerable:!0,get:function(){return Ao.CodeGen}});var BA=za();Object.defineProperty(Ee,"ValidationError",{enumerable:!0,get:function(){return BA.default}});var qA=Hs();Object.defineProperty(Ee,"MissingRefError",{enumerable:!0,get:function(){return qA.default}})});var ob=$(fr=>{"use strict";Object.defineProperty(fr,"__esModule",{value:!0});fr.formatNames=fr.fastFormats=fr.fullFormats=void 0;function pr(t,e){return{validate:t,compare:e}}fr.fullFormats={date:pr(eb,Mf),time:pr(Nf(!0),jf),"date-time":pr(Yv(!0),rb),"iso-time":pr(Nf(),tb),"iso-date-time":pr(Yv(),nb),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:YA,"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:oN,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:XA,int32:{type:"number",validate:tN},int64:{type:"number",validate:rN},float:{type:"number",validate:Qv},double:{type:"number",validate:Qv},password:!0,binary:!0};fr.fastFormats={...fr.fullFormats,date:pr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Mf),time:pr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,jf),"date-time":pr(/^\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,rb),"iso-time":pr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,tb),"iso-date-time":pr(/^\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,nb),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};fr.formatNames=Object.keys(fr.fullFormats);function VA(t){return t%4===0&&(t%100!==0||t%400===0)}var WA=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,KA=[0,31,28,31,30,31,30,31,31,30,31,30,31];function eb(t){let e=WA.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&&VA(r)?29:KA[n])}function Mf(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Af=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Nf(t){return function(r){let n=Af.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),d=+(n[7]||0);if(u>23||d>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let l=s-d*c,f=o-u*c-(l<0?1:0);return(f===23||f===-1)&&(l===59||l===-1)&&i<61}}function jf(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 tb(t,e){if(!(t&&e))return;let r=Af.exec(t),n=Af.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 Df=/t|\s/i;function Yv(t){let e=Nf(t);return function(n){let o=n.split(Df);return o.length===2&&eb(o[0])&&e(o[1])}}function rb(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function nb(t,e){if(!(t&&e))return;let[r,n]=t.split(Df),[o,s]=e.split(Df),i=Mf(r,o);if(i!==void 0)return i||jf(n,s)}var GA=/\/|:/,JA=/^(?:[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 YA(t){return GA.test(t)&&JA.test(t)}var Xv=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function XA(t){return Xv.lastIndex=0,Xv.test(t)}var QA=-(2**31),eN=2**31-1;function tN(t){return Number.isInteger(t)&&t<=eN&&t>=QA}function rN(t){return Number.isInteger(t)}function Qv(){return!0}var nN=/[^\\]\\Z/;function oN(t){if(nN.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var sb=$(No=>{"use strict";Object.defineProperty(No,"__esModule",{value:!0});No.formatLimitDefinition=void 0;var sN=If(),Jt=X(),Jr=Jt.operators,ic={formatMaximum:{okStr:"<=",ok:Jr.LTE,fail:Jr.GT},formatMinimum:{okStr:">=",ok:Jr.GTE,fail:Jr.LT},formatExclusiveMaximum:{okStr:"<",ok:Jr.LT,fail:Jr.GTE},formatExclusiveMinimum:{okStr:">",ok:Jr.GT,fail:Jr.LTE}},iN={message:({keyword:t,schemaCode:e})=>(0,Jt.str)`should be ${ic[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Jt._)`{comparison: ${ic[t].okStr}, limit: ${e}}`};No.formatLimitDefinition={keyword:Object.keys(ic),type:"string",schemaType:"string",$data:!0,error:iN,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 sN.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():d();function u(){let f=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,Jt._)`${f}[${c.schemaCode}]`);t.fail$data((0,Jt.or)((0,Jt._)`typeof ${m} != "object"`,(0,Jt._)`${m} instanceof RegExp`,(0,Jt._)`typeof ${m}.compare != "function"`,l(m)))}function d(){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,Jt._)`${i.code.formats}${(0,Jt.getProperty)(f)}`:void 0});t.fail$data(l(p))}function l(f){return(0,Jt._)`${f}.compare(${r}, ${n}) ${ic[o].fail} 0`}},dependencies:["format"]};var aN=t=>(t.addKeyword(No.formatLimitDefinition),t);No.default=aN});var ub=$((ti,cb)=>{"use strict";Object.defineProperty(ti,"__esModule",{value:!0});var Do=ob(),cN=sb(),zf=X(),ib=new zf.Name("fullFormats"),uN=new zf.Name("fastFormats"),Lf=(t,e={keywords:!0})=>{if(Array.isArray(e))return ab(t,e,Do.fullFormats,ib),t;let[r,n]=e.mode==="fast"?[Do.fastFormats,uN]:[Do.fullFormats,ib],o=e.formats||Do.formatNames;return ab(t,o,r,n),e.keywords&&(0,cN.default)(t),t};Lf.get=(t,e="full")=>{let n=(e==="fast"?Do.fastFormats:Do.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function ab(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,zf._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}cb.exports=ti=Lf;Object.defineProperty(ti,"__esModule",{value:!0});ti.default=Lf});var Wb,Kb=de(()=>{"use strict";Wb={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot","JetBrains Client":"jetbrains-copilot","IntelliJ IDEA":"jetbrains-copilot",PyCharm:"jetbrains-copilot",Codex:"codex","codex-mcp-client":"codex","Kilo Code":"kilo","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi","omp-coding-agent":"omp",Zed:"zed",zed:"zed","qwen-code":"qwen-code","qwen-cli-mcp-client":"qwen-code"}});import{join as om}from"node:path";import{accessSync as VN,copyFileSync as WN,constants as KN,mkdirSync as GN}from"node:fs";import{homedir as Gb}from"node:os";var be,xt=de(()=>{"use strict";be=class{constructor(e){this.sessionDirSegments=e}getSessionDir(){let e=om(Gb(),...this.sessionDirSegments,"context-mode","sessions");return GN(e,{recursive:!0}),e}getConfigDir(e){return om(Gb(),...this.sessionDirSegments)}getInstructionFiles(){return["CLAUDE.md"]}getMemoryDir(){return om(this.getConfigDir(),"memory")}backupSettings(){let e=this.getSettingsPath();try{VN(e,KN.R_OK);let r=e+".bak";return WN(e,r),r}catch{return null}}}});var zo,sm=de(()=>{"use strict";xt();zo=class extends be{parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??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[this.projectDirEnvVar]??process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??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[this.projectDirEnvVar]??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{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??""}}});async function JN(){if(Lo)return Lo;if(li)return null;try{let t=[new URL("../../scripts/plugin-cache-integrity.mjs",import.meta.url),new URL("./scripts/plugin-cache-integrity.mjs",import.meta.url)],e=null;for(let r of t)try{let n=await import(r.href);if(typeof n?.assertPluginCacheIntegrity=="function")return Lo=n,Lo}catch(n){e=n}return li=e instanceof Error?e.message:String(e??"not found"),null}catch(t){return li=t instanceof Error?t.message:String(t),null}}function Jb(t){if(Lo){let e=Lo.assertPluginCacheIntegrity({pluginRoot:t});return e.ok?{status:"OK",detail:`${t} (all required runtime siblings present)`}:{status:"FAIL",detail:`missing: ${e.missing.join(", ")}`}}return li?{status:"FAIL",detail:`integrity helper unavailable: ${li}`}:{status:"FAIL",detail:"integrity helper not yet loaded"}}var Lo,li,Yb=de(()=>{"use strict";Lo=null,li=null;JN()});function Ie(t){let e=process.execPath.replace(/\\/g,"/"),r=t.replace(/\\/g,"/");return`"${e}" "${r}"`}function bc(t){if(typeof t!="string"||t.length===0)return null;let e=t.match(/^"([^"]+)"\s+"([^"]+)"\s*$/);return e?{nodePath:e[1],scriptPath:e[2]}:null}var Xr=de(()=>{"use strict"});function di(t,e){let r=zn[e],n=am(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function am(t,e){if(e){let r=zn[t];return Ie(`${e}/hooks/${r}`)}return`context-mode hook claude-code ${t.toLowerCase()}`}function cm(t){let e=bc(t);if(e)return e.scriptPath.endsWith(".mjs")?e.scriptPath:null;let r=t.match(/^\s*node\s+"([^"]+\.mjs)"\s*$/);if(r)return r[1];let n=t.match(/^\s*node\s+(\S+\.mjs)\s*$/);return n?n[1]:null}function eS(t){let e=Object.values(zn);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var Yt,YN,im,Xb,XN,JB,zn,Qb,YB,tS=de(()=>{"use strict";Xr();Yt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},YN="mcp__",im=["Bash","WebFetch","Read","Grep","Agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute",YN],Xb=im.join("|"),XN=["Bash","Read","Write","Edit","NotebookEdit","Glob","Grep","TodoWrite","TaskCreate","TaskUpdate","EnterPlanMode","ExitPlanMode","Skill","Agent","AskUserQuestion","EnterWorktree","mcp__"],JB=XN.join("|"),zn={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},Qb=[Yt.PRE_TOOL_USE,Yt.SESSION_START],YB=[Yt.POST_TOOL_USE,Yt.PRE_COMPACT,Yt.USER_PROMPT_SUBMIT]});var lm={};Ue(lm,{ClaudeCodeAdapter:()=>um});import{readFileSync as Sc,writeFileSync as rS,existsSync as nS,readdirSync as QN,chmodSync as eD,accessSync as tD,mkdirSync as rD,constants as nD}from"node:fs";import{resolve as kc,join as Ln}from"node:path";import{homedir as oS}from"node:os";var um,dm=de(()=>{"use strict";sm();Un();Yb();Xr();tS();um=class extends zo{constructor(){super([".claude"])}name="Claude Code";paradigm="json-stdio";projectDirEnvVar="CLAUDE_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getConfigDir(e){return vt()}getSessionDir(){let e=Ln(this.getConfigDir(),"context-mode","sessions");return rD(e,{recursive:!0}),e}getSettingsPath(){return Ln(this.getConfigDir(),"settings.json")}generateHookConfig(e){let r=Ie(`${e}/hooks/pretooluse.mjs`);return{PreToolUse:[...im].map(o=>({matcher:o,hooks:[{type:"command",command:r}]})),PostToolUse:[{matcher:"",hooks:[{type:"command",command:Ie(`${e}/hooks/posttooluse.mjs`)}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:Ie(`${e}/hooks/precompact.mjs`)}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:Ie(`${e}/hooks/userpromptsubmit.mjs`)}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:Ie(`${e}/hooks/sessionstart.mjs`)}]}]}}readSettings(){try{let e=Sc(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){rS(this.getSettingsPath(),JSON.stringify(e,null,2)+`
|
|
10
10
|
`,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"PreToolUse hook",status:"fail",message:`Could not read ${this.getSettingsPath()}`,fix:"context-mode upgrade"}),r;let o=n.hooks,s=this.readPluginHooks(e),i=this.checkHookType(o,s,Yt.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,Yt.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}getHealthChecks(e){let r=Object.entries(zn).map(([o,s])=>{let i=Ln(e,"hooks",s);return{name:`Hook script: ${o} (${s})`,check:()=>nS(i)?{status:"OK",detail:i}:{status:"FAIL",detail:`not found at ${i}`}}}),n={name:"Plugin cache integrity",check:()=>Jb(e)};return[...r,n]}readPluginHooks(e){let r=[Ln(e,"hooks","hooks.json"),Ln(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=Sc(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=>di(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>di(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=Ln(this.getConfigDir(),"plugins","installed_plugins.json"),o=JSON.parse(Sc(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=Array.from(new Set([this.getConfigDir(),vt(),kc(oS(),".claude"),kc(oS(),".config","claude")]));for(let r of e){let n=kc(r,"plugins","cache","context-mode","context-mode");try{let s=QN(n).filter(i=>/^\d+\.\d+\.\d+/.test(i)).sort((i,a)=>{let c=i.split(".").map(Number),u=a.split(".").map(Number);for(let d=0;d<3;d++)if((c[d]??0)!==(u[d]??0))return(c[d]??0)-(u[d]??0);return 0});if(s.length>0)return s[s.length-1]}catch{}}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[];for(let a of Object.keys(n)){let c=n[a];if(!Array.isArray(c))continue;let u=c.filter(l=>{let f=l;if(!eS(f))return!0;let m=f.hooks??[];return m.every(h=>!h.command||!cm(h.command))?!0:m.every(h=>{let g=h.command?cm(h.command):null;return g?nS(g):!0})}),d=c.length-u.length;d>0&&(n[a]=u,o.push(`Removed ${d} stale ${a} hook(s)`))}let s=this.readPluginHooks(e);if(s&&Qb.every(c=>this.checkHookType(void 0,s,c))){let c=Object.values(zn),u=d=>d!=null&&(c.some(l=>d.includes(l))||d.includes("context-mode hook"));for(let d of Object.keys(n)){let l=n[d];if(!Array.isArray(l))continue;let f=0;for(let p of l){let h=p,g=h.hooks??[],_=g.length;h.hooks=g.filter(x=>!u(x.command)),f+=_-h.hooks.length}let m=l.filter(p=>{let h=p.hooks;return Array.isArray(h)&&h.length>0});(f>0||m.length!==l.length)&&(n[d]=m,f>0&&o.push(`Removed ${f} duplicate ${d} hook(s) \u2014 covered by plugin hooks.json`))}return r.hooks=n,this.writeSettings(r),o.push("Skipped settings.json registration \u2014 plugin hooks.json is sufficient"),o}let i=[Yt.PRE_TOOL_USE,Yt.SESSION_START];for(let a of i){let c=am(a,e);if(a===Yt.PRE_TOOL_USE){let u={matcher:Xb,hooks:[{type:"command",command:c}]},d=n.PreToolUse;if(d&&Array.isArray(d)){let l=d.findIndex(f=>di(f,a));l>=0?(d[l]=u,o.push(`Updated existing ${a} hook entry`)):(d.push(u),o.push(`Added ${a} hook entry`)),n.PreToolUse=d}else n.PreToolUse=[u],o.push(`Created ${a} hooks section`)}else{let u={matcher:"",hooks:[{type:"command",command:c}]},d=n[a];if(d&&Array.isArray(d)){let l=d.findIndex(f=>di(f,a));l>=0?(d[l]=u,o.push(`Updated existing ${a} hook entry`)):(d.push(u),o.push(`Added ${a} hook entry`)),n[a]=d}else n[a]=[u],o.push(`Created ${a} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(zn)){let o=kc(e,"hooks",n);try{tD(o,nD.R_OK),eD(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=Ln(this.getConfigDir(),"plugins","installed_plugins.json"),o=JSON.parse(Sc(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();rS(n,JSON.stringify(o,null,2)+`
|
|
11
|
-
`,"utf-8")}catch{}}extractSessionId(e){if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return e.session_id?e.session_id:process.env.CLAUDE_SESSION_ID?process.env.CLAUDE_SESSION_ID:`pid-${process.ppid}`}}});function Hn(t,e){let r=pm[t];return e&&r?
|
|
12
|
-
`,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"BeforeTool hook",status:"fail",message:"Could not read ~/.gemini/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=o?.[
|
|
13
|
-
`,"utf-8")}catch{}}getProjectDir(e){return e.cwd??process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR??process.cwd()}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var Fn,gq,yq,lS=de(()=>{"use strict";Fn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},gq=[Fn.BEFORE,Fn.AFTER],yq=[Fn.COMPACTING]});var pS={};Ue(pS,{OpenCodeAdapter:()=>hm});import{readFileSync as dS,writeFileSync as lD,mkdirSync as dD,copyFileSync as pD,accessSync as fD,constants as mD}from"node:fs";import{resolve as Dt,join as Qr}from"node:path";import{homedir as en}from"node:os";function uD(t){return t.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/,(\s*[}\]])/g,"$1")}var hm,fS=de(()=>{"use strict";xt();lS();hm=class extends
|
|
14
|
-
`,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r;let o=this.hasContextModePlugin(n);return Array.isArray(n.plugin)?r.push({check:"Plugin registration",status:o?"pass":"fail",message:o?"context-mode found in plugin array":"context-mode not found in plugin array",fix:o?void 0:"context-mode upgrade"}):r.push({check:"Plugin registration",status:"fail",message:`No plugin array found in ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),this.hasLegacyContextModeMcp(n)&&r.push({check:"Legacy MCP registration",status:"warn",message:"mcp.context-mode is redundant: ctx_* tools are now provided by the plugin",fix:"context-mode upgrade (removes only mcp.context-mode; preserves other MCP servers)"}),r.push({check:"SessionStart hook",status:"pass",message:"SessionStart via experimental.chat.system.transform surrogate (native hook pending #14808, #5409)"}),r}checkPluginRegistration(){let e=this.readSettings();return e?this.hasContextModePlugin(e)?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:`context-mode not found in ${this.platform}.json plugin array`,fix:"context-mode upgrade"}:{check:"Plugin registration",status:"warn",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`}}getInstalledVersion(){try{let e=Dt(en(),".cache",this.platform,"node_modules","context-mode","package.json"),r=JSON.parse(dS(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];o.some(i=>i.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;let s=r.mcp;if(s&&typeof s=="object"&&!Array.isArray(s)){let i=s;Object.prototype.hasOwnProperty.call(i,"context-mode")&&(delete i["context-mode"],n.push("Removed legacy context-mode MCP block (plugin-native tools)")),Object.keys(i).length===0&&delete r.mcp}return this.writeSettings(r),n}backupSettings(){let e=this.checkPluginRegistration();if(!this.settingsPath)return null;if(e.status==="pass")return this.settingsPath;try{fD(this.settingsPath,mD.R_OK);let r=this.settingsPath+".bak";return pD(this.settingsPath,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}hasContextModePlugin(e){let r=e.plugin;return Array.isArray(r)&&r.some(n=>typeof n=="string"&&n.includes("context-mode"))}hasLegacyContextModeMcp(e){let r=e.mcp;return!!(r&&typeof r=="object"&&!Array.isArray(r)&&Object.prototype.hasOwnProperty.call(r,"context-mode"))}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var Zn,Eq,wq,mS=de(()=>{"use strict";Zn={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},Eq=[Zn.TOOL_CALL_BEFORE,Zn.TOOL_CALL_AFTER],wq=[Zn.COMMAND_NEW]});var hS={};Ue(hS,{OpenClawAdapter:()=>xm});import{readFileSync as gm,writeFileSync as hD,copyFileSync as gD,accessSync as yD,constants as _D}from"node:fs";import{resolve as
|
|
15
|
-
`,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read openclaw.json",fix:"context-mode upgrade"}),r;let o=n.plugins,s=o?.entries;if(s){let a=Object.keys(s).some(c=>c.includes("context-mode"));if(r.push({check:"Plugin registration",status:a?"pass":"fail",message:a?"context-mode found in plugins.entries":"context-mode not found in plugins.entries",fix:a?void 0:"context-mode upgrade"}),a){let u=s["context-mode"]?.enabled!==!1;r.push({check:"Plugin enabled",status:u?"pass":"warn",message:u?"context-mode plugin is enabled":"context-mode plugin is disabled"})}}else r.push({check:"Plugin registration",status:"fail",message:"No plugins.entries found in openclaw.json",fix:"context-mode upgrade"});return o?.slots?.contextEngine==="context-mode"?r.push({check:"Context engine",status:"pass",message:"context-mode registered as context engine (owns compaction)"}):r.push({check:"Context engine",status:"warn",message:"context-mode not set as context engine \u2014 compaction will use default engine"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read openclaw.json"};let n=e.plugins?.entries;return n&&Object.keys(n).some(s=>s.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugins.entries"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in openclaw.json plugins.entries",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=
|
|
11
|
+
`,"utf-8")}catch{}}extractSessionId(e){if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return e.session_id?e.session_id:process.env.CLAUDE_SESSION_ID?process.env.CLAUDE_SESSION_ID:`pid-${process.ppid}`}}});function Hn(t,e){let r=pm[t];return e&&r?Ie(`${e}/hooks/${r}`):`context-mode hook gemini-cli ${t.toLowerCase()}`}var we,sS,pm,cq,uq,iS=de(()=>{"use strict";Xr();we={BEFORE_AGENT:"BeforeAgent",BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},sS="mcp__(?!.*context-mode)",pm={[we.BEFORE_AGENT]:"beforeagent.mjs",[we.BEFORE_TOOL]:"beforetool.mjs",[we.AFTER_TOOL]:"aftertool.mjs",[we.PRE_COMPRESS]:"precompress.mjs",[we.SESSION_START]:"sessionstart.mjs"},cq=[we.BEFORE_TOOL,we.SESSION_START],uq=[we.AFTER_TOOL,we.PRE_COMPRESS]});var cS={};Ue(cS,{GeminiCLIAdapter:()=>mm});import{readFileSync as fm,writeFileSync as aS,mkdirSync as oD,accessSync as sD,chmodSync as iD,constants as aD}from"node:fs";import{resolve as pi,join as cD}from"node:path";import{homedir as Ec}from"node:os";var mm,uS=de(()=>{"use strict";xt();iS();mm=class extends be{constructor(){super([".gemini"])}name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),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(r),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),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(r),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 pi(Ec(),".gemini","settings.json")}getInstructionFiles(){return["GEMINI.md"]}generateHookConfig(e){return{[we.BEFORE_AGENT]:[{matcher:"",hooks:[{type:"command",command:Hn(we.BEFORE_AGENT,e)}]}],[we.BEFORE_TOOL]:[{matcher:`run_shell_command|read_file|read_many_files|grep_search|search_file_content|web_fetch|activate_skill|mcp__plugin_context-mode|mcp__context-mode|${sS}`,hooks:[{type:"command",command:Hn(we.BEFORE_TOOL,e)}]}],[we.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Hn(we.AFTER_TOOL,e)}]}],[we.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Hn(we.PRE_COMPRESS,e)}]}],[we.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Hn(we.SESSION_START,e)}]}]}}readSettings(){try{let e=fm(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=pi(Ec(),".gemini");oD(r,{recursive:!0}),aS(this.getSettingsPath(),JSON.stringify(e,null,2)+`
|
|
12
|
+
`,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"BeforeTool hook",status:"fail",message:"Could not read ~/.gemini/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=o?.[we.BEFORE_TOOL];if(s&&s.length>0){let a=s.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"BeforeTool hook",status:a?"pass":"fail",message:a?"BeforeTool hook configured":"BeforeTool exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"BeforeTool hook",status:"fail",message:"No BeforeTool hooks found",fix:"context-mode upgrade"});let i=o?.[we.SESSION_START];if(i&&i.length>0){let a=i.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"SessionStart exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"SessionStart hook",status:"fail",message:"No SessionStart hooks found",fix:"context-mode upgrade"});return r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read ~/.gemini/settings.json"};let r=e.extensions;return r&&(Array.isArray(r)?r.some(o=>typeof o=="string"&&o.includes("context-mode")):Object.keys(r).some(o=>o.includes("context-mode")))?{check:"Plugin registration",status:"pass",message:"context-mode found in extensions"}:{check:"Plugin registration",status:"warn",message:"context-mode not found in extensions (might be using standalone MCP mode)"}}getInstalledVersion(){try{let e=pi(Ec(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(fm(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[],s=[{name:we.BEFORE_AGENT},{name:we.BEFORE_TOOL},{name:we.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:Hn(i.name,e)}]},u=n[i.name];if(u&&Array.isArray(u)){let d=u.findIndex(l=>l.hooks?.some(m=>m.command?.includes("context-mode")));d>=0?(u[d]=c,o.push(`Updated existing ${i.name} hook entry`)):(u.push(c),o.push(`Added ${i.name} hook entry`)),n[i.name]=u}else n[i.name]=[c],o.push(`Created ${i.name} hooks section`)}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){let r=[],n=cD(e,"hooks","gemini-cli");for(let o of Object.values(pm)){let s=pi(n,o);try{sD(s,aD.R_OK),iD(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=pi(Ec(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(fm(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),aS(n,JSON.stringify(o,null,2)+`
|
|
13
|
+
`,"utf-8")}catch{}}getProjectDir(e){return e.cwd??process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR??process.cwd()}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var Fn,gq,yq,lS=de(()=>{"use strict";Fn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},gq=[Fn.BEFORE,Fn.AFTER],yq=[Fn.COMPACTING]});var pS={};Ue(pS,{OpenCodeAdapter:()=>hm});import{readFileSync as dS,writeFileSync as lD,mkdirSync as dD,copyFileSync as pD,accessSync as fD,constants as mD}from"node:fs";import{resolve as Dt,join as Qr}from"node:path";import{homedir as en}from"node:os";function uD(t){return t.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/,(\s*[}\]])/g,"$1")}var hm,fS=de(()=>{"use strict";xt();lS();hm=class extends be{get name(){return this.platform==="kilo"?"KiloCode":"OpenCode"}paradigm="ts-plugin";settingsPath;capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};platform;constructor(e="opencode"){super([".config",e]),this.platform=e}parsePreToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},toolOutput:r.output,isError:void 0,sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")throw new Error(e.reason??"Blocked by context-mode hook");if(e.decision==="modify"&&e.updatedInput)return{args:e.updatedInput};if(e.decision==="ask")throw new Error(e.reason??"Action requires user confirmation (security policy)")}formatPostToolUseResponse(e){let r={};return e.updatedOutput&&(r.output=e.updatedOutput),e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return this.settingsPath??Dt(`${this.platform}.json`)}paths(){return this.platform==="kilo"?[Dt("kilo.json"),Dt("kilo.jsonc"),Dt(".kilo","kilo.json"),Dt(".kilo","kilo.jsonc"),Dt(".kilocode","kilo.json"),Dt(".kilocode","kilo.jsonc"),Qr(en(),".config","kilo","kilo.json"),Qr(en(),".config","kilo","kilo.jsonc")]:[Dt("opencode.json"),Dt("opencode.jsonc"),Dt(".opencode","opencode.json"),Dt(".opencode","opencode.jsonc"),Qr(en(),".config","opencode","opencode.json"),Qr(en(),".config","opencode","opencode.jsonc")]}getSessionDir(){let e=Qr(this.getConfigDir(),"context-mode","sessions");return dD(e,{recursive:!0}),e}getConfigDir(e){let r;return process.platform==="win32"?r=process.env.APPDATA||Qr(en(),"AppData","Roaming"):r=process.env.XDG_CONFIG_HOME||Qr(en(),".config"),Qr(r,this.platform)}getInstructionFiles(){return["AGENTS.md"]}generateHookConfig(e){return{[Fn.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[Fn.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[Fn.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){this.settingsPath=void 0;let e=this.paths(),r=new Set(e.filter(s=>s.includes(en()))),n=null,o;for(let s of e)try{let i=dS(s,"utf-8"),a=s.endsWith(".jsonc")?uD(i):i,c=JSON.parse(a);n||(n=c,o=s);let u=r.has(s);if(this.hasContextModePlugin(c)||u)return this.settingsPath=s,c}catch{continue}return n?(this.settingsPath=o,n):null}writeSettings(e){lD(this.getSettingsPath(),JSON.stringify(e,null,2)+`
|
|
14
|
+
`,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r;let o=this.hasContextModePlugin(n);return Array.isArray(n.plugin)?r.push({check:"Plugin registration",status:o?"pass":"fail",message:o?"context-mode found in plugin array":"context-mode not found in plugin array",fix:o?void 0:"context-mode upgrade"}):r.push({check:"Plugin registration",status:"fail",message:`No plugin array found in ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),this.hasLegacyContextModeMcp(n)&&r.push({check:"Legacy MCP registration",status:"warn",message:"mcp.context-mode is redundant: ctx_* tools are now provided by the plugin",fix:"context-mode upgrade (removes only mcp.context-mode; preserves other MCP servers)"}),r.push({check:"SessionStart hook",status:"pass",message:"SessionStart via experimental.chat.system.transform surrogate (native hook pending #14808, #5409)"}),r}checkPluginRegistration(){let e=this.readSettings();return e?this.hasContextModePlugin(e)?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:`context-mode not found in ${this.platform}.json plugin array`,fix:"context-mode upgrade"}:{check:"Plugin registration",status:"warn",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`}}getInstalledVersion(){try{let e=Dt(en(),".cache",this.platform,"node_modules","context-mode","package.json"),r=JSON.parse(dS(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];o.some(i=>i.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;let s=r.mcp;if(s&&typeof s=="object"&&!Array.isArray(s)){let i=s;Object.prototype.hasOwnProperty.call(i,"context-mode")&&(delete i["context-mode"],n.push("Removed legacy context-mode MCP block (plugin-native tools)")),Object.keys(i).length===0&&delete r.mcp}return this.writeSettings(r),n}backupSettings(){let e=this.checkPluginRegistration();if(!this.settingsPath)return null;if(e.status==="pass")return this.settingsPath;try{fD(this.settingsPath,mD.R_OK);let r=this.settingsPath+".bak";return pD(this.settingsPath,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}hasContextModePlugin(e){let r=e.plugin;return Array.isArray(r)&&r.some(n=>typeof n=="string"&&n.includes("context-mode"))}hasLegacyContextModeMcp(e){let r=e.mcp;return!!(r&&typeof r=="object"&&!Array.isArray(r)&&Object.prototype.hasOwnProperty.call(r,"context-mode"))}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var Zn,Eq,wq,mS=de(()=>{"use strict";Zn={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},Eq=[Zn.TOOL_CALL_BEFORE,Zn.TOOL_CALL_AFTER],wq=[Zn.COMMAND_NEW]});var hS={};Ue(hS,{OpenClawAdapter:()=>xm});import{readFileSync as gm,writeFileSync as hD,copyFileSync as gD,accessSync as yD,constants as _D}from"node:fs";import{resolve as wr,join as ym}from"node:path";import{homedir as _m}from"node:os";var xm,gS=de(()=>{"use strict";xt();mS();xm=class extends be{constructor(){super([".openclaw"])}name="OpenClaw";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),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:this.getProjectDir(r),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),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(r),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 wr("openclaw.json")}getConfigDir(e){return wr(e??process.cwd())}getInstructionFiles(){return["AGENTS.md"]}getMemoryDir(){return ym(this.getConfigDir(),"memory")}generateHookConfig(e){return{[Zn.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[Zn.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[Zn.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[wr("openclaw.json"),wr(".openclaw","openclaw.json"),ym(_m(),".openclaw","openclaw.json")];for(let r of e)try{let n=gm(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=wr("openclaw.json");hD(r,JSON.stringify(e,null,2)+`
|
|
15
|
+
`,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read openclaw.json",fix:"context-mode upgrade"}),r;let o=n.plugins,s=o?.entries;if(s){let a=Object.keys(s).some(c=>c.includes("context-mode"));if(r.push({check:"Plugin registration",status:a?"pass":"fail",message:a?"context-mode found in plugins.entries":"context-mode not found in plugins.entries",fix:a?void 0:"context-mode upgrade"}),a){let u=s["context-mode"]?.enabled!==!1;r.push({check:"Plugin enabled",status:u?"pass":"warn",message:u?"context-mode plugin is enabled":"context-mode plugin is disabled"})}}else r.push({check:"Plugin registration",status:"fail",message:"No plugins.entries found in openclaw.json",fix:"context-mode upgrade"});return o?.slots?.contextEngine==="context-mode"?r.push({check:"Context engine",status:"pass",message:"context-mode registered as context engine (owns compaction)"}):r.push({check:"Context engine",status:"warn",message:"context-mode not set as context engine \u2014 compaction will use default engine"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read openclaw.json"};let n=e.plugins?.entries;return n&&Object.keys(n).some(s=>s.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugins.entries"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in openclaw.json plugins.entries",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=wr(_m(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(gm(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=wr("node_modules","context-mode","package.json"),r=JSON.parse(gm(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=[wr("openclaw.json"),wr(".openclaw","openclaw.json"),ym(_m(),".openclaw","openclaw.json")];for(let r of e)try{yD(r,_D.R_OK);let n=r+".bak";return gD(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getProjectDir(e){return e.cwd??process.env.OPENCLAW_PROJECT_DIR??process.cwd()}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});import{homedir as yS}from"node:os";import{resolve as vm}from"node:path";function wc(){let t=process.env.CODEX_HOME;return t?t.startsWith("~")?vm(yS(),t.replace(/^~[/\\]?/,"")):vm(t):vm(yS(),".codex")}var bm=de(()=>{"use strict"});var bS={};Ue(bS,{CodexAdapter:()=>Em});import{readFileSync as Uo,writeFileSync as _S,accessSync as xD,copyFileSync as vD,constants as bD,mkdirSync as Sm}from"node:fs";import{resolve as SD,dirname as km,join as Tc}from"node:path";import{fileURLToPath as kD}from"node:url";function xS(t,e){let r=t.split(/\r?\n/),n=!1,o=[];for(let s of r){let i=s.match(/^\s*\[([^\]]+)\]\s*(?:#.*)?$/);if(i){if(n)break;n=i[1]?.trim()===e;continue}n&&o.push(s)}return n?o.join(`
|
|
16
16
|
`):null}function vS(t){let e=xS(t,"features");return e!==null&&/^\s*hooks\s*=\s*true\s*(?:#.*)?$/mi.test(e)}function TD(t){let e=xS(t,"features");return e!==null&&/^\s*codex_hooks\s*=\s*true\s*(?:#.*)?$/mi.test(e)}function PD(t){if(vS(t))return{text:t,changed:!1};let e=t.includes(`\r
|
|
17
17
|
`)?`\r
|
|
18
18
|
`:`
|
|
19
19
|
`,r=t.split(/\r?\n/),n=r.findIndex(s=>/^\s*\[features\]\s*(?:#.*)?$/.test(s));if(n===-1){let s=t.length>0&&!t.endsWith(`
|
|
20
|
-
`)?e:"";return{text:`${t}${s}[features]${e}hooks = true${e}`,changed:!0}}let o=r.length;for(let s=n+1;s<r.length;s++)if(/^\s*\[[^\]]+\]\s*(?:#.*)?$/.test(r[s]??"")){o=s;break}for(let s=n+1;s<o;s++)if(/^\s*hooks\s*=/.test(r[s]??""))return r[s]="hooks = true",{text:r.join(e),changed:!0};return r.splice(n+1,0,"hooks = true"),{text:r.join(e),changed:!0}}var ED,Bn,wD,Em,SS=de(()=>{"use strict";xt();bm();ED="local_shell|shell|shell_command|exec_command|Bash|Shell|apply_patch|Edit|Write|grep_files|ctx_execute|ctx_execute_file|ctx_batch_execute|ctx_fetch_and_index|ctx_search|ctx_index|mcp__",Bn={PreToolUse:"context-mode hook codex pretooluse",PostToolUse:"context-mode hook codex posttooluse",SessionStart:"context-mode hook codex sessionstart",PreCompact:"context-mode hook codex precompact",UserPromptSubmit:"context-mode hook codex userpromptsubmit",Stop:"context-mode hook codex stop"},wD={PreToolUse:["hooks/pretooluse.mjs","hooks/codex/pretooluse.mjs"],PostToolUse:["hooks/posttooluse.mjs","hooks/codex/posttooluse.mjs"],SessionStart:["hooks/sessionstart.mjs","hooks/codex/sessionstart.mjs"],PreCompact:["hooks/precompact.mjs","hooks/codex/precompact.mjs"],UserPromptSubmit:["hooks/userpromptsubmit.mjs","hooks/codex/userpromptsubmit.mjs"],Stop:["hooks/stop.mjs","hooks/codex/stop.mjs"]};Em=class extends
|
|
20
|
+
`)?e:"";return{text:`${t}${s}[features]${e}hooks = true${e}`,changed:!0}}let o=r.length;for(let s=n+1;s<r.length;s++)if(/^\s*\[[^\]]+\]\s*(?:#.*)?$/.test(r[s]??"")){o=s;break}for(let s=n+1;s<o;s++)if(/^\s*hooks\s*=/.test(r[s]??""))return r[s]="hooks = true",{text:r.join(e),changed:!0};return r.splice(n+1,0,"hooks = true"),{text:r.join(e),changed:!0}}var ED,Bn,wD,Em,SS=de(()=>{"use strict";xt();bm();ED="local_shell|shell|shell_command|exec_command|Bash|Shell|apply_patch|Edit|Write|grep_files|ctx_execute|ctx_execute_file|ctx_batch_execute|ctx_fetch_and_index|ctx_search|ctx_index|mcp__",Bn={PreToolUse:"context-mode hook codex pretooluse",PostToolUse:"context-mode hook codex posttooluse",SessionStart:"context-mode hook codex sessionstart",PreCompact:"context-mode hook codex precompact",UserPromptSubmit:"context-mode hook codex userpromptsubmit",Stop:"context-mode hook codex stop"},wD={PreToolUse:["hooks/pretooluse.mjs","hooks/codex/pretooluse.mjs"],PostToolUse:["hooks/posttooluse.mjs","hooks/codex/posttooluse.mjs"],SessionStart:["hooks/sessionstart.mjs","hooks/codex/sessionstart.mjs"],PreCompact:["hooks/precompact.mjs","hooks/codex/precompact.mjs"],UserPromptSubmit:["hooks/userpromptsubmit.mjs","hooks/codex/userpromptsubmit.mjs"],Stop:["hooks/stop.mjs","hooks/codex/stop.mjs"]};Em=class extends be{constructor(){super([".codex"])}name="Codex CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_response,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),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(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{hookSpecificOutput:{hookEventName:"PreToolUse",permissionDecision:"deny",permissionDecisionReason:e.reason??"Blocked by context-mode hook"}}:e.decision==="context"&&e.additionalContext?{}:{}}formatPostToolUseResponse(e){return e.additionalContext?{hookSpecificOutput:{hookEventName:"PostToolUse",additionalContext:e.additionalContext}}:{}}formatPreCompactResponse(e){return{}}formatSessionStartResponse(e){return e.context?{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:e.context}}:{}}getConfigDir(e){return wc()}getSettingsPath(){return Tc(this.getConfigDir(),"config.toml")}getSessionDir(){let e=Tc(this.getConfigDir(),"context-mode","sessions");return Sm(e,{recursive:!0}),e}getInstructionFiles(){return["AGENTS.md","AGENTS.override.md"]}getMemoryDir(){return Tc(this.getConfigDir(),"memories")}generateHookConfig(e){return{PreToolUse:[{matcher:ED,hooks:[{type:"command",command:Bn.PreToolUse}]}],PostToolUse:[{matcher:"",hooks:[{type:"command",command:Bn.PostToolUse}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:Bn.SessionStart}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:Bn.PreCompact}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:Bn.UserPromptSubmit}]}],Stop:[{matcher:"",hooks:[{type:"command",command:Bn.Stop}]}]}}readSettings(){try{return{_raw_toml:Uo(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){let r=[];try{let a=Uo(this.getSettingsPath(),"utf-8"),c=vS(a),u=!c&&TD(a);r.push({check:"Codex hooks feature flag",status:c?"pass":"fail",message:c?`[features].hooks enabled in ${this.getSettingsPath()}`:u?`[features].codex_hooks is deprecated; [features].hooks is missing in ${this.getSettingsPath()}`:`[features].hooks missing from ${this.getSettingsPath()}`,...c?{}:{fix:"context-mode upgrade"}})}catch{r.push({check:"Codex hooks feature flag",status:"warn",message:`Could not read ${this.getSettingsPath()}`,fix:"context-mode upgrade"})}let n=this.readHooksConfig();if(!n.ok)return n.reason==="missing"?r.concat([{check:"Hooks config",status:"fail",message:`No readable ${this.getHooksPath()} found`,fix:"Copy configs/codex/hooks.json to hooks.json or run context-mode upgrade"}]):n.reason==="invalid_json"?r.concat([{check:"Hooks config",status:"fail",message:`${this.getHooksPath()} is not valid JSON: ${n.error}`,fix:"Repair hooks.json so it contains valid JSON, then rerun context-mode upgrade if needed"}]):r.concat([{check:"Hooks config",status:"fail",message:`Could not read ${this.getHooksPath()}: ${n.error}`,fix:"Check permissions and file accessibility for hooks.json, then rerun context-mode upgrade if needed"}]);if(!n.config.hooks)return r.concat([{check:"Hooks config",status:"fail",message:`${this.getHooksPath()} is missing the top-level hooks object`,fix:`Update ${this.getHooksPath()} to match configs/codex/hooks.json`}]);let o=this.generateHookConfig(""),s=Object.entries(o).map(([a,c])=>{let u=n.config.hooks?.[a],d=c[0],l=Array.isArray(u)&&u.some(m=>this.isExpectedHookEntry(a,m,d)),f=a==="PreCompact"?"warn":"fail";return{check:`${a} hook`,status:l?"pass":f,message:l?`${a} hook configured in ${this.getHooksPath()}`:a==="PreCompact"?`${a} hook missing or not pointing to context-mode; compaction snapshots require a Codex build that emits PreCompact`:`${a} hook missing or not pointing to context-mode`,fix:l?void 0:`Update ${this.getHooksPath()} to match configs/codex/hooks.json`}}),i=[];for(let a of Object.keys(o)){let c=n.config.hooks?.[a];if(!Array.isArray(c))continue;let u=c.filter(d=>this.isManagedContextModeEntry(a,d)).length;u>1&&i.push({check:`${a} duplicates`,status:"warn",message:`${u} context-mode entries found for ${a} in ${this.getHooksPath()}; Codex will fire all of them`,fix:"context-mode upgrade (collapses duplicate context-mode entries; preserves unrelated hooks)"})}return r.concat(s,i)}checkPluginRegistration(){try{let e=Uo(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 ${this.getSettingsPath()}`}:{check:"MCP registration",status:"fail",message:"No [mcp_servers] section in config.toml",fix:`Add [mcp_servers.context-mode] to ${this.getSettingsPath()}`}}catch{return{check:"MCP registration",status:"warn",message:`Could not read ${this.getSettingsPath()}`}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){let r=this.readHooksConfig(),n=[],o;if(r.ok)o=r.config;else if(r.reason==="missing")o={hooks:{}};else if(r.reason==="invalid_json"){let d=this.backupFile(this.getHooksPath(),".broken");n.push(`Backed up malformed Codex hooks to ${d}`),o={hooks:{}}}else throw new Error(`Failed to update ${this.getHooksPath()}: ${r.error}`);let s=o.hooks&&typeof o.hooks=="object"&&!Array.isArray(o.hooks)?o.hooks:{},i=this.generateHookConfig(e);for(let[d,l]of Object.entries(i))this.upsertManagedHookEntry(s,d,l[0],n);n.length>0&&(o.hooks=s,this.writeHooksConfig(o),n.push(`Wrote native Codex hooks to ${this.getHooksPath()}`));let a=this.getSettingsPath(),c="";try{c=Uo(a,"utf-8")}catch{c=""}let u=PD(c);if(u.changed){let d=u.text.includes(`\r
|
|
21
21
|
`)?`\r
|
|
22
22
|
`:`
|
|
23
23
|
`,l=u.text.endsWith(`
|
|
24
24
|
`)?u.text:`${u.text}${d}`;Sm(km(a),{recursive:!0}),_S(a,l,"utf-8"),n.push("Enabled Codex hooks feature flag")}return n}backupSettings(){let e=null;for(let r of[this.getHooksPath(),this.getSettingsPath()])try{xD(r,bD.R_OK);let n=this.backupFile(r);e??=n}catch{continue}return e}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=SD(km(kD(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return Uo(e,"utf-8")}catch{return`# context-mode
|
|
25
25
|
|
|
26
26
|
Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}getProjectDir(e){return e.cwd??process.env.CODEX_PROJECT_DIR??process.cwd()}getHooksPath(){return Tc(this.getConfigDir(),"hooks.json")}backupFile(e,r=""){let n=r?`${e}${r}-${new Date().toISOString().replace(/[:.]/g,"-")}.bak`:`${e}.bak`;return vD(e,n),n}readHooksConfig(){let e=this.getHooksPath();try{return{ok:!0,config:JSON.parse(Uo(e,"utf-8"))}}catch(r){let n=r instanceof Error?r.message:String(r);return(typeof r=="object"&&r!==null&&"code"in r?String(r.code??""):"")==="ENOENT"?{ok:!1,reason:"missing"}:r instanceof SyntaxError?{ok:!1,reason:"invalid_json",error:n}:{ok:!1,reason:"read_error",error:n}}}writeHooksConfig(e){let r=this.getHooksPath();Sm(km(r),{recursive:!0}),_S(r,JSON.stringify(e,null,2)+`
|
|
27
|
-
`,"utf-8")}upsertManagedHookEntry(e,r,n,o){let s=Array.isArray(e[r])?[...e[r]]:[],i=s.map((c,u)=>this.isManagedContextModeEntry(r,c)?u:-1).filter(c=>c>=0);if(i.length===0){s.push(n),e[r]=s,o.push(`Added ${r} hook`);return}let a=i[0];JSON.stringify(s[a])!==JSON.stringify(n)&&(s[a]=n,o.push(`Updated ${r} hook`));for(let c of i.slice(1).reverse())s.splice(c,1),o.push(`Removed duplicate ${r} context-mode hook`);e[r]=s}isExpectedHookEntry(e,r,n){return!r||typeof r!="object"||e==="PreToolUse"&&r.matcher!==n.matcher?!1:this.entryContainsManagedCommand(e,r)}isManagedContextModeEntry(e,r){return!r||typeof r!="object"?!1:this.entryContainsManagedCommand(e,r)}entryContainsManagedCommand(e,r){let n=(Array.isArray(r.hooks)?r.hooks:[]).map(i=>this.normalizeCommand(i.command)).filter(i=>i.length>0),o=this.normalizeCommand(Bn[e]??""),s=wD[e]??[];return n.some(i=>i.includes(o)||s.some(a=>i.includes(a)))}normalizeCommand(e){return(e??"").replace(/\\/g,"/")}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});import{readFileSync as kS,writeFileSync as RD,mkdirSync as $D,accessSync as CD,chmodSync as OD,constants as ID}from"node:fs";import{resolve as Pc,join as AD}from"node:path";var Ho,wm=de(()=>{"use strict";xt();Ho=class extends
|
|
28
|
-
`,"utf-8")}configureAllHooks(e){let r=[],n=this.readSettings()??{},o=n.hooks??{},{HOOK_TYPES:s,HOOK_SCRIPTS:i,buildHookCommand:a}=this.hookModule,c=[s.PRE_TOOL_USE,s.POST_TOOL_USE,s.PRE_COMPACT,s.SESSION_START];for(let u of c)i[u]&&(o[u]=[{matcher:"",hooks:[{type:"command",command:a(u,e)}]}],r.push(`Configured ${u} hook`));return n.hooks=o,this.writeSettings(n),r.push(`Wrote hook config to ${this.getSettingsPath()}`),r}setHookPermissions(e){let r=[],n=AD(e,"hooks",this.hookSubdir);for(let o of Object.values(this.hookModule.HOOK_SCRIPTS)){let s=Pc(n,o);try{CD(s,ID.R_OK),OD(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}}});function ES(t,e){let r=Tm[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?ye(`${e}/hooks/vscode-copilot/${r}`):`context-mode hook vscode-copilot ${t.toLowerCase()}`}var Mt,Tm,qq,Vq,wS=de(()=>{"use strict";mr();Mt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart"},Tm={[Mt.PRE_TOOL_USE]:"pretooluse.mjs",[Mt.POST_TOOL_USE]:"posttooluse.mjs",[Mt.PRE_COMPACT]:"precompact.mjs",[Mt.SESSION_START]:"sessionstart.mjs"},qq=[Mt.PRE_TOOL_USE,Mt.SESSION_START],Vq=[Mt.POST_TOOL_USE,Mt.PRE_COMPACT]});var TS={};Ue(TS,{VSCodeCopilotAdapter:()=>$m});import{readFileSync as Pm,mkdirSync as ND,accessSync as DD,existsSync as MD,constants as jD}from"node:fs";import{resolve as Fo,join as Rc}from"node:path";import{homedir as Rm}from"node:os";var $m,PS=de(()=>{"use strict";wm();wS();$m=class extends Ho{constructor(){super([".vscode"])}name="VS Code Copilot";hookModule={HOOK_TYPES:Mt,HOOK_SCRIPTS:Tm,buildHookCommand:ES};hookSubdir="vscode-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}getProjectDir(){return process.env.CLAUDE_PROJECT_DIR||process.cwd()}getSessionDir(){let e=Fo(".github","context-mode","sessions"),r=Rc(Rm(),".vscode","context-mode","sessions"),n=MD(Fo(".github"))?e:r;return ND(n,{recursive:!0}),n}getConfigDir(e){return Fo(e??process.cwd(),".github")}getInstructionFiles(){return["copilot-instructions.md"]}validateHooks(e){let r=[],n=Fo(".github","hooks");try{DD(n,jD.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=Fo(n,"context-mode.json");try{let s=Pm(o,"utf-8"),a=JSON.parse(s).hooks;a?.[Mt.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?.[Mt.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=Fo(".vscode","mcp.json"),r=Pm(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=[Rc(Rm(),".vscode","extensions"),Rc(Rm(),".vscode-insiders","extensions")];for(let r of e)try{let n=Pm(Rc(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}}});function RS(t,e){let r=Cm[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?ye(`${e}/hooks/jetbrains-copilot/${r}`):`context-mode hook jetbrains-copilot ${t.toLowerCase()}`}var jt,Cm,e2,t2,$S=de(()=>{"use strict";mr();jt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},Cm={[jt.PRE_TOOL_USE]:"pretooluse.mjs",[jt.POST_TOOL_USE]:"posttooluse.mjs",[jt.PRE_COMPACT]:"precompact.mjs",[jt.SESSION_START]:"sessionstart.mjs"},e2=[jt.PRE_TOOL_USE,jt.SESSION_START],t2=[jt.POST_TOOL_USE,jt.PRE_COMPACT]});var CS={};Ue(CS,{JetBrainsCopilotAdapter:()=>Om});import{readFileSync as zD}from"node:fs";import{resolve as LD}from"node:path";var Om,OS=de(()=>{"use strict";wm();$S();Om=class extends Ho{constructor(){super([".config","JetBrains"])}name="JetBrains Copilot";hookModule={HOOK_TYPES:jt,HOOK_SCRIPTS:Cm,buildHookCommand:RS};hookSubdir="jetbrains-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.JETBRAINS_CLIENT_ID?`jetbrains-${process.env.JETBRAINS_CLIENT_ID}`:process.env.IDEA_HOME?`idea-${process.pid}`:`pid-${process.ppid}`}getProjectDir(){return process.env.IDEA_INITIAL_DIRECTORY||process.env.CLAUDE_PROJECT_DIR||process.cwd()}getConfigDir(e){return LD(e??this.getProjectDir(),".github")}getInstructionFiles(){return["copilot-instructions.md"]}validateHooks(e){let r=[];try{let n=zD(this.getSettingsPath(),"utf-8"),s=JSON.parse(n).hooks;s?.[jt.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in .github/hooks/context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in .github/hooks/context-mode.json",fix:"context-mode upgrade"}),s?.[jt.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in .github/hooks/context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in .github/hooks/context-mode.json",fix:"context-mode upgrade"})}catch{r.push({check:"Hook configuration",status:"fail",message:"Could not read .github/hooks/context-mode.json",fix:"context-mode upgrade"})}return r.push({check:"Hook scripts",status:"warn",message:`JetBrains hook wrappers should resolve to ${e}/hooks/jetbrains-copilot/*.mjs`}),r}checkPluginRegistration(){return{check:"MCP registration",status:"warn",message:"JetBrains stores MCP config via Settings UI \u2014 not CLI-inspectable",fix:"Verify in IDE: Settings > Tools > GitHub Copilot > MCP > ensure a context-mode server entry exists"}}getInstalledVersion(){let r=this.readSettings()?.hooks;return r&&Object.keys(r).length>0?"configured":"unknown"}}});function fi(t,e){let r=Im[e],n=zt(e);if("command"in t){let s=t.command??"";return r!=null&&s.includes(r)||s.includes(n)}return t.hooks?.some(s=>{let i=s.command??"";return r!=null&&i.includes(r)||i.includes(n)})??!1}function zt(t){return`context-mode hook cursor ${t.toLowerCase()}`}var he,Im,UD,HD,Am,IS,AS,NS=de(()=>{"use strict";he={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart",STOP:"stop",AFTER_AGENT_RESPONSE:"afterAgentResponse"},Im={[he.PRE_TOOL_USE]:"pretooluse.mjs",[he.POST_TOOL_USE]:"posttooluse.mjs",[he.SESSION_START]:"sessionstart.mjs",[he.STOP]:"stop.mjs",[he.AFTER_AGENT_RESPONSE]:"afteragentresponse.mjs"},UD="MCP:(?!ctx_)",HD=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute",UD],Am=HD.join("|"),IS=[he.PRE_TOOL_USE],AS=[he.POST_TOOL_USE]});var LS={};Ue(LS,{CursorAdapter:()=>Nm});import{readFileSync as $c,writeFileSync as FD,mkdirSync as ZD,accessSync as DS,chmodSync as BD,constants as MS,existsSync as jS,readdirSync as qD}from"node:fs";import{execSync as VD}from"node:child_process";import{resolve as qn,join as Vn}from"node:path";import{homedir as Cc}from"node:os";var zS,Nm,US=de(()=>{"use strict";xt();Un();NS();zS="/Library/Application Support/Cursor/hooks.json",Nm=class extends Se{constructor(){super([".cursor"])}name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}parseStopInput(e){let r=e;return{sessionId:r.conversation_id??`pid-${process.ppid}`,status:r.status??"completed",loopCount:r.loop_count??0,generationId:r.generation_id,transcriptPath:r.transcript_path??void 0}}formatStopResponse(e){return e.followupMessage?{followup_message:e.followupMessage}:{}}parseAfterAgentResponseInput(e){return{text:e.text??""}}getSettingsPath(){return qn(".cursor","hooks.json")}getConfigDir(e){return qn(e??process.cwd(),".cursor")}getInstructionFiles(){return["context-mode.mdc"]}generateHookConfig(e){return{[he.PRE_TOOL_USE]:[{type:"command",command:zt(he.PRE_TOOL_USE),matcher:Am,loop_limit:null,failClosed:!1}],[he.POST_TOOL_USE]:[{type:"command",command:zt(he.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[he.SESSION_START]:[{type:"command",command:zt(he.SESSION_START),loop_limit:null,failClosed:!1}],[he.STOP]:[{type:"command",command:zt(he.STOP),loop_limit:null,failClosed:!1}],[he.AFTER_AGENT_RESPONSE]:[{type:"command",command:zt(he.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=$c(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();ZD(qn(".cursor"),{recursive:!0}),FD(r,JSON.stringify(e,null,2)+`
|
|
29
|
-
`,"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 s=n.config.hooks??{};r.push({check:"Native hook config",status:"pass",message:`Loaded ${n.path}`});for(let i of IS){let a=s[i],c=Array.isArray(a)&&a.some(u=>fi(u,i));r.push({check:i,status:c?"pass":"fail",message:c?`${i} hook configured`:`${i} hook not configured in ${n.path}`,fix:c?void 0:"context-mode upgrade"})}for(let i of AS){let a=s[i],c=Array.isArray(a)&&a.some(u=>fi(u,i));r.push({check:i,status:c?"pass":"warn",message:c?`${i} hook configured`:`${i} hook missing \u2014 session event capture will be reduced`})}}jS(zS)&&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"});let o=this.detectPluginInstalls();return o.length>0&&((n?Object.entries(n.config.hooks??{}).some(([i,a])=>Array.isArray(a)&&a.some(c=>fi(c,i))):!1)&&n?r.push({check:"Plugin/native hook duplication",status:"warn",message:`context-mode plugin detected at ${o[0]} alongside native hooks in ${n.path} \u2014 each event will fire twice. Remove one configuration to avoid duplicate routing.`,fix:"Remove the native .cursor/hooks.json entries OR uninstall the plugin"}):r.push({check:"Plugin install",status:"pass",message:`context-mode plugin installed at ${o[0]}`})),r}detectPluginInstalls(){let e=[Vn(Cc(),".cursor","plugins","local"),Vn(Cc(),".cursor","plugins","cache")],r=[];for(let n of e){try{DS(n,MS.F_OK)}catch{continue}let o=[];try{o=qD(n)}catch{continue}for(let s of o){let i=Vn(n,s,".cursor-plugin","plugin.json");try{let a=$c(i,"utf-8");JSON.parse(a)?.name==="context-mode"&&r.push(i)}catch{continue}}}return r}checkPluginRegistration(){let e=[qn(".cursor","mcp.json"),Vn(Cc(),".cursor","mcp.json")];for(let n of e)try{let o=$c(n,"utf-8"),s=JSON.parse(o),i=s.mcpServers??s.servers;if(!i)continue;if(Object.entries(i).some(([c,u])=>c.includes("context-mode")?!0:!u||typeof u!="object"?!1:u.command==="context-mode"))return{check:"MCP registration",status:"pass",message:`context-mode found in ${n}`}}catch{continue}let r=this.detectPluginInstalls();return r.length>0?{check:"MCP registration",status:"pass",message:`context-mode registered via plugin manifest at ${r[0]}`}:{check:"MCP registration",status:"warn",message:"Could not find context-mode in .cursor/mcp.json or ~/.cursor/mcp.json"}}getInstalledVersion(){try{return VD("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,he.PRE_TOOL_USE,{type:"command",command:zt(he.PRE_TOOL_USE),matcher:Am,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.POST_TOOL_USE,{type:"command",command:zt(he.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.SESSION_START,{type:"command",command:zt(he.SESSION_START),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.STOP,{type:"command",command:zt(he.STOP),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.AFTER_AGENT_RESPONSE,{type:"command",command:zt(he.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}setHookPermissions(e){let r=[],n=Vn(e,"hooks","cursor");for(let o of Object.values(Im)){let s=qn(n,o);try{DS(s,MS.R_OK),BD(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),Vn(Cc(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(zS),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=$c(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[qn(".claude","settings.json"),qn(".claude","settings.local.json"),Vn(vt(),"settings.json")].some(r=>jS(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>fi(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 FS={};Ue(FS,{AntigravityAdapter:()=>Mm});import{readFileSync as Oc,writeFileSync as WD,mkdirSync as KD}from"node:fs";import{resolve as Ic,dirname as HS}from"node:path";import{fileURLToPath as GD}from"node:url";import{homedir as Dm}from"node:os";var Mm,ZS=de(()=>{"use strict";xt();Mm=class extends
|
|
27
|
+
`,"utf-8")}upsertManagedHookEntry(e,r,n,o){let s=Array.isArray(e[r])?[...e[r]]:[],i=s.map((c,u)=>this.isManagedContextModeEntry(r,c)?u:-1).filter(c=>c>=0);if(i.length===0){s.push(n),e[r]=s,o.push(`Added ${r} hook`);return}let a=i[0];JSON.stringify(s[a])!==JSON.stringify(n)&&(s[a]=n,o.push(`Updated ${r} hook`));for(let c of i.slice(1).reverse())s.splice(c,1),o.push(`Removed duplicate ${r} context-mode hook`);e[r]=s}isExpectedHookEntry(e,r,n){return!r||typeof r!="object"||e==="PreToolUse"&&r.matcher!==n.matcher?!1:this.entryContainsManagedCommand(e,r)}isManagedContextModeEntry(e,r){return!r||typeof r!="object"?!1:this.entryContainsManagedCommand(e,r)}entryContainsManagedCommand(e,r){let n=(Array.isArray(r.hooks)?r.hooks:[]).map(i=>this.normalizeCommand(i.command)).filter(i=>i.length>0),o=this.normalizeCommand(Bn[e]??""),s=wD[e]??[];return n.some(i=>i.includes(o)||s.some(a=>i.includes(a)))}normalizeCommand(e){return(e??"").replace(/\\/g,"/")}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});import{readFileSync as kS,writeFileSync as RD,mkdirSync as $D,accessSync as CD,chmodSync as OD,constants as ID}from"node:fs";import{resolve as Pc,join as AD}from"node:path";var Ho,wm=de(()=>{"use strict";xt();Ho=class extends be{paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.PRE_TOOL_USE,additionalContext:e.additionalContext}};if(e.decision==="ask")return{permissionDecision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(e){return Pc(e??process.cwd(),".github","hooks","context-mode.json")}generateHookConfig(e){let{HOOK_TYPES:r,buildHookCommand:n}=this.hookModule;return{[r.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:n(r.PRE_TOOL_USE,e)}]}],[r.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:n(r.POST_TOOL_USE,e)}]}],[r.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:n(r.PRE_COMPACT,e)}]}],[r.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:n(r.SESSION_START,e)}]}]}}readSettings(){try{let e=kS(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{}try{let e=kS(Pc(".claude","settings.json"),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();$D(Pc(".github","hooks"),{recursive:!0}),RD(r,JSON.stringify(e,null,2)+`
|
|
28
|
+
`,"utf-8")}configureAllHooks(e){let r=[],n=this.readSettings()??{},o=n.hooks??{},{HOOK_TYPES:s,HOOK_SCRIPTS:i,buildHookCommand:a}=this.hookModule,c=[s.PRE_TOOL_USE,s.POST_TOOL_USE,s.PRE_COMPACT,s.SESSION_START];for(let u of c)i[u]&&(o[u]=[{matcher:"",hooks:[{type:"command",command:a(u,e)}]}],r.push(`Configured ${u} hook`));return n.hooks=o,this.writeSettings(n),r.push(`Wrote hook config to ${this.getSettingsPath()}`),r}setHookPermissions(e){let r=[],n=AD(e,"hooks",this.hookSubdir);for(let o of Object.values(this.hookModule.HOOK_SCRIPTS)){let s=Pc(n,o);try{CD(s,ID.R_OK),OD(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}}});function ES(t,e){if(!Tm[t])throw new Error(`No script defined for hook type: ${t}`);return`context-mode hook vscode-copilot ${t.toLowerCase()}`}var Mt,Tm,Bq,qq,wS=de(()=>{"use strict";Mt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart"},Tm={[Mt.PRE_TOOL_USE]:"pretooluse.mjs",[Mt.POST_TOOL_USE]:"posttooluse.mjs",[Mt.PRE_COMPACT]:"precompact.mjs",[Mt.SESSION_START]:"sessionstart.mjs"},Bq=[Mt.PRE_TOOL_USE,Mt.SESSION_START],qq=[Mt.POST_TOOL_USE,Mt.PRE_COMPACT]});var TS={};Ue(TS,{VSCodeCopilotAdapter:()=>$m});import{readFileSync as Pm,mkdirSync as ND,accessSync as DD,existsSync as MD,constants as jD}from"node:fs";import{resolve as Fo,join as Rc}from"node:path";import{homedir as Rm}from"node:os";var $m,PS=de(()=>{"use strict";wm();wS();$m=class extends Ho{constructor(){super([".vscode"])}name="VS Code Copilot";hookModule={HOOK_TYPES:Mt,HOOK_SCRIPTS:Tm,buildHookCommand:ES};hookSubdir="vscode-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}getProjectDir(){return process.env.CLAUDE_PROJECT_DIR||process.cwd()}getSessionDir(){let e=Fo(".github","context-mode","sessions"),r=Rc(Rm(),".vscode","context-mode","sessions"),n=MD(Fo(".github"))?e:r;return ND(n,{recursive:!0}),n}getConfigDir(e){return Fo(e??process.cwd(),".github")}getInstructionFiles(){return["copilot-instructions.md"]}validateHooks(e){let r=[],n=Fo(".github","hooks");try{DD(n,jD.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=Fo(n,"context-mode.json");try{let s=Pm(o,"utf-8"),a=JSON.parse(s).hooks;a?.[Mt.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?.[Mt.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=Fo(".vscode","mcp.json"),r=Pm(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=[Rc(Rm(),".vscode","extensions"),Rc(Rm(),".vscode-insiders","extensions")];for(let r of e)try{let n=Pm(Rc(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}}});function RS(t,e){if(!Cm[t])throw new Error(`No script defined for hook type: ${t}`);return`context-mode hook jetbrains-copilot ${t.toLowerCase()}`}var jt,Cm,Xq,Qq,$S=de(()=>{"use strict";jt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},Cm={[jt.PRE_TOOL_USE]:"pretooluse.mjs",[jt.POST_TOOL_USE]:"posttooluse.mjs",[jt.PRE_COMPACT]:"precompact.mjs",[jt.SESSION_START]:"sessionstart.mjs"},Xq=[jt.PRE_TOOL_USE,jt.SESSION_START],Qq=[jt.POST_TOOL_USE,jt.PRE_COMPACT]});var CS={};Ue(CS,{JetBrainsCopilotAdapter:()=>Om});import{readFileSync as zD}from"node:fs";import{resolve as LD}from"node:path";var Om,OS=de(()=>{"use strict";wm();$S();Om=class extends Ho{constructor(){super([".config","JetBrains"])}name="JetBrains Copilot";hookModule={HOOK_TYPES:jt,HOOK_SCRIPTS:Cm,buildHookCommand:RS};hookSubdir="jetbrains-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.JETBRAINS_CLIENT_ID?`jetbrains-${process.env.JETBRAINS_CLIENT_ID}`:process.env.IDEA_HOME?`idea-${process.pid}`:`pid-${process.ppid}`}getProjectDir(){return process.env.IDEA_INITIAL_DIRECTORY||process.env.CLAUDE_PROJECT_DIR||process.cwd()}getConfigDir(e){return LD(e??this.getProjectDir(),".github")}getInstructionFiles(){return["copilot-instructions.md"]}validateHooks(e){let r=[];try{let n=zD(this.getSettingsPath(),"utf-8"),s=JSON.parse(n).hooks;s?.[jt.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in .github/hooks/context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in .github/hooks/context-mode.json",fix:"context-mode upgrade"}),s?.[jt.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in .github/hooks/context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in .github/hooks/context-mode.json",fix:"context-mode upgrade"})}catch{r.push({check:"Hook configuration",status:"fail",message:"Could not read .github/hooks/context-mode.json",fix:"context-mode upgrade"})}return r.push({check:"Hook scripts",status:"warn",message:`JetBrains hook wrappers should resolve to ${e}/hooks/jetbrains-copilot/*.mjs`}),r}checkPluginRegistration(){return{check:"MCP registration",status:"warn",message:"JetBrains stores MCP config via Settings UI \u2014 not CLI-inspectable",fix:"Verify in IDE: Settings > Tools > GitHub Copilot > MCP > ensure a context-mode server entry exists"}}getInstalledVersion(){let r=this.readSettings()?.hooks;return r&&Object.keys(r).length>0?"configured":"unknown"}}});function fi(t,e){let r=Im[e],n=zt(e);if("command"in t){let s=t.command??"";return r!=null&&s.includes(r)||s.includes(n)}return t.hooks?.some(s=>{let i=s.command??"";return r!=null&&i.includes(r)||i.includes(n)})??!1}function zt(t){return`context-mode hook cursor ${t.toLowerCase()}`}var he,Im,UD,HD,Am,IS,AS,NS=de(()=>{"use strict";he={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart",STOP:"stop",AFTER_AGENT_RESPONSE:"afterAgentResponse"},Im={[he.PRE_TOOL_USE]:"pretooluse.mjs",[he.POST_TOOL_USE]:"posttooluse.mjs",[he.SESSION_START]:"sessionstart.mjs",[he.STOP]:"stop.mjs",[he.AFTER_AGENT_RESPONSE]:"afteragentresponse.mjs"},UD="MCP:(?!ctx_)",HD=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute",UD],Am=HD.join("|"),IS=[he.PRE_TOOL_USE],AS=[he.POST_TOOL_USE]});var LS={};Ue(LS,{CursorAdapter:()=>Nm});import{readFileSync as $c,writeFileSync as FD,mkdirSync as ZD,accessSync as DS,chmodSync as BD,constants as MS,existsSync as jS,readdirSync as qD}from"node:fs";import{execSync as VD}from"node:child_process";import{resolve as qn,join as Vn}from"node:path";import{homedir as Cc}from"node:os";var zS,Nm,US=de(()=>{"use strict";xt();Un();NS();zS="/Library/Application Support/Cursor/hooks.json",Nm=class extends be{constructor(){super([".cursor"])}name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}parseStopInput(e){let r=e;return{sessionId:r.conversation_id??`pid-${process.ppid}`,status:r.status??"completed",loopCount:r.loop_count??0,generationId:r.generation_id,transcriptPath:r.transcript_path??void 0}}formatStopResponse(e){return e.followupMessage?{followup_message:e.followupMessage}:{}}parseAfterAgentResponseInput(e){return{text:e.text??""}}getSettingsPath(){return qn(".cursor","hooks.json")}getConfigDir(e){return qn(e??process.cwd(),".cursor")}getInstructionFiles(){return["context-mode.mdc"]}generateHookConfig(e){return{[he.PRE_TOOL_USE]:[{type:"command",command:zt(he.PRE_TOOL_USE),matcher:Am,loop_limit:null,failClosed:!1}],[he.POST_TOOL_USE]:[{type:"command",command:zt(he.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[he.SESSION_START]:[{type:"command",command:zt(he.SESSION_START),loop_limit:null,failClosed:!1}],[he.STOP]:[{type:"command",command:zt(he.STOP),loop_limit:null,failClosed:!1}],[he.AFTER_AGENT_RESPONSE]:[{type:"command",command:zt(he.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=$c(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();ZD(qn(".cursor"),{recursive:!0}),FD(r,JSON.stringify(e,null,2)+`
|
|
29
|
+
`,"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 s=n.config.hooks??{};r.push({check:"Native hook config",status:"pass",message:`Loaded ${n.path}`});for(let i of IS){let a=s[i],c=Array.isArray(a)&&a.some(u=>fi(u,i));r.push({check:i,status:c?"pass":"fail",message:c?`${i} hook configured`:`${i} hook not configured in ${n.path}`,fix:c?void 0:"context-mode upgrade"})}for(let i of AS){let a=s[i],c=Array.isArray(a)&&a.some(u=>fi(u,i));r.push({check:i,status:c?"pass":"warn",message:c?`${i} hook configured`:`${i} hook missing \u2014 session event capture will be reduced`})}}jS(zS)&&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"});let o=this.detectPluginInstalls();return o.length>0&&((n?Object.entries(n.config.hooks??{}).some(([i,a])=>Array.isArray(a)&&a.some(c=>fi(c,i))):!1)&&n?r.push({check:"Plugin/native hook duplication",status:"warn",message:`context-mode plugin detected at ${o[0]} alongside native hooks in ${n.path} \u2014 each event will fire twice. Remove one configuration to avoid duplicate routing.`,fix:"Remove the native .cursor/hooks.json entries OR uninstall the plugin"}):r.push({check:"Plugin install",status:"pass",message:`context-mode plugin installed at ${o[0]}`})),r}detectPluginInstalls(){let e=[Vn(Cc(),".cursor","plugins","local"),Vn(Cc(),".cursor","plugins","cache")],r=[];for(let n of e){try{DS(n,MS.F_OK)}catch{continue}let o=[];try{o=qD(n)}catch{continue}for(let s of o){let i=Vn(n,s,".cursor-plugin","plugin.json");try{let a=$c(i,"utf-8");JSON.parse(a)?.name==="context-mode"&&r.push(i)}catch{continue}}}return r}checkPluginRegistration(){let e=[qn(".cursor","mcp.json"),Vn(Cc(),".cursor","mcp.json")];for(let n of e)try{let o=$c(n,"utf-8"),s=JSON.parse(o),i=s.mcpServers??s.servers;if(!i)continue;if(Object.entries(i).some(([c,u])=>c.includes("context-mode")?!0:!u||typeof u!="object"?!1:u.command==="context-mode"))return{check:"MCP registration",status:"pass",message:`context-mode found in ${n}`}}catch{continue}let r=this.detectPluginInstalls();return r.length>0?{check:"MCP registration",status:"pass",message:`context-mode registered via plugin manifest at ${r[0]}`}:{check:"MCP registration",status:"warn",message:"Could not find context-mode in .cursor/mcp.json or ~/.cursor/mcp.json"}}getInstalledVersion(){try{return VD("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,he.PRE_TOOL_USE,{type:"command",command:zt(he.PRE_TOOL_USE),matcher:Am,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.POST_TOOL_USE,{type:"command",command:zt(he.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.SESSION_START,{type:"command",command:zt(he.SESSION_START),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.STOP,{type:"command",command:zt(he.STOP),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.AFTER_AGENT_RESPONSE,{type:"command",command:zt(he.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}setHookPermissions(e){let r=[],n=Vn(e,"hooks","cursor");for(let o of Object.values(Im)){let s=qn(n,o);try{DS(s,MS.R_OK),BD(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),Vn(Cc(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(zS),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=$c(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[qn(".claude","settings.json"),qn(".claude","settings.local.json"),Vn(vt(),"settings.json")].some(r=>jS(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>fi(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 FS={};Ue(FS,{AntigravityAdapter:()=>Mm});import{readFileSync as Oc,writeFileSync as WD,mkdirSync as KD}from"node:fs";import{resolve as Ic,dirname as HS}from"node:path";import{fileURLToPath as GD}from"node:url";import{homedir as Dm}from"node:os";var Mm,ZS=de(()=>{"use strict";xt();Mm=class extends be{constructor(){super([".gemini"])}name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Ic(Dm(),".gemini","antigravity","mcp_config.json")}getConfigDir(e){return Ic(Dm(),".gemini","antigravity")}getInstructionFiles(){return["GEMINI.md"]}generateHookConfig(e){return{}}readSettings(){try{let e=Oc(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();KD(HS(r),{recursive:!0}),WD(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=Oc(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=Ic(Dm(),".gemini","extensions","context-mode","package.json");return JSON.parse(Oc(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Ic(HS(GD(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return Oc(e,"utf-8")}catch{return`# context-mode
|
|
30
30
|
|
|
31
|
-
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 Ac(t,e){let r=BS[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function Zo(t,e){let r=BS[t];return e&&r?
|
|
31
|
+
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 Ac(t,e){let r=BS[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function Zo(t,e){let r=BS[t];return e&&r?Ie(`${e}/hooks/kiro/${r}`):`context-mode hook kiro ${t.toLowerCase()}`}var Ae,BS,JD,YD,jm,v2,b2,qS=de(()=>{"use strict";Xr();Ae={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},BS={[Ae.PRE_TOOL_USE]:"pretooluse.mjs",[Ae.POST_TOOL_USE]:"posttooluse.mjs",[Ae.USER_PROMPT_SUBMIT]:"userpromptsubmit.mjs",[Ae.AGENT_SPAWN]:"agentspawn.mjs"},JD="@(?!context-mode/)",YD=["execute_bash","fs_read","@context-mode/ctx_execute","@context-mode/ctx_execute_file","@context-mode/ctx_batch_execute",JD],jm=YD.join("|"),v2=[Ae.PRE_TOOL_USE,Ae.AGENT_SPAWN],b2=[Ae.POST_TOOL_USE,Ae.USER_PROMPT_SUBMIT]});var GS={};Ue(GS,{KiroAdapter:()=>zm});import{readFileSync as Bo,writeFileSync as VS,mkdirSync as WS}from"node:fs";import{resolve as Wn,dirname as KS}from"node:path";import{fileURLToPath as XD}from"node:url";import{homedir as Nc}from"node:os";var zm,JS=de(()=>{"use strict";xt();qS();zm=class extends be{constructor(){super([".kiro"])}name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!0,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`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){let r=e??{};return{source:r.source??"startup",sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}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){if(e?.context)return{hookSpecificOutput:{hookEventName:"agentSpawn",additionalContext:e.context}}}getSettingsPath(){return Wn(Nc(),".kiro","settings","mcp.json")}getConfigDir(e){return Wn(e??process.cwd(),".kiro")}getInstructionFiles(){return["KIRO.md"]}generateHookConfig(e){return{[Ae.PRE_TOOL_USE]:[{matcher:jm,hooks:[{type:"command",command:Zo(Ae.PRE_TOOL_USE,e)}]}],[Ae.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:Zo(Ae.POST_TOOL_USE,e)}]}],[Ae.AGENT_SPAWN]:[{matcher:"*",hooks:[{type:"command",command:Zo(Ae.AGENT_SPAWN,e)}]}],[Ae.USER_PROMPT_SUBMIT]:[{matcher:"*",hooks:[{type:"command",command:Zo(Ae.USER_PROMPT_SUBMIT,e)}]}]}}readSettings(){try{let e=Bo(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();WS(KS(r),{recursive:!0}),VS(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=Wn(Nc(),".kiro","agents","default.json");try{let s=JSON.parse(Bo(n,"utf-8")).hooks??{};for(let i of[Ae.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>Ac(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[Ae.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>Ac(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=Bo(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.kiro/settings/mcp.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.kiro/settings/mcp.json"}}}getInstalledVersion(){try{let e=Wn(Nc(),".kiro","extensions","context-mode","package.json");return JSON.parse(Bo(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=Wn(Nc(),".kiro","agents"),o=Wn(n,"default.json");try{WS(n,{recursive:!0});let s={};try{s=JSON.parse(Bo(o,"utf-8"))}catch{}let i=s.hooks??{},a=[[Ae.PRE_TOOL_USE,jm],[Ae.POST_TOOL_USE,"*"],[Ae.AGENT_SPAWN,"*"],[Ae.USER_PROMPT_SUBMIT,"*"]];for(let[c,u]of a){let d=i[c]??[];d.some(l=>Ac(l,c))||(d.push({matcher:u,command:Zo(c,e)}),i[c]=d,r.push(`Added ${c} hook to ${o}`))}s.hooks=i,VS(o,JSON.stringify(s,null,2),"utf-8")}catch(s){r.push(`Failed to configure hooks: ${s.message}`)}return r}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Wn(KS(XD(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return Bo(e,"utf-8")}catch{return`# context-mode
|
|
32
32
|
|
|
33
|
-
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 QS={};Ue(QS,{ZedAdapter:()=>Um});import{readFileSync as Lm,writeFileSync as QD,mkdirSync as eM}from"node:fs";import{resolve as YS,dirname as XS}from"node:path";import{fileURLToPath as tM}from"node:url";import{homedir as rM}from"node:os";var Um,ek=de(()=>{"use strict";xt();Um=class extends
|
|
33
|
+
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 QS={};Ue(QS,{ZedAdapter:()=>Um});import{readFileSync as Lm,writeFileSync as QD,mkdirSync as eM}from"node:fs";import{resolve as YS,dirname as XS}from"node:path";import{fileURLToPath as tM}from"node:url";import{homedir as rM}from"node:os";var Um,ek=de(()=>{"use strict";xt();Um=class extends be{constructor(){super([".config","zed"])}name="Zed";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Zed does not support hooks")}parsePostToolUseInput(e){throw new Error("Zed does not support hooks")}parsePreCompactInput(e){throw new Error("Zed does not support hooks")}parseSessionStartInput(e){throw new Error("Zed does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return YS(rM(),".config","zed","settings.json")}getInstructionFiles(){return["AGENTS.md"]}generateHookConfig(e){return{}}readSettings(){try{let e=Lm(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();eM(XS(r),{recursive:!0}),QD(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Zed does not support hooks. Only MCP integration is available."}]}checkPluginRegistration(){try{let e=Lm(this.getSettingsPath(),"utf-8"),n=JSON.parse(e).context_servers!==void 0,o=e.includes("context-mode");return n&&o?{check:"MCP registration",status:"pass",message:"context-mode found in context_servers config"}:n?{check:"MCP registration",status:"fail",message:"context_servers section exists but context-mode not found",fix:"Add context-mode to context_servers in ~/.config/zed/settings.json"}:{check:"MCP registration",status:"fail",message:"No context_servers section in settings.json",fix:"Add context_servers.context-mode to ~/.config/zed/settings.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.config/zed/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=YS(XS(tM(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return Lm(e,"utf-8")}catch{return`# context-mode
|
|
34
34
|
|
|
35
|
-
Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var Hm,tk=de(()=>{"use strict";Hm="mcp__(?!.*context-mode)"});var ok={};Ue(ok,{QwenCodeAdapter:()=>Fm});import{readFileSync as nM,writeFileSync as oM,existsSync as sM}from"node:fs";import{resolve as rk,join as iM}from"node:path";import{homedir as nk}from"node:os";var Fm,sk=de(()=>{"use strict";sm();tk();
|
|
35
|
+
Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var Hm,tk=de(()=>{"use strict";Hm="mcp__(?!.*context-mode)"});var ok={};Ue(ok,{QwenCodeAdapter:()=>Fm});import{readFileSync as nM,writeFileSync as oM,existsSync as sM}from"node:fs";import{resolve as rk,join as iM}from"node:path";import{homedir as nk}from"node:os";var Fm,sk=de(()=>{"use strict";sm();tk();Xr();Fm=class extends zo{constructor(){super([".qwen"])}name="Qwen Code";paradigm="json-stdio";projectDirEnvVar="QWEN_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getSettingsPath(){return rk(nk(),".qwen","settings.json")}getInstructionFiles(){return["QWEN.md"]}generateHookConfig(e){return{PreToolUse:[{matcher:["run_shell_command","read_file","read_many_files","grep_search","web_fetch","agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute",Hm].join("|"),hooks:[{type:"command",command:Ie(`${e}/hooks/pretooluse.mjs`)}]}],PostToolUse:[{matcher:"run_shell_command|read_file|write_file|edit|glob|grep_search|todo_write|agent|ask_user_question|mcp__",hooks:[{type:"command",command:Ie(`${e}/hooks/posttooluse.mjs`)}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:Ie(`${e}/hooks/sessionstart.mjs`)}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:Ie(`${e}/hooks/precompact.mjs`)}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:Ie(`${e}/hooks/userpromptsubmit.mjs`)}]}]}}readSettings(){try{let e=nM(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){oM(this.getSettingsPath(),JSON.stringify(e,null,2))}validateHooks(e){let r=[],o=this.readSettings()?.hooks??{};for(let s of["PreToolUse","PostToolUse","SessionStart","PreCompact","UserPromptSubmit"]){let i=Array.isArray(o[s])&&o[s].length>0;r.push({check:`${s} hook`,status:i?"pass":"fail",message:i?`${s} hook configured in ~/.qwen/settings.json`:`${s} hook not found in ~/.qwen/settings.json`,...i?{}:{fix:`Add ${s} hook to ~/.qwen/settings.json`}})}return r}checkPluginRegistration(){try{let e=this.readSettings();if(e?.mcpServers&&typeof e.mcpServers=="object"){let r=e.mcpServers;return Object.keys(r).some(n=>n.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in mcpServers"}:{check:"Plugin registration",status:"fail",message:"mcpServers exists but context-mode not found",fix:"Add context-mode to mcpServers in ~/.qwen/settings.json"}}return{check:"Plugin registration",status:"warn",message:"No mcpServers in ~/.qwen/settings.json"}}catch{return{check:"Plugin registration",status:"warn",message:"Could not read ~/.qwen/settings.json"}}}getInstalledVersion(){let e=this.readSettings();if(!e)return"not installed";let r=e.hooks;if(!r)return"not installed";let n=["pretooluse.mjs","posttooluse.mjs","precompact.mjs","sessionstart.mjs","userpromptsubmit.mjs"];for(let[,o]of Object.entries(r))if(Array.isArray(o)){for(let s of o)if(s.hooks?.some(a=>a.command&&n.some(c=>a.command.includes(c))))return"installed (hooks configured)"}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[];for(let i of Object.keys(n)){let a=n[i];if(!Array.isArray(a))continue;let c=a.filter(d=>{let f=d.hooks??[];return f.some(p=>p.command&&/context-mode|pretooluse|posttooluse|precompact|sessionstart|userpromptsubmit/i.test(p.command))?f.every(p=>{if(!p.command)return!0;let h=p.command.match(/"[^"]+"\s+"([^"]+\.mjs)"/),g=p.command.match(/node\s+"?([^"]+\.mjs)"?/),_=h||g;return _?sM(_[1]):!0}):!0}),u=a.length-c.length;u>0&&(n[i]=c,o.push(`Removed ${u} stale ${i} hook(s)`))}let s=[{name:"PreToolUse",script:"pretooluse.mjs",matcher:["run_shell_command","read_file","read_many_files","grep_search","web_fetch","agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute",Hm].join("|")},{name:"PostToolUse",script:"posttooluse.mjs",matcher:"run_shell_command|read_file|write_file|edit|glob|grep_search|todo_write|agent|ask_user_question|mcp__"},{name:"SessionStart",script:"sessionstart.mjs",matcher:""},{name:"PreCompact",script:"precompact.mjs",matcher:""},{name:"UserPromptSubmit",script:"userpromptsubmit.mjs",matcher:""}];for(let{name:i,script:a,matcher:c}of s){let u={matcher:c,hooks:[{type:"command",command:Ie(`${e}/hooks/${a}`)}]},d=n[i];if(d&&Array.isArray(d)){let l=d.findIndex(f=>f.hooks?.some(p=>p.command?.includes(a))??!1);l>=0?(d[l]=u,o.push(`Updated ${i} hook`)):(d.push(u),o.push(`Added ${i} hook`)),n[i]=d}else n[i]=[u],o.push(`Created ${i} hooks`)}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{instructionsPath:rk(iM(nk(),".qwen","QWEN.md")),targetPath:"QWEN.md",platformName:"Qwen Code"}}extractSessionId(e){if(e.session_id)return e.session_id;if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return process.env.QWEN_SESSION_ID?process.env.QWEN_SESSION_ID:`pid-${process.ppid}`}}});var ik={};Ue(ik,{OMPAdapter:()=>qm});import{readFileSync as Zm,writeFileSync as aM,mkdirSync as cM}from"node:fs";import{resolve as Bm,dirname as uM}from"node:path";import{homedir as lM}from"node:os";var qm,ak=de(()=>{"use strict";xt();qm=class extends be{constructor(){super([".omp"])}name="OMP";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("OMP hooks not wired by this adapter (MCP-only delivery)")}parsePostToolUseInput(e){throw new Error("OMP hooks not wired by this adapter (MCP-only delivery)")}parsePreCompactInput(e){throw new Error("OMP hooks not wired by this adapter (MCP-only delivery)")}parseSessionStartInput(e){throw new Error("OMP hooks not wired by this adapter (MCP-only delivery)")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getAgentDir(){return process.env.PI_CODING_AGENT_DIR??Bm(lM(),".omp","agent")}getSettingsPath(){return Bm(this.getAgentDir(),"mcp.json")}getConfigDir(e){return this.getAgentDir()}getInstructionFiles(){return["SYSTEM.md","AGENTS.md"]}generateHookConfig(e){return{}}readSettings(){try{let e=Zm(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();cM(uM(r),{recursive:!0}),aM(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){return[{check:"Hook support",status:"warn",message:"context-mode delivers via MCP for OMP. Native OMP pre/post tool-call hooks are not yet wired by this adapter."}]}checkPluginRegistration(){try{let e=Zm(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 ${this.getSettingsPath()}`}}catch{return{check:"MCP registration",status:"warn",message:`Could not read ${this.getSettingsPath()}`}}}getInstalledVersion(){try{let e=Bm(this.getAgentDir(),"extensions","context-mode","package.json");return JSON.parse(Zm(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){return`# context-mode
|
|
36
36
|
|
|
37
|
-
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 ck={};Ue(ck,{PiAdapter:()=>Gm});import{readFileSync as Vm,writeFileSync as dM,mkdirSync as pM}from"node:fs";import{resolve as Wm,dirname as fM}from"node:path";import{homedir as Km}from"node:os";var Gm,uk=de(()=>{"use strict";xt();Gm=class extends
|
|
37
|
+
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 ck={};Ue(ck,{PiAdapter:()=>Gm});import{readFileSync as Vm,writeFileSync as dM,mkdirSync as pM}from"node:fs";import{resolve as Wm,dirname as fM}from"node:path";import{homedir as Km}from"node:os";var Gm,uk=de(()=>{"use strict";xt();Gm=class extends be{constructor(){super([".pi"])}name="Pi";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Pi does not support JSON-stdio hooks (wired via extension.ts)")}parsePostToolUseInput(e){throw new Error("Pi does not support JSON-stdio hooks (wired via extension.ts)")}parsePreCompactInput(e){throw new Error("Pi does not support JSON-stdio hooks (wired via extension.ts)")}parseSessionStartInput(e){throw new Error("Pi does not support JSON-stdio hooks (wired via extension.ts)")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Wm(Km(),".pi","settings.json")}getInstructionFiles(){return["AGENTS.md"]}generateHookConfig(e){return{}}readSettings(){try{let e=Vm(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();pM(fM(r),{recursive:!0}),dM(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){return[{check:"Hook support",status:"pass",message:"Pi hooks are wired via the context-mode Pi extension (~/.pi/extensions/context-mode/), not via JSON-stdio."}]}checkPluginRegistration(){let e=Wm(Km(),".pi","extensions","context-mode","package.json");try{return JSON.parse(Vm(e,"utf-8"))?.name==="context-mode"?{check:"Pi extension registration",status:"pass",message:`context-mode extension installed at ${e}`}:{check:"Pi extension registration",status:"warn",message:`Unexpected package at ${e}`}}catch{return{check:"Pi extension registration",status:"fail",message:`context-mode not found at ${e}`,fix:"Run: context-mode upgrade"}}}getInstalledVersion(){try{let e=Wm(Km(),".pi","extensions","context-mode","package.json");return JSON.parse(Vm(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){return`# context-mode
|
|
38
38
|
|
|
39
|
-
Use context-mode MCP tools (ctx_execute, ctx_execute_file, ctx_batch_execute, ctx_fetch_and_index, ctx_search) instead of inline shell/HTTP calls for data-heavy operations.`}}});var Dc={};Ue(Dc,{PLATFORM_ENV_VARS:()=>qo,__resetClaudeCodePluginCacheForTests:()=>gM,__seedClaudeCodePluginCacheMissForTests:()=>yM,detectPlatform:()=>Pr,foreignIdentificationEnv:()=>bM,foreignWorkspaceEnv:()=>vM,getAdapter:()=>SM,getEnvVarNames:()=>xM,getSessionDirSegments:()=>mi,workspaceEnvVarsFor:()=>Jm});import{existsSync as bt,readFileSync as mM}from"node:fs";import{resolve as mt}from"node:path";import{homedir as lk}from"node:os";function hM(){if(Kn!==null)return Kn!=="miss"&&Kn.hasCM;try{let t=mt(lk(),".claude","plugins","installed_plugins.json"),e=mM(t,"utf-8"),r=JSON.parse(e),o=[...Object.keys(r.plugins??{}),...Object.keys(r.enabledPlugins??{})].some(s=>s.includes("context-mode"));return Kn={hasCM:o},o}catch{return Kn="miss",!1}}function gM(){Kn=null}function yM(){Kn="miss"}function xM(t){return(qo.get(t)??[]).map(e=>e.name)}function Jm(t){return(qo.get(t)??[]).filter(e=>e.role==="workspace").map(e=>e.name)}function vM(t){let e=new Set;for(let[r,n]of qo)if(r!==t)for(let o of n)o.role==="workspace"&&e.add(o.name);return e}function bM(t){let e=new Set;for(let[r,n]of qo)if(r!==t)for(let o of n)o.role==="identification"&&e.add(o.name);return e}function mi(t){switch(t){case"claude-code":return[".claude"];case"gemini-cli":return[".gemini"];case"antigravity":return[".gemini"];case"openclaw":return[".openclaw"];case"codex":return[".codex"];case"cursor":return[".cursor"];case"vscode-copilot":return[".vscode"];case"kiro":return[".kiro"];case"pi":return[".pi"];case"omp":return[".omp"];case"qwen-code":return[".qwen"];case"kilo":return[".config","kilo"];case"opencode":return[".config","opencode"];case"zed":return[".config","zed"];case"jetbrains-copilot":return[".config","JetBrains"];default:return null}}function Pr(t){if(t?.name){let n=Wb[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`};if(t.name.startsWith("qwen-cli-mcp-client"))return{platform:"qwen-code",confidence:"high",reason:`MCP clientInfo.name="${t.name}" (qwen-cli pattern)`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","kilo","opencode","codex","vscode-copilot","jetbrains-copilot","cursor","antigravity","kiro","pi","omp","zed","qwen-code"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};for(let[n,o]of qo)if(o.some(s=>s.detect!==!1&&process.env[s.name]))return n==="vscode-copilot"&&hM()?{platform:"claude-code",confidence:"high",reason:"VSCODE_PID set but ~/.claude/plugins/installed_plugins.json lists context-mode (issue #539 fallback)"}:{platform:n,confidence:"high",reason:`${o.filter(s=>s.detect!==!1).map(s=>s.name).join(" or ")} env var set`};let r=lk();return bt(mt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:bt(mt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:bt(mt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:bt(mt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:bt(mt(r,".omp"))?{platform:"omp",confidence:"medium",reason:"~/.omp/ directory exists"}:bt(mt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:bt(mt(r,".qwen"))?{platform:"qwen-code",confidence:"medium",reason:"~/.qwen/ directory exists"}:bt(mt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:bt(mt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:bt(mt(r,".config","kilo"))?{platform:"kilo",confidence:"medium",reason:"~/.config/kilo/ directory exists"}:bt(mt(r,".config","JetBrains"))?{platform:"jetbrains-copilot",confidence:"medium",reason:"~/.config/JetBrains/ directory exists"}:bt(mt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:bt(mt(r,".config","zed"))?{platform:"zed",confidence:"medium",reason:"~/.config/zed/ directory exists"}:{platform:"claude-code",confidence:"low",reason:"No platform detected, defaulting to Claude Code"}}async function SM(t){let e=t??Pr().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(dm(),lm));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(uS(),cS));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(fS(),pS));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(gS(),hS));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(SS(),bS));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(PS(),TS));return new r}case"jetbrains-copilot":{let{JetBrainsCopilotAdapter:r}=await Promise.resolve().then(()=>(OS(),CS));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(US(),LS));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(ZS(),FS));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(JS(),GS));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(ek(),QS));return new r}case"qwen-code":{let{QwenCodeAdapter:r}=await Promise.resolve().then(()=>(sk(),ok));return new r}case"omp":{let{OMPAdapter:r}=await Promise.resolve().then(()=>(ak(),ik));return new r}case"pi":{let{PiAdapter:r}=await Promise.resolve().then(()=>(uk(),ck));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(dm(),lm));return new r}}}var Kn,_M,qo,Gn=de(()=>{"use strict";Kb();Kn=null;_M=[["claude-code",[{name:"CLAUDE_CODE_ENTRYPOINT",role:"identification"},{name:"CLAUDE_PLUGIN_ROOT",role:"identification"},{name:"CLAUDE_PROJECT_DIR",role:"workspace"},{name:"CLAUDE_SESSION_ID",role:"identification"}]],["antigravity",[{name:"ANTIGRAVITY_CLI_ALIAS",role:"identification"}]],["cursor",[{name:"CURSOR_CWD",role:"workspace"},{name:"CURSOR_TRACE_ID",role:"identification"},{name:"CURSOR_CLI",role:"identification"}]],["kilo",[{name:"KILO",role:"identification"},{name:"KILO_PID",role:"identification"}]],["opencode",[{name:"OPENCODE_PROJECT_DIR",role:"workspace"},{name:"OPENCODE_CLIENT",role:"identification"},{name:"OPENCODE_TERMINAL",role:"identification"},{name:"OPENCODE",role:"identification"},{name:"OPENCODE_PID",role:"identification"}]],["zed",[{name:"ZED_SESSION_ID",role:"identification"},{name:"ZED_TERM",role:"identification"}]],["codex",[{name:"CODEX_THREAD_ID",role:"identification"},{name:"CODEX_CI",role:"identification"}]],["gemini-cli",[{name:"GEMINI_PROJECT_DIR",role:"workspace"},{name:"GEMINI_CLI",role:"identification"}]],["vscode-copilot",[{name:"VSCODE_CWD",role:"workspace"},{name:"VSCODE_PID",role:"identification"}]],["jetbrains-copilot",[{name:"IDEA_INITIAL_DIRECTORY",role:"workspace"}]],["qwen-code",[{name:"QWEN_PROJECT_DIR",role:"workspace"}]],["omp",[{name:"PI_CODING_AGENT_DIR",role:"workspace"}]],["pi",[{name:"PI_WORKSPACE_DIR",role:"workspace",detect:!1},{name:"PI_PROJECT_DIR",role:"workspace",detect:!1},{name:"PI_CONFIG_DIR",role:"identification"},{name:"PI_SESSION_FILE",role:"identification"},{name:"PI_COMPILED",role:"identification"}]]],qo=new Map(_M)});import{resolve as hi}from"node:path";import{homedir as Ym}from"node:os";function vt(t=process.env){let e=t.CLAUDE_CONFIG_DIR;return e&&e.trim()!==""?e.startsWith("~")?hi(Ym(),e.replace(/^~[/\\]?/,"")):hi(e):hi(Ym(),".claude")}function kM(t=process.env){return hi(vt(t),"settings.json")}function Xm(t=process.env){let e=[],r=Pr();if(r.platform!=="claude-code"){let o=mi(r.platform);o&&o.length>0&&e.push(hi(Ym(),...o,"settings.json"))}let n=kM(t);return e.includes(n)||e.push(n),e}var Un=de(()=>{"use strict";Gn()});var M={};Ue(M,{BRAND:()=>GE,DIRTY:()=>nn,EMPTY_PATH:()=>PE,INVALID:()=>q,NEVER:()=>Iw,OK:()=>Ye,ParseStatus:()=>Fe,Schema:()=>Y,ZodAny:()=>Mr,ZodArray:()=>xr,ZodBigInt:()=>sn,ZodBoolean:()=>an,ZodBranded:()=>es,ZodCatch:()=>_n,ZodDate:()=>cn,ZodDefault:()=>yn,ZodDiscriminatedUnion:()=>Oi,ZodEffects:()=>wt,ZodEnum:()=>hn,ZodError:()=>it,ZodFirstPartyTypeKind:()=>T,ZodFunction:()=>Ai,ZodIntersection:()=>pn,ZodIssueCode:()=>k,ZodLazy:()=>fn,ZodLiteral:()=>mn,ZodMap:()=>no,ZodNaN:()=>so,ZodNativeEnum:()=>gn,ZodNever:()=>Ft,ZodNull:()=>ln,ZodNullable:()=>ir,ZodNumber:()=>on,ZodObject:()=>ct,ZodOptional:()=>at,ZodParsedType:()=>C,ZodPipeline:()=>ts,ZodPromise:()=>jr,ZodReadonly:()=>xn,ZodRecord:()=>Ii,ZodSchema:()=>Y,ZodSet:()=>oo,ZodString:()=>Dr,ZodSymbol:()=>to,ZodTransformer:()=>wt,ZodTuple:()=>sr,ZodType:()=>Y,ZodUndefined:()=>un,ZodUnion:()=>dn,ZodUnknown:()=>_r,ZodVoid:()=>ro,addIssueToContext:()=>R,any:()=>ow,array:()=>cw,bigint:()=>QE,boolean:()=>Uh,coerce:()=>Ow,custom:()=>jh,date:()=>ew,datetimeRegex:()=>Dh,defaultErrorMap:()=>gr,discriminatedUnion:()=>dw,effect:()=>kw,enum:()=>vw,function:()=>yw,getErrorMap:()=>Xn,getParsedType:()=>or,instanceof:()=>YE,intersection:()=>pw,isAborted:()=>$i,isAsync:()=>Qn,isDirty:()=>Ci,isValid:()=>Nr,late:()=>JE,lazy:()=>_w,literal:()=>xw,makeIssue:()=>Qo,map:()=>hw,nan:()=>XE,nativeEnum:()=>bw,never:()=>iw,null:()=>nw,nullable:()=>ww,number:()=>Lh,object:()=>gu,objectUtil:()=>fu,oboolean:()=>Cw,onumber:()=>$w,optional:()=>Ew,ostring:()=>Rw,pipeline:()=>Pw,preprocess:()=>Tw,promise:()=>Sw,quotelessJson:()=>EE,record:()=>mw,set:()=>gw,setErrorMap:()=>TE,strictObject:()=>uw,string:()=>zh,symbol:()=>tw,transformer:()=>kw,tuple:()=>fw,undefined:()=>rw,union:()=>lw,unknown:()=>sw,util:()=>ne,void:()=>aw});var ne;(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})(ne||(ne={}));var fu;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(fu||(fu={}));var C=ne.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),or=t=>{switch(typeof t){case"undefined":return C.undefined;case"string":return C.string;case"number":return Number.isNaN(t)?C.nan:C.number;case"boolean":return C.boolean;case"function":return C.function;case"bigint":return C.bigint;case"symbol":return C.symbol;case"object":return Array.isArray(t)?C.array:t===null?C.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?C.promise:typeof Map<"u"&&t instanceof Map?C.map:typeof Set<"u"&&t instanceof Set?C.set:typeof Date<"u"&&t instanceof Date?C.date:C.object;default:return C.unknown}};var k=ne.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"]),EE=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),it=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,ne.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()}};it.create=t=>new it(t);var wE=(t,e)=>{let r;switch(t.code){case k.invalid_type:t.received===C.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case k.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,ne.jsonStringifyReplacer)}`;break;case k.unrecognized_keys:r=`Unrecognized key(s) in object: ${ne.joinValues(t.keys,", ")}`;break;case k.invalid_union:r="Invalid input";break;case k.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${ne.joinValues(t.options)}`;break;case k.invalid_enum_value:r=`Invalid enum value. Expected ${ne.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}"`:ne.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,ne.assertNever(t)}return{message:r}},gr=wE;var Ch=gr;function TE(t){Ch=t}function Xn(){return Ch}var Qo=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}},PE=[];function R(t,e){let r=Xn(),n=Qo({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===gr?void 0:gr].filter(o=>!!o)});t.common.issues.push(n)}var Fe=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 q;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 q;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}}},q=Object.freeze({status:"aborted"}),nn=t=>({status:"dirty",value:t}),Ye=t=>({status:"valid",value:t}),$i=t=>t.status==="aborted",Ci=t=>t.status==="dirty",Nr=t=>t.status==="valid",Qn=t=>typeof Promise<"u"&&t instanceof Promise;var D;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(D||(D={}));var Et=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}},Oh=(t,e)=>{if(Nr(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 it(t.common.issues);return this._error=r,this._error}}};function G(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 Y=class{get description(){return this._def.description}_getType(e){return or(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:or(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Fe,ctx:{common:e.parent.common,data:e.data,parsedType:or(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Qn(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:or(e)},o=this._parseSync({data:e,path:n.path,parent:n});return Oh(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:or(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Nr(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=>Nr(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:or(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(Qn(o)?o:Promise.resolve(o));return Oh(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 wt({schema:this,typeName:T.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 at.create(this,this._def)}nullable(){return ir.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return xr.create(this)}promise(){return jr.create(this,this._def)}or(e){return dn.create([this,e],this._def)}and(e){return pn.create(this,e,this._def)}transform(e){return new wt({...G(this._def),schema:this,typeName:T.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new yn({...G(this._def),innerType:this,defaultValue:r,typeName:T.ZodDefault})}brand(){return new es({typeName:T.ZodBranded,type:this,...G(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new _n({...G(this._def),innerType:this,catchValue:r,typeName:T.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return ts.create(this,e)}readonly(){return xn.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},RE=/^c[^\s-]{8,}$/i,$E=/^[0-9a-z]+$/,CE=/^[0-9A-HJKMNP-TV-Z]{26}$/i,OE=/^[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,IE=/^[a-z0-9_-]{21}$/i,AE=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,NE=/^[-+]?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)?)??$/,DE=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,ME="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",mu,jE=/^(?:(?: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])$/,zE=/^(?:(?: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])$/,LE=/^(([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]))$/,UE=/^(([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])$/,HE=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,FE=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Ah="((\\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])))",ZE=new RegExp(`^${Ah}$`);function Nh(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 BE(t){return new RegExp(`^${Nh(t)}$`)}function Dh(t){let e=`${Ah}T${Nh(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 qE(t,e){return!!((e==="v4"||!e)&&jE.test(t)||(e==="v6"||!e)&&LE.test(t))}function VE(t,e){if(!AE.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 WE(t,e){return!!((e==="v4"||!e)&&zE.test(t)||(e==="v6"||!e)&&UE.test(t))}var Dr=class t extends Y{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==C.string){let s=this._getOrReturnCtx(e);return R(s,{code:k.invalid_type,expected:C.string,received:s.parsedType}),q}let n=new Fe,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),R(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),R(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?R(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&R(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")DE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"email",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")mu||(mu=new RegExp(ME,"u")),mu.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"emoji",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")OE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"uuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")IE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"nanoid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")RE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")$E.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cuid2",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")CE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(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),R(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),R(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),R(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),R(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),R(o,{code:k.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?Dh(s).test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:k.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?ZE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:k.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?BE(s).test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:k.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?NE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"duration",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?qE(e.data,s.version)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"ip",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?VE(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"jwt",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?WE(e.data,s.version)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cidr",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?HE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?FE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64url",code:k.invalid_string,message:s.message}),n.dirty()):ne.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,...D.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...D.errToObj(e)})}url(e){return this._addCheck({kind:"url",...D.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...D.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...D.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...D.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...D.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...D.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...D.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...D.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...D.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...D.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...D.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...D.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,...D.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,...D.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...D.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...D.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...D.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...D.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...D.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...D.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...D.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...D.errToObj(r)})}nonempty(e){return this.min(1,D.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}};Dr.create=t=>new Dr({checks:[],typeName:T.ZodString,coerce:t?.coerce??!1,...G(t)});function KE(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 on=class t extends Y{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)!==C.number){let s=this._getOrReturnCtx(e);return R(s,{code:k.invalid_type,expected:C.number,received:s.parsedType}),q}let n,o=new Fe;for(let s of this._def.checks)s.kind==="int"?ne.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),R(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),R(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),R(n,{code:k.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?KE(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),R(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),R(n,{code:k.not_finite,message:s.message}),o.dirty()):ne.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,D.toString(r))}gt(e,r){return this.setLimit("min",e,!1,D.toString(r))}lte(e,r){return this.setLimit("max",e,!0,D.toString(r))}lt(e,r){return this.setLimit("max",e,!1,D.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:D.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:D.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:D.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:D.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:D.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:D.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:D.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:D.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:D.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:D.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"&&ne.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)}};on.create=t=>new on({checks:[],typeName:T.ZodNumber,coerce:t?.coerce||!1,...G(t)});var sn=class t extends Y{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)!==C.bigint)return this._getInvalidInput(e);let n,o=new Fe;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),R(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),R(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),R(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):ne.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return R(r,{code:k.invalid_type,expected:C.bigint,received:r.parsedType}),q}gte(e,r){return this.setLimit("min",e,!0,D.toString(r))}gt(e,r){return this.setLimit("min",e,!1,D.toString(r))}lte(e,r){return this.setLimit("max",e,!0,D.toString(r))}lt(e,r){return this.setLimit("max",e,!1,D.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:D.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:D.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:D.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:D.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:D.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:D.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}};sn.create=t=>new sn({checks:[],typeName:T.ZodBigInt,coerce:t?.coerce??!1,...G(t)});var an=class extends Y{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==C.boolean){let n=this._getOrReturnCtx(e);return R(n,{code:k.invalid_type,expected:C.boolean,received:n.parsedType}),q}return Ye(e.data)}};an.create=t=>new an({typeName:T.ZodBoolean,coerce:t?.coerce||!1,...G(t)});var cn=class t extends Y{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==C.date){let s=this._getOrReturnCtx(e);return R(s,{code:k.invalid_type,expected:C.date,received:s.parsedType}),q}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return R(s,{code:k.invalid_date}),q}let n=new Fe,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),R(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),R(o,{code:k.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):ne.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:D.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:D.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}};cn.create=t=>new cn({checks:[],coerce:t?.coerce||!1,typeName:T.ZodDate,...G(t)});var to=class extends Y{_parse(e){if(this._getType(e)!==C.symbol){let n=this._getOrReturnCtx(e);return R(n,{code:k.invalid_type,expected:C.symbol,received:n.parsedType}),q}return Ye(e.data)}};to.create=t=>new to({typeName:T.ZodSymbol,...G(t)});var un=class extends Y{_parse(e){if(this._getType(e)!==C.undefined){let n=this._getOrReturnCtx(e);return R(n,{code:k.invalid_type,expected:C.undefined,received:n.parsedType}),q}return Ye(e.data)}};un.create=t=>new un({typeName:T.ZodUndefined,...G(t)});var ln=class extends Y{_parse(e){if(this._getType(e)!==C.null){let n=this._getOrReturnCtx(e);return R(n,{code:k.invalid_type,expected:C.null,received:n.parsedType}),q}return Ye(e.data)}};ln.create=t=>new ln({typeName:T.ZodNull,...G(t)});var Mr=class extends Y{constructor(){super(...arguments),this._any=!0}_parse(e){return Ye(e.data)}};Mr.create=t=>new Mr({typeName:T.ZodAny,...G(t)});var _r=class extends Y{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ye(e.data)}};_r.create=t=>new _r({typeName:T.ZodUnknown,...G(t)});var Ft=class extends Y{_parse(e){let r=this._getOrReturnCtx(e);return R(r,{code:k.invalid_type,expected:C.never,received:r.parsedType}),q}};Ft.create=t=>new Ft({typeName:T.ZodNever,...G(t)});var ro=class extends Y{_parse(e){if(this._getType(e)!==C.undefined){let n=this._getOrReturnCtx(e);return R(n,{code:k.invalid_type,expected:C.void,received:n.parsedType}),q}return Ye(e.data)}};ro.create=t=>new ro({typeName:T.ZodVoid,...G(t)});var xr=class t extends Y{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==C.array)return R(r,{code:k.invalid_type,expected:C.array,received:r.parsedType}),q;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(R(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&&(R(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&&(R(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 Et(r,i,r.path,a)))).then(i=>Fe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new Et(r,i,r.path,a)));return Fe.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:D.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:D.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:D.toString(r)}})}nonempty(e){return this.min(1,e)}};xr.create=(t,e)=>new xr({type:t,minLength:null,maxLength:null,exactLength:null,typeName:T.ZodArray,...G(e)});function eo(t){if(t instanceof ct){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=at.create(eo(n))}return new ct({...t._def,shape:()=>e})}else return t instanceof xr?new xr({...t._def,type:eo(t.element)}):t instanceof at?at.create(eo(t.unwrap())):t instanceof ir?ir.create(eo(t.unwrap())):t instanceof sr?sr.create(t.items.map(e=>eo(e))):t}var ct=class t extends Y{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=ne.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==C.object){let u=this._getOrReturnCtx(e);return R(u,{code:k.invalid_type,expected:C.object,received:u.parsedType}),q}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Ft&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let d=s[u],l=o.data[u];c.push({key:{status:"valid",value:u},value:d._parse(new Et(o,l,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof Ft){let u=this._def.unknownKeys;if(u==="passthrough")for(let d of a)c.push({key:{status:"valid",value:d},value:{status:"valid",value:o.data[d]}});else if(u==="strict")a.length>0&&(R(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 d of a){let l=o.data[d];c.push({key:{status:"valid",value:d},value:u._parse(new Et(o,l,o.path,d)),alwaysSet:d in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let d of c){let l=await d.key,f=await d.value;u.push({key:l,value:f,alwaysSet:d.alwaysSet})}return u}).then(u=>Fe.mergeObjectSync(n,u)):Fe.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return D.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:D.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:T.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 ne.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 ne.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return eo(this)}partial(e){let r={};for(let n of ne.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 ne.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof at;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Mh(ne.objectKeys(this.shape))}};ct.create=(t,e)=>new ct({shape:()=>t,unknownKeys:"strip",catchall:Ft.create(),typeName:T.ZodObject,...G(e)});ct.strictCreate=(t,e)=>new ct({shape:()=>t,unknownKeys:"strict",catchall:Ft.create(),typeName:T.ZodObject,...G(e)});ct.lazycreate=(t,e)=>new ct({shape:t,unknownKeys:"strip",catchall:Ft.create(),typeName:T.ZodObject,...G(e)});var dn=class extends Y{_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 it(a.ctx.common.issues));return R(r,{code:k.invalid_union,unionErrors:i}),q}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},d=c._parseSync({data:r.data,path:r.path,parent:u});if(d.status==="valid")return d;d.status==="dirty"&&!s&&(s={result:d,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 it(c));return R(r,{code:k.invalid_union,unionErrors:a}),q}}get options(){return this._def.options}};dn.create=(t,e)=>new dn({options:t,typeName:T.ZodUnion,...G(e)});var yr=t=>t instanceof fn?yr(t.schema):t instanceof wt?yr(t.innerType()):t instanceof mn?[t.value]:t instanceof hn?t.options:t instanceof gn?ne.objectValues(t.enum):t instanceof yn?yr(t._def.innerType):t instanceof un?[void 0]:t instanceof ln?[null]:t instanceof at?[void 0,...yr(t.unwrap())]:t instanceof ir?[null,...yr(t.unwrap())]:t instanceof es||t instanceof xn?yr(t.unwrap()):t instanceof _n?yr(t._def.innerType):[],Oi=class t extends Y{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==C.object)return R(r,{code:k.invalid_type,expected:C.object,received:r.parsedType}),q;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}):(R(r,{code:k.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),q)}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=yr(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:T.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...G(n)})}};function hu(t,e){let r=or(t),n=or(e);if(t===e)return{valid:!0,data:t};if(r===C.object&&n===C.object){let o=ne.objectKeys(e),s=ne.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=hu(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===C.array&&n===C.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=hu(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===C.date&&n===C.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var pn=class extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if($i(s)||$i(i))return q;let a=hu(s.value,i.value);return a.valid?((Ci(s)||Ci(i))&&r.dirty(),{status:r.value,value:a.data}):(R(n,{code:k.invalid_intersection_types}),q)};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}))}};pn.create=(t,e,r)=>new pn({left:t,right:e,typeName:T.ZodIntersection,...G(r)});var sr=class t extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==C.array)return R(n,{code:k.invalid_type,expected:C.array,received:n.parsedType}),q;if(n.data.length<this._def.items.length)return R(n,{code:k.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),q;!this._def.rest&&n.data.length>this._def.items.length&&(R(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 Et(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Fe.mergeArray(r,i)):Fe.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};sr.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new sr({items:t,typeName:T.ZodTuple,rest:null,...G(e)})};var Ii=class t extends Y{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!==C.object)return R(n,{code:k.invalid_type,expected:C.object,received:n.parsedType}),q;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new Et(n,a,n.path,a)),value:i._parse(new Et(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Fe.mergeObjectAsync(r,o):Fe.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Y?new t({keyType:e,valueType:r,typeName:T.ZodRecord,...G(n)}):new t({keyType:Dr.create(),valueType:e,typeName:T.ZodRecord,...G(r)})}},no=class extends Y{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!==C.map)return R(n,{code:k.invalid_type,expected:C.map,received:n.parsedType}),q;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new Et(n,a,n.path,[u,"key"])),value:s._parse(new Et(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,d=await c.value;if(u.status==="aborted"||d.status==="aborted")return q;(u.status==="dirty"||d.status==="dirty")&&r.dirty(),a.set(u.value,d.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of i){let u=c.key,d=c.value;if(u.status==="aborted"||d.status==="aborted")return q;(u.status==="dirty"||d.status==="dirty")&&r.dirty(),a.set(u.value,d.value)}return{status:r.value,value:a}}}};no.create=(t,e,r)=>new no({valueType:e,keyType:t,typeName:T.ZodMap,...G(r)});var oo=class t extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==C.set)return R(n,{code:k.invalid_type,expected:C.set,received:n.parsedType}),q;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(R(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&&(R(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 d of c){if(d.status==="aborted")return q;d.status==="dirty"&&r.dirty(),u.add(d.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new Et(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:D.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:D.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};oo.create=(t,e)=>new oo({valueType:t,minSize:null,maxSize:null,typeName:T.ZodSet,...G(e)});var Ai=class t extends Y{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==C.function)return R(r,{code:k.invalid_type,expected:C.function,received:r.parsedType}),q;function n(a,c){return Qo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Xn(),gr].filter(u=>!!u),issueData:{code:k.invalid_arguments,argumentsError:c}})}function o(a,c){return Qo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Xn(),gr].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 jr){let a=this;return Ye(async function(...c){let u=new it([]),d=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),l=await Reflect.apply(i,this,d);return await a._def.returns._def.type.parseAsync(l,s).catch(m=>{throw u.addIssue(o(l,m)),u})})}else{let a=this;return Ye(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new it([n(c,u.error)]);let d=Reflect.apply(i,this,u.data),l=a._def.returns.safeParse(d,s);if(!l.success)throw new it([o(d,l.error)]);return l.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:sr.create(e).rest(_r.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||sr.create([]).rest(_r.create()),returns:r||_r.create(),typeName:T.ZodFunction,...G(n)})}},fn=class extends Y{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})}};fn.create=(t,e)=>new fn({getter:t,typeName:T.ZodLazy,...G(e)});var mn=class extends Y{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return R(r,{received:r.data,code:k.invalid_literal,expected:this._def.value}),q}return{status:"valid",value:e.data}}get value(){return this._def.value}};mn.create=(t,e)=>new mn({value:t,typeName:T.ZodLiteral,...G(e)});function Mh(t,e){return new hn({values:t,typeName:T.ZodEnum,...G(e)})}var hn=class t extends Y{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return R(r,{expected:ne.joinValues(n),received:r.parsedType,code:k.invalid_type}),q}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 R(r,{received:r.data,code:k.invalid_enum_value,options:n}),q}return Ye(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})}};hn.create=Mh;var gn=class extends Y{_parse(e){let r=ne.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==C.string&&n.parsedType!==C.number){let o=ne.objectValues(r);return R(n,{expected:ne.joinValues(o),received:n.parsedType,code:k.invalid_type}),q}if(this._cache||(this._cache=new Set(ne.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=ne.objectValues(r);return R(n,{received:n.data,code:k.invalid_enum_value,options:o}),q}return Ye(e.data)}get enum(){return this._def.values}};gn.create=(t,e)=>new gn({values:t,typeName:T.ZodNativeEnum,...G(e)});var jr=class extends Y{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==C.promise&&r.common.async===!1)return R(r,{code:k.invalid_type,expected:C.promise,received:r.parsedType}),q;let n=r.parsedType===C.promise?r.data:Promise.resolve(r.data);return Ye(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};jr.create=(t,e)=>new jr({type:t,typeName:T.ZodPromise,...G(e)});var wt=class extends Y{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===T.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=>{R(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 q;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?q:c.status==="dirty"?nn(c.value):r.value==="dirty"?nn(c.value):c});{if(r.value==="aborted")return q;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?q:a.status==="dirty"?nn(a.value):r.value==="dirty"?nn(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"?q:(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"?q:(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(!Nr(i))return q;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=>Nr(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):q);ne.assertNever(o)}};wt.create=(t,e,r)=>new wt({schema:t,typeName:T.ZodEffects,effect:e,...G(r)});wt.createWithPreprocess=(t,e,r)=>new wt({schema:e,effect:{type:"preprocess",transform:t},typeName:T.ZodEffects,...G(r)});var at=class extends Y{_parse(e){return this._getType(e)===C.undefined?Ye(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};at.create=(t,e)=>new at({innerType:t,typeName:T.ZodOptional,...G(e)});var ir=class extends Y{_parse(e){return this._getType(e)===C.null?Ye(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ir.create=(t,e)=>new ir({innerType:t,typeName:T.ZodNullable,...G(e)});var yn=class extends Y{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===C.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};yn.create=(t,e)=>new yn({innerType:t,typeName:T.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...G(e)});var _n=class extends Y{_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 Qn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new it(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new it(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};_n.create=(t,e)=>new _n({innerType:t,typeName:T.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...G(e)});var so=class extends Y{_parse(e){if(this._getType(e)!==C.nan){let n=this._getOrReturnCtx(e);return R(n,{code:k.invalid_type,expected:C.nan,received:n.parsedType}),q}return{status:"valid",value:e.data}}};so.create=t=>new so({typeName:T.ZodNaN,...G(t)});var GE=Symbol("zod_brand"),es=class extends Y{_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}},ts=class t extends Y{_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"?q:s.status==="dirty"?(r.dirty(),nn(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"?q: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:T.ZodPipeline})}},xn=class extends Y{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Nr(o)&&(o.value=Object.freeze(o.value)),o);return Qn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};xn.create=(t,e)=>new xn({innerType:t,typeName:T.ZodReadonly,...G(e)});function Ih(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function jh(t,e={},r){return t?Mr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=Ih(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=Ih(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Mr.create()}var JE={object:ct.lazycreate},T;(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"})(T||(T={}));var YE=(t,e={message:`Input not instance of ${t.name}`})=>jh(r=>r instanceof t,e),zh=Dr.create,Lh=on.create,XE=so.create,QE=sn.create,Uh=an.create,ew=cn.create,tw=to.create,rw=un.create,nw=ln.create,ow=Mr.create,sw=_r.create,iw=Ft.create,aw=ro.create,cw=xr.create,gu=ct.create,uw=ct.strictCreate,lw=dn.create,dw=Oi.create,pw=pn.create,fw=sr.create,mw=Ii.create,hw=no.create,gw=oo.create,yw=Ai.create,_w=fn.create,xw=mn.create,vw=hn.create,bw=gn.create,Sw=jr.create,kw=wt.create,Ew=at.create,ww=ir.create,Tw=wt.createWithPreprocess,Pw=ts.create,Rw=()=>zh().optional(),$w=()=>Lh().optional(),Cw=()=>Uh().optional(),Ow={string:(t=>Dr.create({...t,coerce:!0})),number:(t=>on.create({...t,coerce:!0})),boolean:(t=>an.create({...t,coerce:!0})),bigint:(t=>sn.create({...t,coerce:!0})),date:(t=>cn.create({...t,coerce:!0}))};var Iw=q;var Aw=Object.freeze({status:"aborted"});function b(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 d in i.prototype)d in a||Object.defineProperty(a,d,{value:i.prototype[d].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 d of u._zod.deferred)d();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 vr=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Ni={};function gt(t){return t&&Object.assign(Ni,t),Ni}var oe={};Ue(oe,{BIGINT_FORMAT_RANGES:()=>Fh,Class:()=>_u,NUMBER_FORMAT_RANGES:()=>wu,aborted:()=>bn,allowsEval:()=>Su,assert:()=>zw,assertEqual:()=>Nw,assertIs:()=>Mw,assertNever:()=>jw,assertNotEqual:()=>Dw,assignProp:()=>bu,cached:()=>os,captureStackTrace:()=>Mi,cleanEnum:()=>Yw,cleanRegex:()=>is,clone:()=>yt,createTransparentProxy:()=>Bw,defineLazy:()=>xe,esc:()=>vn,escapeRegex:()=>zr,extend:()=>Ww,finalizeIssue:()=>Zt,floatSafeRemainder:()=>vu,getElementAtPath:()=>Lw,getEnumValues:()=>ns,getLengthableOrigin:()=>as,getParsedType:()=>Zw,getSizableOrigin:()=>Zh,isObject:()=>io,isPlainObject:()=>ao,issue:()=>Tu,joinValues:()=>Di,jsonStringifyReplacer:()=>xu,merge:()=>Kw,normalizeParams:()=>V,nullish:()=>ss,numKeys:()=>Fw,omit:()=>Vw,optionalKeys:()=>Eu,partial:()=>Gw,pick:()=>qw,prefixIssues:()=>ar,primitiveTypes:()=>Hh,promiseAllObject:()=>Uw,propertyKeyTypes:()=>ku,randomString:()=>Hw,required:()=>Jw,stringifyPrimitive:()=>ji,unwrapMessage:()=>rs});function Nw(t){return t}function Dw(t){return t}function Mw(t){}function jw(t){throw new Error}function zw(t){}function ns(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 Di(t,e="|"){return t.map(r=>ji(r)).join(e)}function xu(t,e){return typeof e=="bigint"?e.toString():e}function os(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function ss(t){return t==null}function is(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function vu(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 xe(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 bu(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Lw(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function Uw(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 Hw(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function vn(t){return JSON.stringify(t)}var Mi=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function io(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Su=os(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function ao(t){if(io(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(io(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Fw(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Zw=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}`)}},ku=new Set(["string","number","symbol"]),Hh=new Set(["string","number","bigint","boolean","symbol","undefined"]);function zr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function yt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function V(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 Bw(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 ji(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Eu(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var wu={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]},Fh={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function qw(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 yt(t,{...t._zod.def,shape:r,checks:[]})}function Vw(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 yt(t,{...t._zod.def,shape:r,checks:[]})}function Ww(t,e){if(!ao(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 bu(this,"shape",n),n},checks:[]};return yt(t,r)}function Kw(t,e){return yt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return bu(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function Gw(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 yt(e,{...e._zod.def,shape:o,checks:[]})}function Jw(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 yt(e,{...e._zod.def,shape:o,checks:[]})}function bn(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function ar(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function rs(t){return typeof t=="string"?t:t?.message}function Zt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=rs(t.inst?._zod.def?.error?.(t))??rs(e?.error?.(t))??rs(r.customError?.(t))??rs(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Zh(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function as(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Tu(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function Yw(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var _u=class{constructor(...e){}};var Bh=(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,xu,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},zi=b("$ZodError",Bh),cs=b("$ZodError",Bh,{Parent:Error});function Pu(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 Ru(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 $u=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 vr;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Zt(c,s,gt())));throw Mi(a,o?.callee),a}return i.value},Cu=$u(cs),Ou=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=>Zt(c,s,gt())));throw Mi(a,o?.callee),a}return i.value},Iu=Ou(cs),Au=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 vr;return s.issues.length?{success:!1,error:new(t??zi)(s.issues.map(i=>Zt(i,o,gt())))}:{success:!0,data:s.value}},Sn=Au(cs),Nu=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=>Zt(i,o,gt())))}:{success:!0,data:s.value}},kn=Nu(cs);var qh=/^[cC][^\s-]{8,}$/,Vh=/^[0-9a-z]+$/,Wh=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Kh=/^[0-9a-vA-V]{20}$/,Gh=/^[A-Za-z0-9]{27}$/,Jh=/^[a-zA-Z0-9_-]{21}$/,Yh=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Xh=/^([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})$/,Du=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 Qh=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Qw="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function eg(){return new RegExp(Qw,"u")}var tg=/^(?:(?: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])$/,rg=/^(([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})$/,ng=/^((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])$/,og=/^(([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])$/,sg=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Mu=/^[A-Za-z0-9_-]*$/,ig=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var ag=/^\+(?:[0-9]){6,14}[0-9]$/,cg="(?:(?:\\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])))",ug=new RegExp(`^${cg}$`);function lg(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 dg(t){return new RegExp(`^${lg(t)}$`)}function pg(t){let e=lg({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(`^${cg}T(?:${n})$`)}var fg=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var mg=/^\d+$/,hg=/^-?\d+(?:\.\d+)?/i,gg=/true|false/i,yg=/null/i;var _g=/^[^A-Z]*$/,xg=/^[^a-z]*$/;var Ze=b("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),vg={number:"number",bigint:"bigint",object:"date"},ju=b("$ZodCheckLessThan",(t,e)=>{Ze.init(t,e);let r=vg[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})}}),zu=b("$ZodCheckGreaterThan",(t,e)=>{Ze.init(t,e);let r=vg[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})}}),bg=b("$ZodCheckMultipleOf",(t,e)=>{Ze.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):vu(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})}}),Sg=b("$ZodCheckNumberFormat",(t,e)=>{Ze.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=wu[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=mg)}),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 kg=b("$ZodCheckMaxLength",(t,e)=>{var r;Ze.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!ss(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=as(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Eg=b("$ZodCheckMinLength",(t,e)=>{var r;Ze.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!ss(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=as(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),wg=b("$ZodCheckLengthEquals",(t,e)=>{var r;Ze.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!ss(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=as(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})}}),us=b("$ZodCheckStringFormat",(t,e)=>{var r,n;Ze.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=()=>{})}),Tg=b("$ZodCheckRegex",(t,e)=>{us.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})}}),Pg=b("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=_g),us.init(t,e)}),Rg=b("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=xg),us.init(t,e)}),$g=b("$ZodCheckIncludes",(t,e)=>{Ze.init(t,e);let r=zr(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})}}),Cg=b("$ZodCheckStartsWith",(t,e)=>{Ze.init(t,e);let r=new RegExp(`^${zr(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})}}),Og=b("$ZodCheckEndsWith",(t,e)=>{Ze.init(t,e);let r=new RegExp(`.*${zr(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 Ig=b("$ZodCheckOverwrite",(t,e)=>{Ze.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Ui=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(`
|
|
39
|
+
Use context-mode MCP tools (ctx_execute, ctx_execute_file, ctx_batch_execute, ctx_fetch_and_index, ctx_search) instead of inline shell/HTTP calls for data-heavy operations.`}}});var Dc={};Ue(Dc,{PLATFORM_ENV_VARS:()=>qo,__resetClaudeCodePluginCacheForTests:()=>gM,__seedClaudeCodePluginCacheMissForTests:()=>yM,detectPlatform:()=>Tr,foreignIdentificationEnv:()=>bM,foreignWorkspaceEnv:()=>vM,getAdapter:()=>SM,getEnvVarNames:()=>xM,getSessionDirSegments:()=>mi,workspaceEnvVarsFor:()=>Jm});import{existsSync as bt,readFileSync as mM}from"node:fs";import{resolve as mt}from"node:path";import{homedir as lk}from"node:os";function hM(){if(Kn!==null)return Kn!=="miss"&&Kn.hasCM;try{let t=mt(lk(),".claude","plugins","installed_plugins.json"),e=mM(t,"utf-8"),r=JSON.parse(e),o=[...Object.keys(r.plugins??{}),...Object.keys(r.enabledPlugins??{})].some(s=>s.includes("context-mode"));return Kn={hasCM:o},o}catch{return Kn="miss",!1}}function gM(){Kn=null}function yM(){Kn="miss"}function xM(t){return(qo.get(t)??[]).map(e=>e.name)}function Jm(t){return(qo.get(t)??[]).filter(e=>e.role==="workspace").map(e=>e.name)}function vM(t){let e=new Set;for(let[r,n]of qo)if(r!==t)for(let o of n)o.role==="workspace"&&e.add(o.name);return e}function bM(t){let e=new Set;for(let[r,n]of qo)if(r!==t)for(let o of n)o.role==="identification"&&e.add(o.name);return e}function mi(t){switch(t){case"claude-code":return[".claude"];case"gemini-cli":return[".gemini"];case"antigravity":return[".gemini"];case"openclaw":return[".openclaw"];case"codex":return[".codex"];case"cursor":return[".cursor"];case"vscode-copilot":return[".vscode"];case"kiro":return[".kiro"];case"pi":return[".pi"];case"omp":return[".omp"];case"qwen-code":return[".qwen"];case"kilo":return[".config","kilo"];case"opencode":return[".config","opencode"];case"zed":return[".config","zed"];case"jetbrains-copilot":return[".config","JetBrains"];default:return null}}function Tr(t){if(t?.name){let n=Wb[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`};if(t.name.startsWith("qwen-cli-mcp-client"))return{platform:"qwen-code",confidence:"high",reason:`MCP clientInfo.name="${t.name}" (qwen-cli pattern)`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","kilo","opencode","codex","vscode-copilot","jetbrains-copilot","cursor","antigravity","kiro","pi","omp","zed","qwen-code"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};for(let[n,o]of qo)if(o.some(s=>s.detect!==!1&&process.env[s.name]))return n==="vscode-copilot"&&hM()?{platform:"claude-code",confidence:"high",reason:"VSCODE_PID set but ~/.claude/plugins/installed_plugins.json lists context-mode (issue #539 fallback)"}:{platform:n,confidence:"high",reason:`${o.filter(s=>s.detect!==!1).map(s=>s.name).join(" or ")} env var set`};let r=lk();return bt(mt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:bt(mt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:bt(mt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:bt(mt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:bt(mt(r,".omp"))?{platform:"omp",confidence:"medium",reason:"~/.omp/ directory exists"}:bt(mt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:bt(mt(r,".qwen"))?{platform:"qwen-code",confidence:"medium",reason:"~/.qwen/ directory exists"}:bt(mt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:bt(mt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:bt(mt(r,".config","kilo"))?{platform:"kilo",confidence:"medium",reason:"~/.config/kilo/ directory exists"}:bt(mt(r,".config","JetBrains"))?{platform:"jetbrains-copilot",confidence:"medium",reason:"~/.config/JetBrains/ directory exists"}:bt(mt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:bt(mt(r,".config","zed"))?{platform:"zed",confidence:"medium",reason:"~/.config/zed/ directory exists"}:{platform:"claude-code",confidence:"low",reason:"No platform detected, defaulting to Claude Code"}}async function SM(t){let e=t??Tr().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(dm(),lm));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(uS(),cS));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(fS(),pS));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(gS(),hS));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(SS(),bS));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(PS(),TS));return new r}case"jetbrains-copilot":{let{JetBrainsCopilotAdapter:r}=await Promise.resolve().then(()=>(OS(),CS));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(US(),LS));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(ZS(),FS));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(JS(),GS));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(ek(),QS));return new r}case"qwen-code":{let{QwenCodeAdapter:r}=await Promise.resolve().then(()=>(sk(),ok));return new r}case"omp":{let{OMPAdapter:r}=await Promise.resolve().then(()=>(ak(),ik));return new r}case"pi":{let{PiAdapter:r}=await Promise.resolve().then(()=>(uk(),ck));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(dm(),lm));return new r}}}var Kn,_M,qo,Gn=de(()=>{"use strict";Kb();Kn=null;_M=[["claude-code",[{name:"CLAUDE_CODE_ENTRYPOINT",role:"identification"},{name:"CLAUDE_PLUGIN_ROOT",role:"identification"},{name:"CLAUDE_PROJECT_DIR",role:"workspace"},{name:"CLAUDE_SESSION_ID",role:"identification"}]],["antigravity",[{name:"ANTIGRAVITY_CLI_ALIAS",role:"identification"}]],["cursor",[{name:"CURSOR_CWD",role:"workspace"},{name:"CURSOR_TRACE_ID",role:"identification"},{name:"CURSOR_CLI",role:"identification"}]],["kilo",[{name:"KILO",role:"identification"},{name:"KILO_PID",role:"identification"}]],["opencode",[{name:"OPENCODE_PROJECT_DIR",role:"workspace"},{name:"OPENCODE_CLIENT",role:"identification"},{name:"OPENCODE_TERMINAL",role:"identification"},{name:"OPENCODE",role:"identification"},{name:"OPENCODE_PID",role:"identification"}]],["zed",[{name:"ZED_SESSION_ID",role:"identification"},{name:"ZED_TERM",role:"identification"}]],["codex",[{name:"CODEX_THREAD_ID",role:"identification"},{name:"CODEX_CI",role:"identification"}]],["gemini-cli",[{name:"GEMINI_PROJECT_DIR",role:"workspace"},{name:"GEMINI_CLI",role:"identification"}]],["vscode-copilot",[{name:"VSCODE_CWD",role:"workspace"},{name:"VSCODE_PID",role:"identification"}]],["jetbrains-copilot",[{name:"IDEA_INITIAL_DIRECTORY",role:"workspace"}]],["qwen-code",[{name:"QWEN_PROJECT_DIR",role:"workspace"}]],["omp",[{name:"PI_CODING_AGENT_DIR",role:"workspace"}]],["pi",[{name:"PI_WORKSPACE_DIR",role:"workspace",detect:!1},{name:"PI_PROJECT_DIR",role:"workspace",detect:!1},{name:"PI_CONFIG_DIR",role:"identification"},{name:"PI_SESSION_FILE",role:"identification"},{name:"PI_COMPILED",role:"identification"}]]],qo=new Map(_M)});import{resolve as hi}from"node:path";import{homedir as Ym}from"node:os";function vt(t=process.env){let e=t.CLAUDE_CONFIG_DIR;return e&&e.trim()!==""?e.startsWith("~")?hi(Ym(),e.replace(/^~[/\\]?/,"")):hi(e):hi(Ym(),".claude")}function kM(t=process.env){return hi(vt(t),"settings.json")}function Xm(t=process.env){let e=[],r=Tr();if(r.platform!=="claude-code"){let o=mi(r.platform);o&&o.length>0&&e.push(hi(Ym(),...o,"settings.json"))}let n=kM(t);return e.includes(n)||e.push(n),e}var Un=de(()=>{"use strict";Gn()});var M={};Ue(M,{BRAND:()=>GE,DIRTY:()=>nn,EMPTY_PATH:()=>PE,INVALID:()=>q,NEVER:()=>Iw,OK:()=>Ye,ParseStatus:()=>Fe,Schema:()=>Y,ZodAny:()=>Dr,ZodArray:()=>_r,ZodBigInt:()=>sn,ZodBoolean:()=>an,ZodBranded:()=>es,ZodCatch:()=>_n,ZodDate:()=>cn,ZodDefault:()=>yn,ZodDiscriminatedUnion:()=>Oi,ZodEffects:()=>wt,ZodEnum:()=>hn,ZodError:()=>it,ZodFirstPartyTypeKind:()=>T,ZodFunction:()=>Ai,ZodIntersection:()=>pn,ZodIssueCode:()=>k,ZodLazy:()=>fn,ZodLiteral:()=>mn,ZodMap:()=>no,ZodNaN:()=>so,ZodNativeEnum:()=>gn,ZodNever:()=>Ft,ZodNull:()=>ln,ZodNullable:()=>ir,ZodNumber:()=>on,ZodObject:()=>ct,ZodOptional:()=>at,ZodParsedType:()=>C,ZodPipeline:()=>ts,ZodPromise:()=>Mr,ZodReadonly:()=>xn,ZodRecord:()=>Ii,ZodSchema:()=>Y,ZodSet:()=>oo,ZodString:()=>Nr,ZodSymbol:()=>to,ZodTransformer:()=>wt,ZodTuple:()=>sr,ZodType:()=>Y,ZodUndefined:()=>un,ZodUnion:()=>dn,ZodUnknown:()=>yr,ZodVoid:()=>ro,addIssueToContext:()=>R,any:()=>ow,array:()=>cw,bigint:()=>QE,boolean:()=>Uh,coerce:()=>Ow,custom:()=>jh,date:()=>ew,datetimeRegex:()=>Dh,defaultErrorMap:()=>hr,discriminatedUnion:()=>dw,effect:()=>kw,enum:()=>vw,function:()=>yw,getErrorMap:()=>Xn,getParsedType:()=>or,instanceof:()=>YE,intersection:()=>pw,isAborted:()=>$i,isAsync:()=>Qn,isDirty:()=>Ci,isValid:()=>Ar,late:()=>JE,lazy:()=>_w,literal:()=>xw,makeIssue:()=>Qo,map:()=>hw,nan:()=>XE,nativeEnum:()=>bw,never:()=>iw,null:()=>nw,nullable:()=>ww,number:()=>Lh,object:()=>gu,objectUtil:()=>fu,oboolean:()=>Cw,onumber:()=>$w,optional:()=>Ew,ostring:()=>Rw,pipeline:()=>Pw,preprocess:()=>Tw,promise:()=>Sw,quotelessJson:()=>EE,record:()=>mw,set:()=>gw,setErrorMap:()=>TE,strictObject:()=>uw,string:()=>zh,symbol:()=>tw,transformer:()=>kw,tuple:()=>fw,undefined:()=>rw,union:()=>lw,unknown:()=>sw,util:()=>ne,void:()=>aw});var ne;(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})(ne||(ne={}));var fu;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(fu||(fu={}));var C=ne.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),or=t=>{switch(typeof t){case"undefined":return C.undefined;case"string":return C.string;case"number":return Number.isNaN(t)?C.nan:C.number;case"boolean":return C.boolean;case"function":return C.function;case"bigint":return C.bigint;case"symbol":return C.symbol;case"object":return Array.isArray(t)?C.array:t===null?C.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?C.promise:typeof Map<"u"&&t instanceof Map?C.map:typeof Set<"u"&&t instanceof Set?C.set:typeof Date<"u"&&t instanceof Date?C.date:C.object;default:return C.unknown}};var k=ne.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"]),EE=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),it=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,ne.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()}};it.create=t=>new it(t);var wE=(t,e)=>{let r;switch(t.code){case k.invalid_type:t.received===C.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case k.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,ne.jsonStringifyReplacer)}`;break;case k.unrecognized_keys:r=`Unrecognized key(s) in object: ${ne.joinValues(t.keys,", ")}`;break;case k.invalid_union:r="Invalid input";break;case k.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${ne.joinValues(t.options)}`;break;case k.invalid_enum_value:r=`Invalid enum value. Expected ${ne.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}"`:ne.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,ne.assertNever(t)}return{message:r}},hr=wE;var Ch=hr;function TE(t){Ch=t}function Xn(){return Ch}var Qo=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}},PE=[];function R(t,e){let r=Xn(),n=Qo({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===hr?void 0:hr].filter(o=>!!o)});t.common.issues.push(n)}var Fe=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 q;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 q;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}}},q=Object.freeze({status:"aborted"}),nn=t=>({status:"dirty",value:t}),Ye=t=>({status:"valid",value:t}),$i=t=>t.status==="aborted",Ci=t=>t.status==="dirty",Ar=t=>t.status==="valid",Qn=t=>typeof Promise<"u"&&t instanceof Promise;var D;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(D||(D={}));var Et=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}},Oh=(t,e)=>{if(Ar(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 it(t.common.issues);return this._error=r,this._error}}};function G(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 Y=class{get description(){return this._def.description}_getType(e){return or(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:or(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Fe,ctx:{common:e.parent.common,data:e.data,parsedType:or(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Qn(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:or(e)},o=this._parseSync({data:e,path:n.path,parent:n});return Oh(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:or(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Ar(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=>Ar(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:or(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(Qn(o)?o:Promise.resolve(o));return Oh(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 wt({schema:this,typeName:T.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 at.create(this,this._def)}nullable(){return ir.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return _r.create(this)}promise(){return Mr.create(this,this._def)}or(e){return dn.create([this,e],this._def)}and(e){return pn.create(this,e,this._def)}transform(e){return new wt({...G(this._def),schema:this,typeName:T.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new yn({...G(this._def),innerType:this,defaultValue:r,typeName:T.ZodDefault})}brand(){return new es({typeName:T.ZodBranded,type:this,...G(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new _n({...G(this._def),innerType:this,catchValue:r,typeName:T.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return ts.create(this,e)}readonly(){return xn.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},RE=/^c[^\s-]{8,}$/i,$E=/^[0-9a-z]+$/,CE=/^[0-9A-HJKMNP-TV-Z]{26}$/i,OE=/^[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,IE=/^[a-z0-9_-]{21}$/i,AE=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,NE=/^[-+]?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)?)??$/,DE=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,ME="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",mu,jE=/^(?:(?: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])$/,zE=/^(?:(?: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])$/,LE=/^(([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]))$/,UE=/^(([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])$/,HE=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,FE=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Ah="((\\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])))",ZE=new RegExp(`^${Ah}$`);function Nh(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 BE(t){return new RegExp(`^${Nh(t)}$`)}function Dh(t){let e=`${Ah}T${Nh(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 qE(t,e){return!!((e==="v4"||!e)&&jE.test(t)||(e==="v6"||!e)&&LE.test(t))}function VE(t,e){if(!AE.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 WE(t,e){return!!((e==="v4"||!e)&&zE.test(t)||(e==="v6"||!e)&&UE.test(t))}var Nr=class t extends Y{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==C.string){let s=this._getOrReturnCtx(e);return R(s,{code:k.invalid_type,expected:C.string,received:s.parsedType}),q}let n=new Fe,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),R(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),R(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?R(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&R(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")DE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"email",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")mu||(mu=new RegExp(ME,"u")),mu.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"emoji",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")OE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"uuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")IE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"nanoid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")RE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")$E.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cuid2",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")CE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(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),R(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),R(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),R(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),R(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),R(o,{code:k.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?Dh(s).test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:k.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?ZE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:k.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?BE(s).test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:k.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?NE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"duration",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?qE(e.data,s.version)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"ip",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?VE(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"jwt",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?WE(e.data,s.version)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cidr",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?HE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?FE.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64url",code:k.invalid_string,message:s.message}),n.dirty()):ne.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,...D.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...D.errToObj(e)})}url(e){return this._addCheck({kind:"url",...D.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...D.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...D.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...D.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...D.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...D.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...D.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...D.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...D.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...D.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...D.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...D.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,...D.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,...D.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...D.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...D.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...D.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...D.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...D.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...D.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...D.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...D.errToObj(r)})}nonempty(e){return this.min(1,D.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}};Nr.create=t=>new Nr({checks:[],typeName:T.ZodString,coerce:t?.coerce??!1,...G(t)});function KE(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 on=class t extends Y{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)!==C.number){let s=this._getOrReturnCtx(e);return R(s,{code:k.invalid_type,expected:C.number,received:s.parsedType}),q}let n,o=new Fe;for(let s of this._def.checks)s.kind==="int"?ne.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),R(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),R(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),R(n,{code:k.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?KE(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),R(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),R(n,{code:k.not_finite,message:s.message}),o.dirty()):ne.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,D.toString(r))}gt(e,r){return this.setLimit("min",e,!1,D.toString(r))}lte(e,r){return this.setLimit("max",e,!0,D.toString(r))}lt(e,r){return this.setLimit("max",e,!1,D.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:D.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:D.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:D.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:D.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:D.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:D.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:D.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:D.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:D.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:D.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"&&ne.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)}};on.create=t=>new on({checks:[],typeName:T.ZodNumber,coerce:t?.coerce||!1,...G(t)});var sn=class t extends Y{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)!==C.bigint)return this._getInvalidInput(e);let n,o=new Fe;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),R(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),R(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),R(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):ne.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return R(r,{code:k.invalid_type,expected:C.bigint,received:r.parsedType}),q}gte(e,r){return this.setLimit("min",e,!0,D.toString(r))}gt(e,r){return this.setLimit("min",e,!1,D.toString(r))}lte(e,r){return this.setLimit("max",e,!0,D.toString(r))}lt(e,r){return this.setLimit("max",e,!1,D.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:D.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:D.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:D.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:D.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:D.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:D.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}};sn.create=t=>new sn({checks:[],typeName:T.ZodBigInt,coerce:t?.coerce??!1,...G(t)});var an=class extends Y{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==C.boolean){let n=this._getOrReturnCtx(e);return R(n,{code:k.invalid_type,expected:C.boolean,received:n.parsedType}),q}return Ye(e.data)}};an.create=t=>new an({typeName:T.ZodBoolean,coerce:t?.coerce||!1,...G(t)});var cn=class t extends Y{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==C.date){let s=this._getOrReturnCtx(e);return R(s,{code:k.invalid_type,expected:C.date,received:s.parsedType}),q}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return R(s,{code:k.invalid_date}),q}let n=new Fe,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),R(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),R(o,{code:k.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):ne.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:D.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:D.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}};cn.create=t=>new cn({checks:[],coerce:t?.coerce||!1,typeName:T.ZodDate,...G(t)});var to=class extends Y{_parse(e){if(this._getType(e)!==C.symbol){let n=this._getOrReturnCtx(e);return R(n,{code:k.invalid_type,expected:C.symbol,received:n.parsedType}),q}return Ye(e.data)}};to.create=t=>new to({typeName:T.ZodSymbol,...G(t)});var un=class extends Y{_parse(e){if(this._getType(e)!==C.undefined){let n=this._getOrReturnCtx(e);return R(n,{code:k.invalid_type,expected:C.undefined,received:n.parsedType}),q}return Ye(e.data)}};un.create=t=>new un({typeName:T.ZodUndefined,...G(t)});var ln=class extends Y{_parse(e){if(this._getType(e)!==C.null){let n=this._getOrReturnCtx(e);return R(n,{code:k.invalid_type,expected:C.null,received:n.parsedType}),q}return Ye(e.data)}};ln.create=t=>new ln({typeName:T.ZodNull,...G(t)});var Dr=class extends Y{constructor(){super(...arguments),this._any=!0}_parse(e){return Ye(e.data)}};Dr.create=t=>new Dr({typeName:T.ZodAny,...G(t)});var yr=class extends Y{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ye(e.data)}};yr.create=t=>new yr({typeName:T.ZodUnknown,...G(t)});var Ft=class extends Y{_parse(e){let r=this._getOrReturnCtx(e);return R(r,{code:k.invalid_type,expected:C.never,received:r.parsedType}),q}};Ft.create=t=>new Ft({typeName:T.ZodNever,...G(t)});var ro=class extends Y{_parse(e){if(this._getType(e)!==C.undefined){let n=this._getOrReturnCtx(e);return R(n,{code:k.invalid_type,expected:C.void,received:n.parsedType}),q}return Ye(e.data)}};ro.create=t=>new ro({typeName:T.ZodVoid,...G(t)});var _r=class t extends Y{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==C.array)return R(r,{code:k.invalid_type,expected:C.array,received:r.parsedType}),q;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(R(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&&(R(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&&(R(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 Et(r,i,r.path,a)))).then(i=>Fe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new Et(r,i,r.path,a)));return Fe.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:D.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:D.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:D.toString(r)}})}nonempty(e){return this.min(1,e)}};_r.create=(t,e)=>new _r({type:t,minLength:null,maxLength:null,exactLength:null,typeName:T.ZodArray,...G(e)});function eo(t){if(t instanceof ct){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=at.create(eo(n))}return new ct({...t._def,shape:()=>e})}else return t instanceof _r?new _r({...t._def,type:eo(t.element)}):t instanceof at?at.create(eo(t.unwrap())):t instanceof ir?ir.create(eo(t.unwrap())):t instanceof sr?sr.create(t.items.map(e=>eo(e))):t}var ct=class t extends Y{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=ne.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==C.object){let u=this._getOrReturnCtx(e);return R(u,{code:k.invalid_type,expected:C.object,received:u.parsedType}),q}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Ft&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let d=s[u],l=o.data[u];c.push({key:{status:"valid",value:u},value:d._parse(new Et(o,l,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof Ft){let u=this._def.unknownKeys;if(u==="passthrough")for(let d of a)c.push({key:{status:"valid",value:d},value:{status:"valid",value:o.data[d]}});else if(u==="strict")a.length>0&&(R(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 d of a){let l=o.data[d];c.push({key:{status:"valid",value:d},value:u._parse(new Et(o,l,o.path,d)),alwaysSet:d in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let d of c){let l=await d.key,f=await d.value;u.push({key:l,value:f,alwaysSet:d.alwaysSet})}return u}).then(u=>Fe.mergeObjectSync(n,u)):Fe.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return D.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:D.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:T.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 ne.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 ne.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return eo(this)}partial(e){let r={};for(let n of ne.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 ne.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof at;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Mh(ne.objectKeys(this.shape))}};ct.create=(t,e)=>new ct({shape:()=>t,unknownKeys:"strip",catchall:Ft.create(),typeName:T.ZodObject,...G(e)});ct.strictCreate=(t,e)=>new ct({shape:()=>t,unknownKeys:"strict",catchall:Ft.create(),typeName:T.ZodObject,...G(e)});ct.lazycreate=(t,e)=>new ct({shape:t,unknownKeys:"strip",catchall:Ft.create(),typeName:T.ZodObject,...G(e)});var dn=class extends Y{_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 it(a.ctx.common.issues));return R(r,{code:k.invalid_union,unionErrors:i}),q}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},d=c._parseSync({data:r.data,path:r.path,parent:u});if(d.status==="valid")return d;d.status==="dirty"&&!s&&(s={result:d,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 it(c));return R(r,{code:k.invalid_union,unionErrors:a}),q}}get options(){return this._def.options}};dn.create=(t,e)=>new dn({options:t,typeName:T.ZodUnion,...G(e)});var gr=t=>t instanceof fn?gr(t.schema):t instanceof wt?gr(t.innerType()):t instanceof mn?[t.value]:t instanceof hn?t.options:t instanceof gn?ne.objectValues(t.enum):t instanceof yn?gr(t._def.innerType):t instanceof un?[void 0]:t instanceof ln?[null]:t instanceof at?[void 0,...gr(t.unwrap())]:t instanceof ir?[null,...gr(t.unwrap())]:t instanceof es||t instanceof xn?gr(t.unwrap()):t instanceof _n?gr(t._def.innerType):[],Oi=class t extends Y{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==C.object)return R(r,{code:k.invalid_type,expected:C.object,received:r.parsedType}),q;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}):(R(r,{code:k.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),q)}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=gr(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:T.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...G(n)})}};function hu(t,e){let r=or(t),n=or(e);if(t===e)return{valid:!0,data:t};if(r===C.object&&n===C.object){let o=ne.objectKeys(e),s=ne.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=hu(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===C.array&&n===C.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=hu(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===C.date&&n===C.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var pn=class extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if($i(s)||$i(i))return q;let a=hu(s.value,i.value);return a.valid?((Ci(s)||Ci(i))&&r.dirty(),{status:r.value,value:a.data}):(R(n,{code:k.invalid_intersection_types}),q)};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}))}};pn.create=(t,e,r)=>new pn({left:t,right:e,typeName:T.ZodIntersection,...G(r)});var sr=class t extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==C.array)return R(n,{code:k.invalid_type,expected:C.array,received:n.parsedType}),q;if(n.data.length<this._def.items.length)return R(n,{code:k.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),q;!this._def.rest&&n.data.length>this._def.items.length&&(R(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 Et(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Fe.mergeArray(r,i)):Fe.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};sr.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new sr({items:t,typeName:T.ZodTuple,rest:null,...G(e)})};var Ii=class t extends Y{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!==C.object)return R(n,{code:k.invalid_type,expected:C.object,received:n.parsedType}),q;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new Et(n,a,n.path,a)),value:i._parse(new Et(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Fe.mergeObjectAsync(r,o):Fe.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Y?new t({keyType:e,valueType:r,typeName:T.ZodRecord,...G(n)}):new t({keyType:Nr.create(),valueType:e,typeName:T.ZodRecord,...G(r)})}},no=class extends Y{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!==C.map)return R(n,{code:k.invalid_type,expected:C.map,received:n.parsedType}),q;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new Et(n,a,n.path,[u,"key"])),value:s._parse(new Et(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,d=await c.value;if(u.status==="aborted"||d.status==="aborted")return q;(u.status==="dirty"||d.status==="dirty")&&r.dirty(),a.set(u.value,d.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of i){let u=c.key,d=c.value;if(u.status==="aborted"||d.status==="aborted")return q;(u.status==="dirty"||d.status==="dirty")&&r.dirty(),a.set(u.value,d.value)}return{status:r.value,value:a}}}};no.create=(t,e,r)=>new no({valueType:e,keyType:t,typeName:T.ZodMap,...G(r)});var oo=class t extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==C.set)return R(n,{code:k.invalid_type,expected:C.set,received:n.parsedType}),q;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(R(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&&(R(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 d of c){if(d.status==="aborted")return q;d.status==="dirty"&&r.dirty(),u.add(d.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new Et(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:D.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:D.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};oo.create=(t,e)=>new oo({valueType:t,minSize:null,maxSize:null,typeName:T.ZodSet,...G(e)});var Ai=class t extends Y{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==C.function)return R(r,{code:k.invalid_type,expected:C.function,received:r.parsedType}),q;function n(a,c){return Qo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Xn(),hr].filter(u=>!!u),issueData:{code:k.invalid_arguments,argumentsError:c}})}function o(a,c){return Qo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Xn(),hr].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 Mr){let a=this;return Ye(async function(...c){let u=new it([]),d=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),l=await Reflect.apply(i,this,d);return await a._def.returns._def.type.parseAsync(l,s).catch(m=>{throw u.addIssue(o(l,m)),u})})}else{let a=this;return Ye(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new it([n(c,u.error)]);let d=Reflect.apply(i,this,u.data),l=a._def.returns.safeParse(d,s);if(!l.success)throw new it([o(d,l.error)]);return l.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:sr.create(e).rest(yr.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||sr.create([]).rest(yr.create()),returns:r||yr.create(),typeName:T.ZodFunction,...G(n)})}},fn=class extends Y{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})}};fn.create=(t,e)=>new fn({getter:t,typeName:T.ZodLazy,...G(e)});var mn=class extends Y{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return R(r,{received:r.data,code:k.invalid_literal,expected:this._def.value}),q}return{status:"valid",value:e.data}}get value(){return this._def.value}};mn.create=(t,e)=>new mn({value:t,typeName:T.ZodLiteral,...G(e)});function Mh(t,e){return new hn({values:t,typeName:T.ZodEnum,...G(e)})}var hn=class t extends Y{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return R(r,{expected:ne.joinValues(n),received:r.parsedType,code:k.invalid_type}),q}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 R(r,{received:r.data,code:k.invalid_enum_value,options:n}),q}return Ye(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})}};hn.create=Mh;var gn=class extends Y{_parse(e){let r=ne.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==C.string&&n.parsedType!==C.number){let o=ne.objectValues(r);return R(n,{expected:ne.joinValues(o),received:n.parsedType,code:k.invalid_type}),q}if(this._cache||(this._cache=new Set(ne.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=ne.objectValues(r);return R(n,{received:n.data,code:k.invalid_enum_value,options:o}),q}return Ye(e.data)}get enum(){return this._def.values}};gn.create=(t,e)=>new gn({values:t,typeName:T.ZodNativeEnum,...G(e)});var Mr=class extends Y{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==C.promise&&r.common.async===!1)return R(r,{code:k.invalid_type,expected:C.promise,received:r.parsedType}),q;let n=r.parsedType===C.promise?r.data:Promise.resolve(r.data);return Ye(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Mr.create=(t,e)=>new Mr({type:t,typeName:T.ZodPromise,...G(e)});var wt=class extends Y{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===T.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=>{R(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 q;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?q:c.status==="dirty"?nn(c.value):r.value==="dirty"?nn(c.value):c});{if(r.value==="aborted")return q;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?q:a.status==="dirty"?nn(a.value):r.value==="dirty"?nn(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"?q:(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"?q:(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(!Ar(i))return q;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=>Ar(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):q);ne.assertNever(o)}};wt.create=(t,e,r)=>new wt({schema:t,typeName:T.ZodEffects,effect:e,...G(r)});wt.createWithPreprocess=(t,e,r)=>new wt({schema:e,effect:{type:"preprocess",transform:t},typeName:T.ZodEffects,...G(r)});var at=class extends Y{_parse(e){return this._getType(e)===C.undefined?Ye(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};at.create=(t,e)=>new at({innerType:t,typeName:T.ZodOptional,...G(e)});var ir=class extends Y{_parse(e){return this._getType(e)===C.null?Ye(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ir.create=(t,e)=>new ir({innerType:t,typeName:T.ZodNullable,...G(e)});var yn=class extends Y{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===C.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};yn.create=(t,e)=>new yn({innerType:t,typeName:T.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...G(e)});var _n=class extends Y{_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 Qn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new it(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new it(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};_n.create=(t,e)=>new _n({innerType:t,typeName:T.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...G(e)});var so=class extends Y{_parse(e){if(this._getType(e)!==C.nan){let n=this._getOrReturnCtx(e);return R(n,{code:k.invalid_type,expected:C.nan,received:n.parsedType}),q}return{status:"valid",value:e.data}}};so.create=t=>new so({typeName:T.ZodNaN,...G(t)});var GE=Symbol("zod_brand"),es=class extends Y{_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}},ts=class t extends Y{_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"?q:s.status==="dirty"?(r.dirty(),nn(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"?q: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:T.ZodPipeline})}},xn=class extends Y{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Ar(o)&&(o.value=Object.freeze(o.value)),o);return Qn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};xn.create=(t,e)=>new xn({innerType:t,typeName:T.ZodReadonly,...G(e)});function Ih(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function jh(t,e={},r){return t?Dr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=Ih(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=Ih(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Dr.create()}var JE={object:ct.lazycreate},T;(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"})(T||(T={}));var YE=(t,e={message:`Input not instance of ${t.name}`})=>jh(r=>r instanceof t,e),zh=Nr.create,Lh=on.create,XE=so.create,QE=sn.create,Uh=an.create,ew=cn.create,tw=to.create,rw=un.create,nw=ln.create,ow=Dr.create,sw=yr.create,iw=Ft.create,aw=ro.create,cw=_r.create,gu=ct.create,uw=ct.strictCreate,lw=dn.create,dw=Oi.create,pw=pn.create,fw=sr.create,mw=Ii.create,hw=no.create,gw=oo.create,yw=Ai.create,_w=fn.create,xw=mn.create,vw=hn.create,bw=gn.create,Sw=Mr.create,kw=wt.create,Ew=at.create,ww=ir.create,Tw=wt.createWithPreprocess,Pw=ts.create,Rw=()=>zh().optional(),$w=()=>Lh().optional(),Cw=()=>Uh().optional(),Ow={string:(t=>Nr.create({...t,coerce:!0})),number:(t=>on.create({...t,coerce:!0})),boolean:(t=>an.create({...t,coerce:!0})),bigint:(t=>sn.create({...t,coerce:!0})),date:(t=>cn.create({...t,coerce:!0}))};var Iw=q;var Aw=Object.freeze({status:"aborted"});function b(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 d in i.prototype)d in a||Object.defineProperty(a,d,{value:i.prototype[d].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 d of u._zod.deferred)d();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 xr=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Ni={};function gt(t){return t&&Object.assign(Ni,t),Ni}var oe={};Ue(oe,{BIGINT_FORMAT_RANGES:()=>Fh,Class:()=>_u,NUMBER_FORMAT_RANGES:()=>wu,aborted:()=>bn,allowsEval:()=>Su,assert:()=>zw,assertEqual:()=>Nw,assertIs:()=>Mw,assertNever:()=>jw,assertNotEqual:()=>Dw,assignProp:()=>bu,cached:()=>os,captureStackTrace:()=>Mi,cleanEnum:()=>Yw,cleanRegex:()=>is,clone:()=>yt,createTransparentProxy:()=>Bw,defineLazy:()=>_e,esc:()=>vn,escapeRegex:()=>jr,extend:()=>Ww,finalizeIssue:()=>Zt,floatSafeRemainder:()=>vu,getElementAtPath:()=>Lw,getEnumValues:()=>ns,getLengthableOrigin:()=>as,getParsedType:()=>Zw,getSizableOrigin:()=>Zh,isObject:()=>io,isPlainObject:()=>ao,issue:()=>Tu,joinValues:()=>Di,jsonStringifyReplacer:()=>xu,merge:()=>Kw,normalizeParams:()=>V,nullish:()=>ss,numKeys:()=>Fw,omit:()=>Vw,optionalKeys:()=>Eu,partial:()=>Gw,pick:()=>qw,prefixIssues:()=>ar,primitiveTypes:()=>Hh,promiseAllObject:()=>Uw,propertyKeyTypes:()=>ku,randomString:()=>Hw,required:()=>Jw,stringifyPrimitive:()=>ji,unwrapMessage:()=>rs});function Nw(t){return t}function Dw(t){return t}function Mw(t){}function jw(t){throw new Error}function zw(t){}function ns(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 Di(t,e="|"){return t.map(r=>ji(r)).join(e)}function xu(t,e){return typeof e=="bigint"?e.toString():e}function os(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function ss(t){return t==null}function is(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function vu(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 _e(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 bu(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Lw(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function Uw(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 Hw(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function vn(t){return JSON.stringify(t)}var Mi=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function io(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Su=os(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function ao(t){if(io(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(io(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Fw(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Zw=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}`)}},ku=new Set(["string","number","symbol"]),Hh=new Set(["string","number","bigint","boolean","symbol","undefined"]);function jr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function yt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function V(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 Bw(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 ji(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Eu(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var wu={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]},Fh={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function qw(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 yt(t,{...t._zod.def,shape:r,checks:[]})}function Vw(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 yt(t,{...t._zod.def,shape:r,checks:[]})}function Ww(t,e){if(!ao(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 bu(this,"shape",n),n},checks:[]};return yt(t,r)}function Kw(t,e){return yt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return bu(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function Gw(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 yt(e,{...e._zod.def,shape:o,checks:[]})}function Jw(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 yt(e,{...e._zod.def,shape:o,checks:[]})}function bn(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function ar(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function rs(t){return typeof t=="string"?t:t?.message}function Zt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=rs(t.inst?._zod.def?.error?.(t))??rs(e?.error?.(t))??rs(r.customError?.(t))??rs(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Zh(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function as(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Tu(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function Yw(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var _u=class{constructor(...e){}};var Bh=(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,xu,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},zi=b("$ZodError",Bh),cs=b("$ZodError",Bh,{Parent:Error});function Pu(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 Ru(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 $u=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 xr;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Zt(c,s,gt())));throw Mi(a,o?.callee),a}return i.value},Cu=$u(cs),Ou=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=>Zt(c,s,gt())));throw Mi(a,o?.callee),a}return i.value},Iu=Ou(cs),Au=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 xr;return s.issues.length?{success:!1,error:new(t??zi)(s.issues.map(i=>Zt(i,o,gt())))}:{success:!0,data:s.value}},Sn=Au(cs),Nu=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=>Zt(i,o,gt())))}:{success:!0,data:s.value}},kn=Nu(cs);var qh=/^[cC][^\s-]{8,}$/,Vh=/^[0-9a-z]+$/,Wh=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Kh=/^[0-9a-vA-V]{20}$/,Gh=/^[A-Za-z0-9]{27}$/,Jh=/^[a-zA-Z0-9_-]{21}$/,Yh=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Xh=/^([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})$/,Du=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 Qh=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Qw="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function eg(){return new RegExp(Qw,"u")}var tg=/^(?:(?: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])$/,rg=/^(([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})$/,ng=/^((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])$/,og=/^(([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])$/,sg=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Mu=/^[A-Za-z0-9_-]*$/,ig=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var ag=/^\+(?:[0-9]){6,14}[0-9]$/,cg="(?:(?:\\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])))",ug=new RegExp(`^${cg}$`);function lg(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 dg(t){return new RegExp(`^${lg(t)}$`)}function pg(t){let e=lg({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(`^${cg}T(?:${n})$`)}var fg=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var mg=/^\d+$/,hg=/^-?\d+(?:\.\d+)?/i,gg=/true|false/i,yg=/null/i;var _g=/^[^A-Z]*$/,xg=/^[^a-z]*$/;var Ze=b("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),vg={number:"number",bigint:"bigint",object:"date"},ju=b("$ZodCheckLessThan",(t,e)=>{Ze.init(t,e);let r=vg[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})}}),zu=b("$ZodCheckGreaterThan",(t,e)=>{Ze.init(t,e);let r=vg[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})}}),bg=b("$ZodCheckMultipleOf",(t,e)=>{Ze.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):vu(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})}}),Sg=b("$ZodCheckNumberFormat",(t,e)=>{Ze.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=wu[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=mg)}),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 kg=b("$ZodCheckMaxLength",(t,e)=>{var r;Ze.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!ss(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=as(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Eg=b("$ZodCheckMinLength",(t,e)=>{var r;Ze.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!ss(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=as(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),wg=b("$ZodCheckLengthEquals",(t,e)=>{var r;Ze.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!ss(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=as(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})}}),us=b("$ZodCheckStringFormat",(t,e)=>{var r,n;Ze.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=()=>{})}),Tg=b("$ZodCheckRegex",(t,e)=>{us.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})}}),Pg=b("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=_g),us.init(t,e)}),Rg=b("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=xg),us.init(t,e)}),$g=b("$ZodCheckIncludes",(t,e)=>{Ze.init(t,e);let r=jr(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})}}),Cg=b("$ZodCheckStartsWith",(t,e)=>{Ze.init(t,e);let r=new RegExp(`^${jr(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})}}),Og=b("$ZodCheckEndsWith",(t,e)=>{Ze.init(t,e);let r=new RegExp(`.*${jr(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 Ig=b("$ZodCheckOverwrite",(t,e)=>{Ze.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Ui=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
40
|
`).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(`
|
|
41
|
-
`))}};var Ng={major:4,minor:0,patch:0};var fe=b("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Ng;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=bn(s),u;for(let d of i){if(d._zod.def.when){if(!d._zod.def.when(s))continue}else if(c)continue;let l=s.issues.length,f=d._zod.check(s);if(f instanceof Promise&&a?.async===!1)throw new
|
|
41
|
+
`))}};var Ng={major:4,minor:0,patch:0};var fe=b("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Ng;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=bn(s),u;for(let d of i){if(d._zod.def.when){if(!d._zod.def.when(s))continue}else if(c)continue;let l=s.issues.length,f=d._zod.check(s);if(f instanceof Promise&&a?.async===!1)throw new xr;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await f,s.issues.length!==l&&(c||(c=bn(s,l)))});else{if(s.issues.length===l)continue;c||(c=bn(s,l))}}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 xr;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=Sn(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return kn(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),ls=b("$ZodString",(t,e)=>{fe.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??fg(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}}),xe=b("$ZodStringFormat",(t,e)=>{us.init(t,e),ls.init(t,e)}),Uu=b("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Xh),xe.init(t,e)}),Hu=b("$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=Du(n))}else e.pattern??(e.pattern=Du());xe.init(t,e)}),Fu=b("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Qh),xe.init(t,e)}),Zu=b("$ZodURL",(t,e)=>{xe.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:ig.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})}}}),Bu=b("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=eg()),xe.init(t,e)}),qu=b("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Jh),xe.init(t,e)}),Vu=b("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=qh),xe.init(t,e)}),Wu=b("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Vh),xe.init(t,e)}),Ku=b("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Wh),xe.init(t,e)}),Gu=b("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Kh),xe.init(t,e)}),Ju=b("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Gh),xe.init(t,e)}),Bg=b("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=pg(e)),xe.init(t,e)}),qg=b("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=ug),xe.init(t,e)}),Vg=b("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=dg(e)),xe.init(t,e)}),Wg=b("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Yh),xe.init(t,e)}),Yu=b("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=tg),xe.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),Xu=b("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=rg),xe.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})}}}),Qu=b("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=ng),xe.init(t,e)}),el=b("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=og),xe.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 Kg(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var tl=b("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=sg),xe.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Kg(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function eT(t){if(!Mu.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Kg(r)}var rl=b("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Mu),xe.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{eT(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),nl=b("$ZodE164",(t,e)=>{e.pattern??(e.pattern=ag),xe.init(t,e)});function tT(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 ol=b("$ZodJWT",(t,e)=>{xe.init(t,e),t._zod.check=r=>{tT(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Fi=b("$ZodNumber",(t,e)=>{fe.init(t,e),t._zod.pattern=t._zod.bag.pattern??hg,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}}),sl=b("$ZodNumber",(t,e)=>{Sg.init(t,e),Fi.init(t,e)}),il=b("$ZodBoolean",(t,e)=>{fe.init(t,e),t._zod.pattern=gg,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 al=b("$ZodNull",(t,e)=>{fe.init(t,e),t._zod.pattern=yg,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 cl=b("$ZodUnknown",(t,e)=>{fe.init(t,e),t._zod.parse=r=>r}),ul=b("$ZodNever",(t,e)=>{fe.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function Dg(t,e,r){t.issues.length&&e.issues.push(...ar(r,t.issues)),e.value[r]=t.value}var ll=b("$ZodArray",(t,e)=>{fe.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=>Dg(u,r,i))):Dg(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Hi(t,e,r){t.issues.length&&e.issues.push(...ar(r,t.issues)),e.value[r]=t.value}function Mg(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(...ar(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Zi=b("$ZodObject",(t,e)=>{fe.init(t,e);let r=os(()=>{let l=Object.keys(e.shape);for(let m of l)if(!(e.shape[m]instanceof fe))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let f=Eu(e.shape);return{shape:e.shape,keys:l,keySet:new Set(l),numKeys:l.length,optionalKeys:new Set(f)}});_e(t._zod,"propValues",()=>{let l=e.shape,f={};for(let m in l){let p=l[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=l=>{let f=new Ui(["shape","payload","ctx"]),m=r.value,p=x=>{let y=vn(x);return`shape[${y}]._zod.run({ value: input[${y}], 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 y=h[x];f.write(`const ${y} = ${p(x)};`);let S=vn(x);f.write(`
|
|
42
42
|
if (${y}.issues.length) {
|
|
43
43
|
if (input[${S}] === undefined) {
|
|
44
44
|
if (${S} in input) {
|
|
@@ -61,15 +61,15 @@ Use context-mode MCP tools (ctx_execute, ctx_execute_file, ctx_batch_execute, ct
|
|
|
61
61
|
if (${y}.issues.length) payload.issues = payload.issues.concat(${y}.issues.map(iss => ({
|
|
62
62
|
...iss,
|
|
63
63
|
path: iss.path ? [${vn(x)}, ...iss.path] : [${vn(x)}]
|
|
64
|
-
})));`),f.write(`newResult[${vn(x)}] = ${y}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let _=f.compile();return(x,y)=>_(l,x,y)},o,s=io,i=!Ni.jitless,c=i&&Su.value,u=e.catchall,d;t._zod.parse=(l,f)=>{d??(d=r.value);let m=l.value;if(!s(m))return l.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),l;let p=[];if(i&&c&&f?.async===!1&&f.jitless!==!0)o||(o=n(e.shape)),l=o(l,f);else{l.value={};let y=d.shape;for(let S of d.keys){let E=y[S],O=E._zod.run({value:m[S],issues:[]},f),L=E._zod.optin==="optional"&&E._zod.optout==="optional";O instanceof Promise?p.push(O.then(A=>L?Mg(A,l,S,m):Hi(A,l,S))):L?Mg(O,l,S,m):Hi(O,l,S)}}if(!u)return p.length?Promise.all(p).then(()=>l):l;let h=[],g=d.keySet,_=u._zod,x=_.def.type;for(let y of Object.keys(m)){if(g.has(y))continue;if(x==="never"){h.push(y);continue}let S=_.run({value:m[y],issues:[]},f);S instanceof Promise?p.push(S.then(E=>Hi(E,l,y))):Hi(S,l,y)}return h.length&&l.issues.push({code:"unrecognized_keys",keys:h,input:m,inst:t}),p.length?Promise.all(p).then(()=>l):l}});function jg(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=>Zt(s,n,gt())))}),e}var Bi=b("$ZodUnion",(t,e)=>{fe.init(t,e),xe(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),xe(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),xe(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),xe(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=>is(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=>jg(i,r,t,n)):jg(s,r,t,n)}}),dl=b("$ZodDiscriminatedUnion",(t,e)=>{Bi.init(t,e);let r=t._zod.parse;xe(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=os(()=>{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(!io(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)}}),pl=b("$ZodIntersection",(t,e)=>{fe.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])=>zg(r,c,u)):zg(r,s,i)}});function Lu(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(ao(t)&&ao(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=Lu(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=Lu(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 zg(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),bn(t))return t;let n=Lu(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 fl=b("$ZodRecord",(t,e)=>{fe.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!ao(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(d=>{d.issues.length&&r.issues.push(...ar(c,d.issues)),r.value[c]=d.value})):(u.issues.length&&r.issues.push(...ar(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=>Zt(u,n,gt())),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(...ar(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...ar(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var ml=b("$ZodEnum",(t,e)=>{fe.init(t,e);let r=ns(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>ku.has(typeof n)).map(n=>typeof n=="string"?zr(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}}),hl=b("$ZodLiteral",(t,e)=>{fe.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?zr(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 gl=b("$ZodTransform",(t,e)=>{fe.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 vr;return r.value=o,r}}),yl=b("$ZodOptional",(t,e)=>{fe.init(t,e),t._zod.optin="optional",t._zod.optout="optional",xe(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),xe(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${is(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)}),_l=b("$ZodNullable",(t,e)=>{fe.init(t,e),xe(t._zod,"optin",()=>e.innerType._zod.optin),xe(t._zod,"optout",()=>e.innerType._zod.optout),xe(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${is(r.source)}|null)$`):void 0}),xe(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)}),xl=b("$ZodDefault",(t,e)=>{fe.init(t,e),t._zod.optin="optional",xe(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=>Lg(s,e)):Lg(o,e)}});function Lg(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var vl=b("$ZodPrefault",(t,e)=>{fe.init(t,e),t._zod.optin="optional",xe(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))}),bl=b("$ZodNonOptional",(t,e)=>{fe.init(t,e),xe(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=>Ug(s,t)):Ug(o,t)}});function Ug(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 Sl=b("$ZodCatch",(t,e)=>{fe.init(t,e),t._zod.optin="optional",xe(t._zod,"optout",()=>e.innerType._zod.optout),xe(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=>Zt(i,n,gt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>Zt(s,n,gt()))},input:r.value}),r.issues=[]),r)}});var kl=b("$ZodPipe",(t,e)=>{fe.init(t,e),xe(t._zod,"values",()=>e.in._zod.values),xe(t._zod,"optin",()=>e.in._zod.optin),xe(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=>Hg(s,e,n)):Hg(o,e,n)}});function Hg(t,e,r){return bn(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var El=b("$ZodReadonly",(t,e)=>{fe.init(t,e),xe(t._zod,"propValues",()=>e.innerType._zod.propValues),xe(t._zod,"values",()=>e.innerType._zod.values),xe(t._zod,"optin",()=>e.innerType._zod.optin),xe(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(Fg):Fg(o)}});function Fg(t){return t.value=Object.freeze(t.value),t}var wl=b("$ZodCustom",(t,e)=>{Ze.init(t,e),fe.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=>Zg(s,r,n,t));Zg(o,r,n,t)}});function Zg(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(Tu(o))}}var rT=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},nT=()=>{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 ${rT(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${ji(n.values[0])}`:`Invalid option: expected one of ${Di(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":""}: ${Di(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 Gg(){return{localeError:nT()}}var ds=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 Jg(){return new ds}var Lr=Jg();function Tl(t,e){return new t({type:"string",...V(e)})}function Pl(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...V(e)})}function qi(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...V(e)})}function Rl(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...V(e)})}function $l(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...V(e)})}function Cl(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...V(e)})}function Ol(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...V(e)})}function Il(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...V(e)})}function Al(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...V(e)})}function Nl(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...V(e)})}function Dl(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...V(e)})}function Ml(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...V(e)})}function jl(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...V(e)})}function zl(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...V(e)})}function Ll(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...V(e)})}function Ul(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...V(e)})}function Hl(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...V(e)})}function Fl(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...V(e)})}function Zl(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...V(e)})}function Bl(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...V(e)})}function ql(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...V(e)})}function Vl(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...V(e)})}function Wl(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...V(e)})}function Yg(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...V(e)})}function Xg(t,e){return new t({type:"string",format:"date",check:"string_format",...V(e)})}function Qg(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...V(e)})}function ey(t,e){return new t({type:"string",format:"duration",check:"string_format",...V(e)})}function Kl(t,e){return new t({type:"number",checks:[],...V(e)})}function Gl(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...V(e)})}function Jl(t,e){return new t({type:"boolean",...V(e)})}function Yl(t,e){return new t({type:"null",...V(e)})}function Xl(t){return new t({type:"unknown"})}function Ql(t,e){return new t({type:"never",...V(e)})}function Vi(t,e){return new ju({check:"less_than",...V(e),value:t,inclusive:!1})}function ps(t,e){return new ju({check:"less_than",...V(e),value:t,inclusive:!0})}function Wi(t,e){return new zu({check:"greater_than",...V(e),value:t,inclusive:!1})}function fs(t,e){return new zu({check:"greater_than",...V(e),value:t,inclusive:!0})}function Ki(t,e){return new bg({check:"multiple_of",...V(e),value:t})}function Gi(t,e){return new kg({check:"max_length",...V(e),maximum:t})}function co(t,e){return new Eg({check:"min_length",...V(e),minimum:t})}function Ji(t,e){return new wg({check:"length_equals",...V(e),length:t})}function ed(t,e){return new Tg({check:"string_format",format:"regex",...V(e),pattern:t})}function td(t){return new Pg({check:"string_format",format:"lowercase",...V(t)})}function rd(t){return new Rg({check:"string_format",format:"uppercase",...V(t)})}function nd(t,e){return new $g({check:"string_format",format:"includes",...V(e),includes:t})}function od(t,e){return new Cg({check:"string_format",format:"starts_with",...V(e),prefix:t})}function sd(t,e){return new Og({check:"string_format",format:"ends_with",...V(e),suffix:t})}function En(t){return new Ig({check:"overwrite",tx:t})}function id(t){return En(e=>e.normalize(t))}function ad(){return En(t=>t.trim())}function cd(){return En(t=>t.toLowerCase())}function ud(){return En(t=>t.toUpperCase())}function ty(t,e,r){return new t({type:"array",element:e,...V(r)})}function ld(t,e,r){let n=V(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function dd(t,e,r){return new t({type:"custom",check:"custom",fn:e,...V(r)})}var Yi=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Lr,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 l={...r,schemaPath:[...r.schemaPath,e],path:r.path},f=e._zod.parent;if(f)a.ref=f,this.process(f,l),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:y}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),_&&(p.format=s[_]??_,p.format===""&&delete p.format),y&&(p.contentEncoding=y),x&&x.size>0){let S=[...x];S.length===1?p.pattern=S[0].source:S.length>1&&(a.schema.allOf=[...S.map(E=>({...this.target==="draft-7"?{type:"string"}:{},pattern:E.source}))])}break}case"number":{let p=m,{minimum:h,maximum:g,format:_,multipleOf:x,exclusiveMaximum:y,exclusiveMinimum:S}=e._zod.bag;typeof _=="string"&&_.includes("int")?p.type="integer":p.type="number",typeof S=="number"&&(p.exclusiveMinimum=S),typeof h=="number"&&(p.minimum=h,typeof S=="number"&&(S>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof y=="number"&&(p.exclusiveMaximum=y),typeof g=="number"&&(p.maximum=g,typeof y=="number"&&(y<=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,{...l,path:[...l.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],{...l,path:[...l.path,"properties",x]});let g=new Set(Object.keys(h)),_=new Set([...g].filter(x=>{let y=o.shape[x]._zod;return this.io==="input"?y.optin===void 0:y.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,{...l,path:[...l.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=m;p.anyOf=o.options.map((h,g)=>this.process(h,{...l,path:[...l.path,"anyOf",g]}));break}case"intersection":{let p=m,h=this.process(o.left,{...l,path:[...l.path,"allOf",0]}),g=this.process(o.right,{...l,path:[...l.path,"allOf",1]}),_=y=>"allOf"in y&&Object.keys(y).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,y)=>this.process(x,{...l,path:[...l.path,"prefixItems",y]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let x=this.process(o.rest,{...l,path:[...l.path,"items"]});this.target==="draft-2020-12"?p.items=x:p.additionalItems=x}o.rest&&(p.items=this.process(o.rest,{...l,path:[...l.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,{...l,path:[...l.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...l,path:[...l.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=ns(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(y=>({...h,contentMediaType:y})):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,l);m.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,l),a.ref=o.innerType;break}case"success":{let p=m;p.type="boolean";break}case"default":{this.process(o.innerType,l),a.ref=o.innerType,m.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,l),a.ref=o.innerType,this.io==="input"&&(m._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,l),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,l),a.ref=p;break}case"readonly":{this.process(o.innerType,l),a.ref=o.innerType,m.readOnly=!0;break}case"promise":{this.process(o.innerType,l),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,l),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,l),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"&&ze(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=d=>{let l=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(d[0])?.id,g=n.external.uri??(x=>x);if(h)return{ref:g(h)};let _=d[1].defId??d[1].schema.id??`schema${this.counter++}`;return d[1].defId=_,{defId:_,ref:`${g("__shared")}#/${l}/${_}`}}if(d[1]===o)return{ref:"#"};let m=`#/${l}/`,p=d[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:m+p}},i=d=>{if(d[1].schema.$ref)return;let l=d[1],{ref:f,defId:m}=s(d);l.def={...l.schema},m&&(l.defId=m);let p=l.schema;for(let h in p)delete p[h];p.$ref=f};if(n.cycles==="throw")for(let d of this.seen.entries()){let l=d[1];if(l.cycle)throw new Error(`Cycle detected: #/${l.cycle?.join("/")}/<root>
|
|
64
|
+
})));`),f.write(`newResult[${vn(x)}] = ${y}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let _=f.compile();return(x,y)=>_(l,x,y)},o,s=io,i=!Ni.jitless,c=i&&Su.value,u=e.catchall,d;t._zod.parse=(l,f)=>{d??(d=r.value);let m=l.value;if(!s(m))return l.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),l;let p=[];if(i&&c&&f?.async===!1&&f.jitless!==!0)o||(o=n(e.shape)),l=o(l,f);else{l.value={};let y=d.shape;for(let S of d.keys){let E=y[S],O=E._zod.run({value:m[S],issues:[]},f),L=E._zod.optin==="optional"&&E._zod.optout==="optional";O instanceof Promise?p.push(O.then(A=>L?Mg(A,l,S,m):Hi(A,l,S))):L?Mg(O,l,S,m):Hi(O,l,S)}}if(!u)return p.length?Promise.all(p).then(()=>l):l;let h=[],g=d.keySet,_=u._zod,x=_.def.type;for(let y of Object.keys(m)){if(g.has(y))continue;if(x==="never"){h.push(y);continue}let S=_.run({value:m[y],issues:[]},f);S instanceof Promise?p.push(S.then(E=>Hi(E,l,y))):Hi(S,l,y)}return h.length&&l.issues.push({code:"unrecognized_keys",keys:h,input:m,inst:t}),p.length?Promise.all(p).then(()=>l):l}});function jg(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=>Zt(s,n,gt())))}),e}var Bi=b("$ZodUnion",(t,e)=>{fe.init(t,e),_e(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),_e(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),_e(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),_e(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=>is(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=>jg(i,r,t,n)):jg(s,r,t,n)}}),dl=b("$ZodDiscriminatedUnion",(t,e)=>{Bi.init(t,e);let r=t._zod.parse;_e(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=os(()=>{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(!io(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)}}),pl=b("$ZodIntersection",(t,e)=>{fe.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])=>zg(r,c,u)):zg(r,s,i)}});function Lu(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(ao(t)&&ao(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=Lu(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=Lu(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 zg(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),bn(t))return t;let n=Lu(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 fl=b("$ZodRecord",(t,e)=>{fe.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!ao(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(d=>{d.issues.length&&r.issues.push(...ar(c,d.issues)),r.value[c]=d.value})):(u.issues.length&&r.issues.push(...ar(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=>Zt(u,n,gt())),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(...ar(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...ar(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var ml=b("$ZodEnum",(t,e)=>{fe.init(t,e);let r=ns(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>ku.has(typeof n)).map(n=>typeof n=="string"?jr(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}}),hl=b("$ZodLiteral",(t,e)=>{fe.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?jr(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 gl=b("$ZodTransform",(t,e)=>{fe.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 xr;return r.value=o,r}}),yl=b("$ZodOptional",(t,e)=>{fe.init(t,e),t._zod.optin="optional",t._zod.optout="optional",_e(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),_e(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${is(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)}),_l=b("$ZodNullable",(t,e)=>{fe.init(t,e),_e(t._zod,"optin",()=>e.innerType._zod.optin),_e(t._zod,"optout",()=>e.innerType._zod.optout),_e(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${is(r.source)}|null)$`):void 0}),_e(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)}),xl=b("$ZodDefault",(t,e)=>{fe.init(t,e),t._zod.optin="optional",_e(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=>Lg(s,e)):Lg(o,e)}});function Lg(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var vl=b("$ZodPrefault",(t,e)=>{fe.init(t,e),t._zod.optin="optional",_e(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))}),bl=b("$ZodNonOptional",(t,e)=>{fe.init(t,e),_e(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=>Ug(s,t)):Ug(o,t)}});function Ug(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 Sl=b("$ZodCatch",(t,e)=>{fe.init(t,e),t._zod.optin="optional",_e(t._zod,"optout",()=>e.innerType._zod.optout),_e(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=>Zt(i,n,gt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>Zt(s,n,gt()))},input:r.value}),r.issues=[]),r)}});var kl=b("$ZodPipe",(t,e)=>{fe.init(t,e),_e(t._zod,"values",()=>e.in._zod.values),_e(t._zod,"optin",()=>e.in._zod.optin),_e(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=>Hg(s,e,n)):Hg(o,e,n)}});function Hg(t,e,r){return bn(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var El=b("$ZodReadonly",(t,e)=>{fe.init(t,e),_e(t._zod,"propValues",()=>e.innerType._zod.propValues),_e(t._zod,"values",()=>e.innerType._zod.values),_e(t._zod,"optin",()=>e.innerType._zod.optin),_e(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(Fg):Fg(o)}});function Fg(t){return t.value=Object.freeze(t.value),t}var wl=b("$ZodCustom",(t,e)=>{Ze.init(t,e),fe.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=>Zg(s,r,n,t));Zg(o,r,n,t)}});function Zg(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(Tu(o))}}var rT=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},nT=()=>{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 ${rT(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${ji(n.values[0])}`:`Invalid option: expected one of ${Di(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":""}: ${Di(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 Gg(){return{localeError:nT()}}var ds=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 Jg(){return new ds}var zr=Jg();function Tl(t,e){return new t({type:"string",...V(e)})}function Pl(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...V(e)})}function qi(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...V(e)})}function Rl(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...V(e)})}function $l(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...V(e)})}function Cl(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...V(e)})}function Ol(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...V(e)})}function Il(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...V(e)})}function Al(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...V(e)})}function Nl(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...V(e)})}function Dl(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...V(e)})}function Ml(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...V(e)})}function jl(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...V(e)})}function zl(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...V(e)})}function Ll(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...V(e)})}function Ul(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...V(e)})}function Hl(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...V(e)})}function Fl(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...V(e)})}function Zl(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...V(e)})}function Bl(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...V(e)})}function ql(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...V(e)})}function Vl(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...V(e)})}function Wl(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...V(e)})}function Yg(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...V(e)})}function Xg(t,e){return new t({type:"string",format:"date",check:"string_format",...V(e)})}function Qg(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...V(e)})}function ey(t,e){return new t({type:"string",format:"duration",check:"string_format",...V(e)})}function Kl(t,e){return new t({type:"number",checks:[],...V(e)})}function Gl(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...V(e)})}function Jl(t,e){return new t({type:"boolean",...V(e)})}function Yl(t,e){return new t({type:"null",...V(e)})}function Xl(t){return new t({type:"unknown"})}function Ql(t,e){return new t({type:"never",...V(e)})}function Vi(t,e){return new ju({check:"less_than",...V(e),value:t,inclusive:!1})}function ps(t,e){return new ju({check:"less_than",...V(e),value:t,inclusive:!0})}function Wi(t,e){return new zu({check:"greater_than",...V(e),value:t,inclusive:!1})}function fs(t,e){return new zu({check:"greater_than",...V(e),value:t,inclusive:!0})}function Ki(t,e){return new bg({check:"multiple_of",...V(e),value:t})}function Gi(t,e){return new kg({check:"max_length",...V(e),maximum:t})}function co(t,e){return new Eg({check:"min_length",...V(e),minimum:t})}function Ji(t,e){return new wg({check:"length_equals",...V(e),length:t})}function ed(t,e){return new Tg({check:"string_format",format:"regex",...V(e),pattern:t})}function td(t){return new Pg({check:"string_format",format:"lowercase",...V(t)})}function rd(t){return new Rg({check:"string_format",format:"uppercase",...V(t)})}function nd(t,e){return new $g({check:"string_format",format:"includes",...V(e),includes:t})}function od(t,e){return new Cg({check:"string_format",format:"starts_with",...V(e),prefix:t})}function sd(t,e){return new Og({check:"string_format",format:"ends_with",...V(e),suffix:t})}function En(t){return new Ig({check:"overwrite",tx:t})}function id(t){return En(e=>e.normalize(t))}function ad(){return En(t=>t.trim())}function cd(){return En(t=>t.toLowerCase())}function ud(){return En(t=>t.toUpperCase())}function ty(t,e,r){return new t({type:"array",element:e,...V(r)})}function ld(t,e,r){let n=V(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function dd(t,e,r){return new t({type:"custom",check:"custom",fn:e,...V(r)})}var Yi=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??zr,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 l={...r,schemaPath:[...r.schemaPath,e],path:r.path},f=e._zod.parent;if(f)a.ref=f,this.process(f,l),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:y}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),_&&(p.format=s[_]??_,p.format===""&&delete p.format),y&&(p.contentEncoding=y),x&&x.size>0){let S=[...x];S.length===1?p.pattern=S[0].source:S.length>1&&(a.schema.allOf=[...S.map(E=>({...this.target==="draft-7"?{type:"string"}:{},pattern:E.source}))])}break}case"number":{let p=m,{minimum:h,maximum:g,format:_,multipleOf:x,exclusiveMaximum:y,exclusiveMinimum:S}=e._zod.bag;typeof _=="string"&&_.includes("int")?p.type="integer":p.type="number",typeof S=="number"&&(p.exclusiveMinimum=S),typeof h=="number"&&(p.minimum=h,typeof S=="number"&&(S>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof y=="number"&&(p.exclusiveMaximum=y),typeof g=="number"&&(p.maximum=g,typeof y=="number"&&(y<=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,{...l,path:[...l.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],{...l,path:[...l.path,"properties",x]});let g=new Set(Object.keys(h)),_=new Set([...g].filter(x=>{let y=o.shape[x]._zod;return this.io==="input"?y.optin===void 0:y.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,{...l,path:[...l.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=m;p.anyOf=o.options.map((h,g)=>this.process(h,{...l,path:[...l.path,"anyOf",g]}));break}case"intersection":{let p=m,h=this.process(o.left,{...l,path:[...l.path,"allOf",0]}),g=this.process(o.right,{...l,path:[...l.path,"allOf",1]}),_=y=>"allOf"in y&&Object.keys(y).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,y)=>this.process(x,{...l,path:[...l.path,"prefixItems",y]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let x=this.process(o.rest,{...l,path:[...l.path,"items"]});this.target==="draft-2020-12"?p.items=x:p.additionalItems=x}o.rest&&(p.items=this.process(o.rest,{...l,path:[...l.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,{...l,path:[...l.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...l,path:[...l.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=ns(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(y=>({...h,contentMediaType:y})):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,l);m.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,l),a.ref=o.innerType;break}case"success":{let p=m;p.type="boolean";break}case"default":{this.process(o.innerType,l),a.ref=o.innerType,m.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,l),a.ref=o.innerType,this.io==="input"&&(m._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,l),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,l),a.ref=p;break}case"readonly":{this.process(o.innerType,l),a.ref=o.innerType,m.readOnly=!0;break}case"promise":{this.process(o.innerType,l),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,l),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,l),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"&&ze(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=d=>{let l=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(d[0])?.id,g=n.external.uri??(x=>x);if(h)return{ref:g(h)};let _=d[1].defId??d[1].schema.id??`schema${this.counter++}`;return d[1].defId=_,{defId:_,ref:`${g("__shared")}#/${l}/${_}`}}if(d[1]===o)return{ref:"#"};let m=`#/${l}/`,p=d[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:m+p}},i=d=>{if(d[1].schema.$ref)return;let l=d[1],{ref:f,defId:m}=s(d);l.def={...l.schema},m&&(l.defId=m);let p=l.schema;for(let h in p)delete p[h];p.$ref=f};if(n.cycles==="throw")for(let d of this.seen.entries()){let l=d[1];if(l.cycle)throw new Error(`Cycle detected: #/${l.cycle?.join("/")}/<root>
|
|
65
65
|
|
|
66
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let d of this.seen.entries()){let l=d[1];if(e===d[0]){i(d);continue}if(n.external){let m=n.external.registry.get(d[0])?.id;if(e!==d[0]&&m){i(d);continue}}if(this.metadataRegistry.get(d[0])?.id){i(d);continue}if(l.cycle){i(d);continue}if(l.count>1&&n.reused==="ref"){i(d);continue}}let a=(d,l)=>{let f=this.seen.get(d),m=f.def??f.schema,p={...m};if(f.ref===null)return;let h=f.ref;if(f.ref=null,h){a(h,l);let g=this.seen.get(h).schema;g.$ref&&l.target==="draft-7"?(m.allOf=m.allOf??[],m.allOf.push(g)):(Object.assign(m,g),Object.assign(m,p))}f.isParent||this.override({zodSchema:d,jsonSchema:m,path:f.path??[]})};for(let d of[...this.seen.entries()].reverse())a(d[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 d=n.external.registry.get(e)?.id;if(!d)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(d)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let d of this.seen.entries()){let l=d[1];l.def&&l.defId&&(u[l.defId]=l.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 pd(t,e){if(t instanceof ds){let n=new Yi(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 Yi(e);return r.process(t),r.emit(t,e)}function ze(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 ze(o.element,r);case"object":{for(let s in o.shape)if(ze(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(ze(s,r))return!0;return!1}case"intersection":return ze(o.left,r)||ze(o.right,r);case"tuple":{for(let s of o.items)if(ze(s,r))return!0;return!!(o.rest&&ze(o.rest,r))}case"record":return ze(o.keyType,r)||ze(o.valueType,r);case"map":return ze(o.keyType,r)||ze(o.valueType,r);case"set":return ze(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return ze(o.innerType,r);case"lazy":return ze(o.getter(),r);case"default":return ze(o.innerType,r);case"prefault":return ze(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return ze(o.in,r)||ze(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var zT=b("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");fe.init(t,e),t.def=e,t.parse=(r,n)=>Cu(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Sn(t,r,n),t.parseAsync=async(r,n)=>Iu(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>kn(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)=>yt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var LT=b("ZodMiniObject",(t,e)=>{Zi.init(t,e),zT.init(t,e),oe.defineLazy(t,"shape",()=>e.shape)});function fd(t,e){let r={type:"object",get shape(){return oe.assignProp(this,"shape",{...t}),this.shape},...oe.normalizeParams(e)};return new LT(r)}function Tt(t){return!!t._zod}function Tn(t){let e=Object.values(t);if(e.length===0)return fd({});let r=e.every(Tt),n=e.every(o=>!Tt(o));if(r)return fd(t);if(n)return gu(t);throw new Error("Mixed Zod versions detected in object shape.")}function Ur(t,e){return Tt(t)?Sn(t,e):t.safeParse(e)}async function Xi(t,e){return Tt(t)?await kn(t,e):await t.safeParseAsync(e)}function Hr(t){if(!t)return;let e;if(Tt(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function uo(t){if(t){if(typeof t=="object"){let e=t,r=t;if(!e._def&&!r._zod){let n=Object.values(t);if(n.length>0&&n.every(o=>typeof o=="object"&&o!==null&&(o._def!==void 0||o._zod!==void 0||typeof o.parse=="function")))return Tn(t)}}if(Tt(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 Qi(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 ny(t){return t.description}function oy(t){if(Tt(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function ea(t){if(Tt(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 ms={};Ue(ms,{ZodISODate:()=>iy,ZodISODateTime:()=>sy,ZodISODuration:()=>cy,ZodISOTime:()=>ay,date:()=>hd,datetime:()=>md,duration:()=>yd,time:()=>gd});var sy=b("ZodISODateTime",(t,e)=>{Bg.init(t,e),Re.init(t,e)});function md(t){return Yg(sy,t)}var iy=b("ZodISODate",(t,e)=>{qg.init(t,e),Re.init(t,e)});function hd(t){return Xg(iy,t)}var ay=b("ZodISOTime",(t,e)=>{Vg.init(t,e),Re.init(t,e)});function gd(t){return Qg(ay,t)}var cy=b("ZodISODuration",(t,e)=>{Wg.init(t,e),Re.init(t,e)});function yd(t){return ey(cy,t)}var uy=(t,e)=>{zi.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Ru(t,r)},flatten:{value:r=>Pu(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},YL=b("ZodError",uy),hs=b("ZodError",uy,{Parent:Error});var ly=$u(hs),dy=Ou(hs),py=Au(hs),fy=Nu(hs);var Ie=b("ZodType",(t,e)=>(fe.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)=>yt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>ly(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>py(t,r,n),t.parseAsync=async(r,n)=>dy(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>fy(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(MP(r,n)),t.superRefine=r=>t.check(jP(r)),t.overwrite=r=>t.check(En(r)),t.optional=()=>Ce(t),t.nullable=()=>gy(t),t.nullish=()=>Ce(gy(t)),t.nonoptional=r=>$P(t,r),t.array=()=>se(t),t.or=r=>ke([t,r]),t.and=r=>ra(t,r),t.transform=r=>xd(t,Sy(r)),t.default=r=>TP(t,r),t.prefault=r=>RP(t,r),t.catch=r=>OP(t,r),t.pipe=r=>xd(t,r),t.readonly=()=>NP(t),t.describe=r=>{let n=t.clone();return Lr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Lr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Lr.get(t);let n=t.clone();return Lr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),yy=b("_ZodString",(t,e)=>{ls.init(t,e),Ie.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(ed(...n)),t.includes=(...n)=>t.check(nd(...n)),t.startsWith=(...n)=>t.check(od(...n)),t.endsWith=(...n)=>t.check(sd(...n)),t.min=(...n)=>t.check(co(...n)),t.max=(...n)=>t.check(Gi(...n)),t.length=(...n)=>t.check(Ji(...n)),t.nonempty=(...n)=>t.check(co(1,...n)),t.lowercase=n=>t.check(td(n)),t.uppercase=n=>t.check(rd(n)),t.trim=()=>t.check(ad()),t.normalize=(...n)=>t.check(id(...n)),t.toLowerCase=()=>t.check(cd()),t.toUpperCase=()=>t.check(ud())}),KT=b("ZodString",(t,e)=>{ls.init(t,e),yy.init(t,e),t.email=r=>t.check(Pl(GT,r)),t.url=r=>t.check(Il(JT,r)),t.jwt=r=>t.check(Wl(dP,r)),t.emoji=r=>t.check(Al(YT,r)),t.guid=r=>t.check(qi(my,r)),t.uuid=r=>t.check(Rl(ta,r)),t.uuidv4=r=>t.check($l(ta,r)),t.uuidv6=r=>t.check(Cl(ta,r)),t.uuidv7=r=>t.check(Ol(ta,r)),t.nanoid=r=>t.check(Nl(XT,r)),t.guid=r=>t.check(qi(my,r)),t.cuid=r=>t.check(Dl(QT,r)),t.cuid2=r=>t.check(Ml(eP,r)),t.ulid=r=>t.check(jl(tP,r)),t.base64=r=>t.check(Bl(cP,r)),t.base64url=r=>t.check(ql(uP,r)),t.xid=r=>t.check(zl(rP,r)),t.ksuid=r=>t.check(Ll(nP,r)),t.ipv4=r=>t.check(Ul(oP,r)),t.ipv6=r=>t.check(Hl(sP,r)),t.cidrv4=r=>t.check(Fl(iP,r)),t.cidrv6=r=>t.check(Zl(aP,r)),t.e164=r=>t.check(Vl(lP,r)),t.datetime=r=>t.check(md(r)),t.date=r=>t.check(hd(r)),t.time=r=>t.check(gd(r)),t.duration=r=>t.check(yd(r))});function v(t){return Tl(KT,t)}var Re=b("ZodStringFormat",(t,e)=>{ve.init(t,e),yy.init(t,e)}),GT=b("ZodEmail",(t,e)=>{Fu.init(t,e),Re.init(t,e)});var my=b("ZodGUID",(t,e)=>{Uu.init(t,e),Re.init(t,e)});var ta=b("ZodUUID",(t,e)=>{Hu.init(t,e),Re.init(t,e)});var JT=b("ZodURL",(t,e)=>{Zu.init(t,e),Re.init(t,e)});var YT=b("ZodEmoji",(t,e)=>{Bu.init(t,e),Re.init(t,e)});var XT=b("ZodNanoID",(t,e)=>{qu.init(t,e),Re.init(t,e)});var QT=b("ZodCUID",(t,e)=>{Vu.init(t,e),Re.init(t,e)});var eP=b("ZodCUID2",(t,e)=>{Wu.init(t,e),Re.init(t,e)});var tP=b("ZodULID",(t,e)=>{Ku.init(t,e),Re.init(t,e)});var rP=b("ZodXID",(t,e)=>{Gu.init(t,e),Re.init(t,e)});var nP=b("ZodKSUID",(t,e)=>{Ju.init(t,e),Re.init(t,e)});var oP=b("ZodIPv4",(t,e)=>{Yu.init(t,e),Re.init(t,e)});var sP=b("ZodIPv6",(t,e)=>{Xu.init(t,e),Re.init(t,e)});var iP=b("ZodCIDRv4",(t,e)=>{Qu.init(t,e),Re.init(t,e)});var aP=b("ZodCIDRv6",(t,e)=>{el.init(t,e),Re.init(t,e)});var cP=b("ZodBase64",(t,e)=>{tl.init(t,e),Re.init(t,e)});var uP=b("ZodBase64URL",(t,e)=>{rl.init(t,e),Re.init(t,e)});var lP=b("ZodE164",(t,e)=>{nl.init(t,e),Re.init(t,e)});var dP=b("ZodJWT",(t,e)=>{ol.init(t,e),Re.init(t,e)});var _y=b("ZodNumber",(t,e)=>{Fi.init(t,e),Ie.init(t,e),t.gt=(n,o)=>t.check(Wi(n,o)),t.gte=(n,o)=>t.check(fs(n,o)),t.min=(n,o)=>t.check(fs(n,o)),t.lt=(n,o)=>t.check(Vi(n,o)),t.lte=(n,o)=>t.check(ps(n,o)),t.max=(n,o)=>t.check(ps(n,o)),t.int=n=>t.check(hy(n)),t.safe=n=>t.check(hy(n)),t.positive=n=>t.check(Wi(0,n)),t.nonnegative=n=>t.check(fs(0,n)),t.negative=n=>t.check(Vi(0,n)),t.nonpositive=n=>t.check(ps(0,n)),t.multipleOf=(n,o)=>t.check(Ki(n,o)),t.step=(n,o)=>t.check(Ki(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 pe(t){return Kl(_y,t)}var pP=b("ZodNumberFormat",(t,e)=>{sl.init(t,e),_y.init(t,e)});function hy(t){return Gl(pP,t)}var fP=b("ZodBoolean",(t,e)=>{il.init(t,e),Ie.init(t,e)});function He(t){return Jl(fP,t)}var mP=b("ZodNull",(t,e)=>{al.init(t,e),Ie.init(t,e)});function xy(t){return Yl(mP,t)}var hP=b("ZodUnknown",(t,e)=>{cl.init(t,e),Ie.init(t,e)});function $e(){return Xl(hP)}var gP=b("ZodNever",(t,e)=>{ul.init(t,e),Ie.init(t,e)});function yP(t){return Ql(gP,t)}var _P=b("ZodArray",(t,e)=>{ll.init(t,e),Ie.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(co(r,n)),t.nonempty=r=>t.check(co(1,r)),t.max=(r,n)=>t.check(Gi(r,n)),t.length=(r,n)=>t.check(Ji(r,n)),t.unwrap=()=>t.element});function se(t,e){return ty(_P,t,e)}var vy=b("ZodObject",(t,e)=>{Zi.init(t,e),Ie.init(t,e),oe.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>ut(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:$e()}),t.loose=()=>t.clone({...t._zod.def,catchall:$e()}),t.strict=()=>t.clone({...t._zod.def,catchall:yP()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>oe.extend(t,r),t.merge=r=>oe.merge(t,r),t.pick=r=>oe.pick(t,r),t.omit=r=>oe.omit(t,r),t.partial=(...r)=>oe.partial(ky,t,r[0]),t.required=(...r)=>oe.required(Ey,t,r[0])});function I(t,e){let r={type:"object",get shape(){return oe.assignProp(this,"shape",{...t}),this.shape},...oe.normalizeParams(e)};return new vy(r)}function rt(t,e){return new vy({type:"object",get shape(){return oe.assignProp(this,"shape",{...t}),this.shape},catchall:$e(),...oe.normalizeParams(e)})}var by=b("ZodUnion",(t,e)=>{Bi.init(t,e),Ie.init(t,e),t.options=e.options});function ke(t,e){return new by({type:"union",options:t,...oe.normalizeParams(e)})}var xP=b("ZodDiscriminatedUnion",(t,e)=>{by.init(t,e),dl.init(t,e)});function vd(t,e,r){return new xP({type:"union",options:e,discriminator:t,...oe.normalizeParams(r)})}var vP=b("ZodIntersection",(t,e)=>{pl.init(t,e),Ie.init(t,e)});function ra(t,e){return new vP({type:"intersection",left:t,right:e})}var bP=b("ZodRecord",(t,e)=>{fl.init(t,e),Ie.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function be(t,e,r){return new bP({type:"record",keyType:t,valueType:e,...oe.normalizeParams(r)})}var _d=b("ZodEnum",(t,e)=>{ml.init(t,e),Ie.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 _d({...e,checks:[],...oe.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 _d({...e,checks:[],...oe.normalizeParams(o),entries:s})}});function ut(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new _d({type:"enum",entries:r,...oe.normalizeParams(e)})}var SP=b("ZodLiteral",(t,e)=>{hl.init(t,e),Ie.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 U(t,e){return new SP({type:"literal",values:Array.isArray(t)?t:[t],...oe.normalizeParams(e)})}var kP=b("ZodTransform",(t,e)=>{gl.init(t,e),Ie.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(oe.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(oe.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 Sy(t){return new kP({type:"transform",transform:t})}var ky=b("ZodOptional",(t,e)=>{yl.init(t,e),Ie.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Ce(t){return new ky({type:"optional",innerType:t})}var EP=b("ZodNullable",(t,e)=>{_l.init(t,e),Ie.init(t,e),t.unwrap=()=>t._zod.def.innerType});function gy(t){return new EP({type:"nullable",innerType:t})}var wP=b("ZodDefault",(t,e)=>{xl.init(t,e),Ie.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function TP(t,e){return new wP({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var PP=b("ZodPrefault",(t,e)=>{vl.init(t,e),Ie.init(t,e),t.unwrap=()=>t._zod.def.innerType});function RP(t,e){return new PP({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Ey=b("ZodNonOptional",(t,e)=>{bl.init(t,e),Ie.init(t,e),t.unwrap=()=>t._zod.def.innerType});function $P(t,e){return new Ey({type:"nonoptional",innerType:t,...oe.normalizeParams(e)})}var CP=b("ZodCatch",(t,e)=>{Sl.init(t,e),Ie.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function OP(t,e){return new CP({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var IP=b("ZodPipe",(t,e)=>{kl.init(t,e),Ie.init(t,e),t.in=e.in,t.out=e.out});function xd(t,e){return new IP({type:"pipe",in:t,out:e})}var AP=b("ZodReadonly",(t,e)=>{El.init(t,e),Ie.init(t,e)});function NP(t){return new AP({type:"readonly",innerType:t})}var wy=b("ZodCustom",(t,e)=>{wl.init(t,e),Ie.init(t,e)});function DP(t){let e=new Ze({check:"custom"});return e._zod.check=t,e}function Ty(t,e){return ld(wy,t??(()=>!0),e)}function MP(t,e={}){return dd(wy,t,e)}function jP(t){let e=DP(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(oe.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(oe.issue(o))}},t(r.value,r)));return e}function bd(t,e){return xd(Sy(t),e)}gt(Gg());var kd="2025-11-25";var Py=[kd,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Fr="io.modelcontextprotocol/related-task",oa="2.0",Le=Ty(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Ry=ke([v(),pe().int()]),$y=v(),d1=rt({ttl:pe().optional(),pollInterval:pe().optional()}),zP=I({ttl:pe().optional()}),LP=I({taskId:v()}),Ed=rt({progressToken:Ry.optional(),[Fr]:LP.optional()}),_t=I({_meta:Ed.optional()}),gs=_t.extend({task:zP.optional()}),Cy=t=>gs.safeParse(t).success,Be=I({method:v(),params:_t.loose().optional()}),Pt=I({_meta:Ed.optional()}),Rt=I({method:v(),params:Pt.loose().optional()}),qe=rt({_meta:Ed.optional()}),sa=ke([v(),pe().int()]),Oy=I({jsonrpc:U(oa),id:sa,...Be.shape}).strict(),wd=t=>Oy.safeParse(t).success,Iy=I({jsonrpc:U(oa),...Rt.shape}).strict(),Ay=t=>Iy.safeParse(t).success,Td=I({jsonrpc:U(oa),id:sa,result:qe}).strict(),ys=t=>Td.safeParse(t).success;var Z;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(Z||(Z={}));var Pd=I({jsonrpc:U(oa),id:sa.optional(),error:I({code:pe().int(),message:v(),data:$e().optional()})}).strict();var Ny=t=>Pd.safeParse(t).success;var Dy=ke([Oy,Iy,Td,Pd]),p1=ke([Td,Pd]),ia=qe.strict(),UP=Pt.extend({requestId:sa.optional(),reason:v().optional()}),aa=Rt.extend({method:U("notifications/cancelled"),params:UP}),HP=I({src:v(),mimeType:v().optional(),sizes:se(v()).optional(),theme:ut(["light","dark"]).optional()}),_s=I({icons:se(HP).optional()}),lo=I({name:v(),title:v().optional()}),My=lo.extend({...lo.shape,..._s.shape,version:v(),websiteUrl:v().optional(),description:v().optional()}),FP=ra(I({applyDefaults:He().optional()}),be(v(),$e())),ZP=bd(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ra(I({form:FP.optional(),url:Le.optional()}),be(v(),$e()).optional())),BP=rt({list:Le.optional(),cancel:Le.optional(),requests:rt({sampling:rt({createMessage:Le.optional()}).optional(),elicitation:rt({create:Le.optional()}).optional()}).optional()}),qP=rt({list:Le.optional(),cancel:Le.optional(),requests:rt({tools:rt({call:Le.optional()}).optional()}).optional()}),VP=I({experimental:be(v(),Le).optional(),sampling:I({context:Le.optional(),tools:Le.optional()}).optional(),elicitation:ZP.optional(),roots:I({listChanged:He().optional()}).optional(),tasks:BP.optional(),extensions:be(v(),Le).optional()}),WP=_t.extend({protocolVersion:v(),capabilities:VP,clientInfo:My}),Rd=Be.extend({method:U("initialize"),params:WP});var KP=I({experimental:be(v(),Le).optional(),logging:Le.optional(),completions:Le.optional(),prompts:I({listChanged:He().optional()}).optional(),resources:I({subscribe:He().optional(),listChanged:He().optional()}).optional(),tools:I({listChanged:He().optional()}).optional(),tasks:qP.optional(),extensions:be(v(),Le).optional()}),GP=qe.extend({protocolVersion:v(),capabilities:KP,serverInfo:My,instructions:v().optional()}),$d=Rt.extend({method:U("notifications/initialized"),params:Pt.optional()});var ca=Be.extend({method:U("ping"),params:_t.optional()}),JP=I({progress:pe(),total:Ce(pe()),message:Ce(v())}),YP=I({...Pt.shape,...JP.shape,progressToken:Ry}),ua=Rt.extend({method:U("notifications/progress"),params:YP}),XP=_t.extend({cursor:$y.optional()}),xs=Be.extend({params:XP.optional()}),vs=qe.extend({nextCursor:$y.optional()}),QP=ut(["working","input_required","completed","failed","cancelled"]),bs=I({taskId:v(),status:QP,ttl:ke([pe(),xy()]),createdAt:v(),lastUpdatedAt:v(),pollInterval:Ce(pe()),statusMessage:Ce(v())}),po=qe.extend({task:bs}),e0=Pt.merge(bs),Ss=Rt.extend({method:U("notifications/tasks/status"),params:e0}),la=Be.extend({method:U("tasks/get"),params:_t.extend({taskId:v()})}),da=qe.merge(bs),pa=Be.extend({method:U("tasks/result"),params:_t.extend({taskId:v()})}),f1=qe.loose(),fa=xs.extend({method:U("tasks/list")}),ma=vs.extend({tasks:se(bs)}),ha=Be.extend({method:U("tasks/cancel"),params:_t.extend({taskId:v()})}),jy=qe.merge(bs),zy=I({uri:v(),mimeType:Ce(v()),_meta:be(v(),$e()).optional()}),Ly=zy.extend({text:v()}),Cd=v().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Uy=zy.extend({blob:Cd}),ks=ut(["user","assistant"]),fo=I({audience:se(ks).optional(),priority:pe().min(0).max(1).optional(),lastModified:ms.datetime({offset:!0}).optional()}),Hy=I({...lo.shape,..._s.shape,uri:v(),description:Ce(v()),mimeType:Ce(v()),size:Ce(pe()),annotations:fo.optional(),_meta:Ce(rt({}))}),t0=I({...lo.shape,..._s.shape,uriTemplate:v(),description:Ce(v()),mimeType:Ce(v()),annotations:fo.optional(),_meta:Ce(rt({}))}),mo=xs.extend({method:U("resources/list")}),r0=vs.extend({resources:se(Hy)}),ho=xs.extend({method:U("resources/templates/list")}),n0=vs.extend({resourceTemplates:se(t0)}),Od=_t.extend({uri:v()}),o0=Od,ga=Be.extend({method:U("resources/read"),params:o0}),s0=qe.extend({contents:se(ke([Ly,Uy]))}),i0=Rt.extend({method:U("notifications/resources/list_changed"),params:Pt.optional()}),a0=Od,c0=Be.extend({method:U("resources/subscribe"),params:a0}),u0=Od,l0=Be.extend({method:U("resources/unsubscribe"),params:u0}),d0=Pt.extend({uri:v()}),p0=Rt.extend({method:U("notifications/resources/updated"),params:d0}),f0=I({name:v(),description:Ce(v()),required:Ce(He())}),m0=I({...lo.shape,..._s.shape,description:Ce(v()),arguments:Ce(se(f0)),_meta:Ce(rt({}))}),go=xs.extend({method:U("prompts/list")}),h0=vs.extend({prompts:se(m0)}),g0=_t.extend({name:v(),arguments:be(v(),v()).optional()}),ya=Be.extend({method:U("prompts/get"),params:g0}),Id=I({type:U("text"),text:v(),annotations:fo.optional(),_meta:be(v(),$e()).optional()}),Ad=I({type:U("image"),data:Cd,mimeType:v(),annotations:fo.optional(),_meta:be(v(),$e()).optional()}),Nd=I({type:U("audio"),data:Cd,mimeType:v(),annotations:fo.optional(),_meta:be(v(),$e()).optional()}),y0=I({type:U("tool_use"),name:v(),id:v(),input:be(v(),$e()),_meta:be(v(),$e()).optional()}),_0=I({type:U("resource"),resource:ke([Ly,Uy]),annotations:fo.optional(),_meta:be(v(),$e()).optional()}),x0=Hy.extend({type:U("resource_link")}),Dd=ke([Id,Ad,Nd,x0,_0]),v0=I({role:ks,content:Dd}),b0=qe.extend({description:v().optional(),messages:se(v0)}),S0=Rt.extend({method:U("notifications/prompts/list_changed"),params:Pt.optional()}),k0=I({title:v().optional(),readOnlyHint:He().optional(),destructiveHint:He().optional(),idempotentHint:He().optional(),openWorldHint:He().optional()}),E0=I({taskSupport:ut(["required","optional","forbidden"]).optional()}),Fy=I({...lo.shape,..._s.shape,description:v().optional(),inputSchema:I({type:U("object"),properties:be(v(),Le).optional(),required:se(v()).optional()}).catchall($e()),outputSchema:I({type:U("object"),properties:be(v(),Le).optional(),required:se(v()).optional()}).catchall($e()).optional(),annotations:k0.optional(),execution:E0.optional(),_meta:be(v(),$e()).optional()}),_a=xs.extend({method:U("tools/list")}),w0=vs.extend({tools:se(Fy)}),xa=qe.extend({content:se(Dd).default([]),structuredContent:be(v(),$e()).optional(),isError:He().optional()}),m1=xa.or(qe.extend({toolResult:$e()})),T0=gs.extend({name:v(),arguments:be(v(),$e()).optional()}),yo=Be.extend({method:U("tools/call"),params:T0}),P0=Rt.extend({method:U("notifications/tools/list_changed"),params:Pt.optional()}),h1=I({autoRefresh:He().default(!0),debounceMs:pe().int().nonnegative().default(300)}),Es=ut(["debug","info","notice","warning","error","critical","alert","emergency"]),R0=_t.extend({level:Es}),Md=Be.extend({method:U("logging/setLevel"),params:R0}),$0=Pt.extend({level:Es,logger:v().optional(),data:$e()}),C0=Rt.extend({method:U("notifications/message"),params:$0}),O0=I({name:v().optional()}),I0=I({hints:se(O0).optional(),costPriority:pe().min(0).max(1).optional(),speedPriority:pe().min(0).max(1).optional(),intelligencePriority:pe().min(0).max(1).optional()}),A0=I({mode:ut(["auto","required","none"]).optional()}),N0=I({type:U("tool_result"),toolUseId:v().describe("The unique identifier for the corresponding tool call."),content:se(Dd).default([]),structuredContent:I({}).loose().optional(),isError:He().optional(),_meta:be(v(),$e()).optional()}),D0=vd("type",[Id,Ad,Nd]),na=vd("type",[Id,Ad,Nd,y0,N0]),M0=I({role:ks,content:ke([na,se(na)]),_meta:be(v(),$e()).optional()}),j0=gs.extend({messages:se(M0),modelPreferences:I0.optional(),systemPrompt:v().optional(),includeContext:ut(["none","thisServer","allServers"]).optional(),temperature:pe().optional(),maxTokens:pe().int(),stopSequences:se(v()).optional(),metadata:Le.optional(),tools:se(Fy).optional(),toolChoice:A0.optional()}),z0=Be.extend({method:U("sampling/createMessage"),params:j0}),ws=qe.extend({model:v(),stopReason:Ce(ut(["endTurn","stopSequence","maxTokens"]).or(v())),role:ks,content:D0}),jd=qe.extend({model:v(),stopReason:Ce(ut(["endTurn","stopSequence","maxTokens","toolUse"]).or(v())),role:ks,content:ke([na,se(na)])}),L0=I({type:U("boolean"),title:v().optional(),description:v().optional(),default:He().optional()}),U0=I({type:U("string"),title:v().optional(),description:v().optional(),minLength:pe().optional(),maxLength:pe().optional(),format:ut(["email","uri","date","date-time"]).optional(),default:v().optional()}),H0=I({type:ut(["number","integer"]),title:v().optional(),description:v().optional(),minimum:pe().optional(),maximum:pe().optional(),default:pe().optional()}),F0=I({type:U("string"),title:v().optional(),description:v().optional(),enum:se(v()),default:v().optional()}),Z0=I({type:U("string"),title:v().optional(),description:v().optional(),oneOf:se(I({const:v(),title:v()})),default:v().optional()}),B0=I({type:U("string"),title:v().optional(),description:v().optional(),enum:se(v()),enumNames:se(v()).optional(),default:v().optional()}),q0=ke([F0,Z0]),V0=I({type:U("array"),title:v().optional(),description:v().optional(),minItems:pe().optional(),maxItems:pe().optional(),items:I({type:U("string"),enum:se(v())}),default:se(v()).optional()}),W0=I({type:U("array"),title:v().optional(),description:v().optional(),minItems:pe().optional(),maxItems:pe().optional(),items:I({anyOf:se(I({const:v(),title:v()}))}),default:se(v()).optional()}),K0=ke([V0,W0]),G0=ke([B0,q0,K0]),J0=ke([G0,L0,U0,H0]),Y0=gs.extend({mode:U("form").optional(),message:v(),requestedSchema:I({type:U("object"),properties:be(v(),J0),required:se(v()).optional()})}),X0=gs.extend({mode:U("url"),message:v(),elicitationId:v(),url:v().url()}),Q0=ke([Y0,X0]),eR=Be.extend({method:U("elicitation/create"),params:Q0}),tR=Pt.extend({elicitationId:v()}),rR=Rt.extend({method:U("notifications/elicitation/complete"),params:tR}),_o=qe.extend({action:ut(["accept","decline","cancel"]),content:bd(t=>t===null?void 0:t,be(v(),ke([v(),pe(),He(),se(v())])).optional())}),nR=I({type:U("ref/resource"),uri:v()});var oR=I({type:U("ref/prompt"),name:v()}),sR=_t.extend({ref:ke([oR,nR]),argument:I({name:v(),value:v()}),context:I({arguments:be(v(),v()).optional()}).optional()}),va=Be.extend({method:U("completion/complete"),params:sR});function Zy(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function By(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var iR=qe.extend({completion:rt({values:se(v()).max(100),total:Ce(pe().int()),hasMore:Ce(He())})}),aR=I({uri:v().startsWith("file://"),name:v().optional(),_meta:be(v(),$e()).optional()}),cR=Be.extend({method:U("roots/list"),params:_t.optional()}),zd=qe.extend({roots:se(aR)}),uR=Rt.extend({method:U("notifications/roots/list_changed"),params:Pt.optional()}),g1=ke([ca,Rd,va,Md,ya,go,mo,ho,ga,c0,l0,yo,_a,la,pa,fa,ha]),y1=ke([aa,ua,$d,uR,Ss]),_1=ke([ia,ws,jd,_o,zd,da,ma,po]),x1=ke([ca,z0,eR,cR,la,pa,fa,ha]),v1=ke([aa,ua,C0,p0,i0,P0,S0,Ss,rR]),b1=ke([ia,GP,iR,b0,h0,r0,n0,s0,xa,w0,da,ma,po]),j=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===Z.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Sd(o.elicitations,r)}return new t(e,r,n)}},Sd=class extends j{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(Z.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function Zr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Vy=Symbol("Let zodToJsonSchema decide on which parser to use");var qy={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"},Wy=t=>typeof t=="string"?{...qy,name:t}:{...qy,...t};var Ky=t=>{let e=Wy(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 Ld(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function ie(t,e,r,n,o){t[e]=r,Ld(t,e,n,o)}var ba=(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 Oe(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?ba(e,t.currentPath):e.join("/")}}function Gy(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==T.ZodAny&&(r.items=W(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&ie(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&ie(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(ie(r,"minItems",t.exactLength.value,t.exactLength.message,e),ie(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Jy(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?ie(r,"minimum",n.value,n.message,e):ie(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),ie(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?ie(r,"maximum",n.value,n.message,e):ie(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),ie(r,"maximum",n.value,n.message,e));break;case"multipleOf":ie(r,"multipleOf",n.value,n.message,e);break}return r}function Yy(){return{type:"boolean"}}function Sa(t,e){return W(t.type._def,e)}var Xy=(t,e)=>W(t.innerType._def,e);function Ud(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Ud(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 lR(t,e)}}var lR=(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":ie(r,"minimum",n.value,n.message,e);break;case"max":ie(r,"maximum",n.value,n.message,e);break}return r};function Qy(t,e){return{...W(t.innerType._def,e),default:t.defaultValue()}}function e_(t,e){return e.effectStrategy==="input"?W(t.schema._def,e):Oe(e)}function t_(t){return{type:"string",enum:Array.from(t.values)}}var dR=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function r_(t,e){let r=[W(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),W(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(dR(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 n_(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 Hd,Bt={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:()=>(Hd===void 0&&(Hd=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Hd),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 ka(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":ie(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":ie(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":qt(r,"email",n.message,e);break;case"format:idn-email":qt(r,"idn-email",n.message,e);break;case"pattern:zod":nt(r,Bt.email,n.message,e);break}break;case"url":qt(r,"uri",n.message,e);break;case"uuid":qt(r,"uuid",n.message,e);break;case"regex":nt(r,n.regex,n.message,e);break;case"cuid":nt(r,Bt.cuid,n.message,e);break;case"cuid2":nt(r,Bt.cuid2,n.message,e);break;case"startsWith":nt(r,RegExp(`^${Fd(n.value,e)}`),n.message,e);break;case"endsWith":nt(r,RegExp(`${Fd(n.value,e)}$`),n.message,e);break;case"datetime":qt(r,"date-time",n.message,e);break;case"date":qt(r,"date",n.message,e);break;case"time":qt(r,"time",n.message,e);break;case"duration":qt(r,"duration",n.message,e);break;case"length":ie(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),ie(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{nt(r,RegExp(Fd(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&qt(r,"ipv4",n.message,e),n.version!=="v4"&&qt(r,"ipv6",n.message,e);break}case"base64url":nt(r,Bt.base64url,n.message,e);break;case"jwt":nt(r,Bt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&nt(r,Bt.ipv4Cidr,n.message,e),n.version!=="v4"&&nt(r,Bt.ipv6Cidr,n.message,e);break}case"emoji":nt(r,Bt.emoji(),n.message,e);break;case"ulid":{nt(r,Bt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{qt(r,"binary",n.message,e);break}case"contentEncoding:base64":{ie(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{nt(r,Bt.base64,n.message,e);break}}break}case"nanoid":nt(r,Bt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Fd(t,e){return e.patternStrategy==="escape"?fR(t):t}var pR=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function fR(t){let e="";for(let r=0;r<t.length;r++)pR.has(t[r])||(e+="\\"),e+=t[r];return e}function qt(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}}})):ie(t,"format",e,r,n)}function nt(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:o_(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):ie(t,"pattern",o_(e,n),r,n)}function o_(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
|
|
66
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let d of this.seen.entries()){let l=d[1];if(e===d[0]){i(d);continue}if(n.external){let m=n.external.registry.get(d[0])?.id;if(e!==d[0]&&m){i(d);continue}}if(this.metadataRegistry.get(d[0])?.id){i(d);continue}if(l.cycle){i(d);continue}if(l.count>1&&n.reused==="ref"){i(d);continue}}let a=(d,l)=>{let f=this.seen.get(d),m=f.def??f.schema,p={...m};if(f.ref===null)return;let h=f.ref;if(f.ref=null,h){a(h,l);let g=this.seen.get(h).schema;g.$ref&&l.target==="draft-7"?(m.allOf=m.allOf??[],m.allOf.push(g)):(Object.assign(m,g),Object.assign(m,p))}f.isParent||this.override({zodSchema:d,jsonSchema:m,path:f.path??[]})};for(let d of[...this.seen.entries()].reverse())a(d[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 d=n.external.registry.get(e)?.id;if(!d)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(d)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let d of this.seen.entries()){let l=d[1];l.def&&l.defId&&(u[l.defId]=l.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 pd(t,e){if(t instanceof ds){let n=new Yi(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 Yi(e);return r.process(t),r.emit(t,e)}function ze(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 ze(o.element,r);case"object":{for(let s in o.shape)if(ze(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(ze(s,r))return!0;return!1}case"intersection":return ze(o.left,r)||ze(o.right,r);case"tuple":{for(let s of o.items)if(ze(s,r))return!0;return!!(o.rest&&ze(o.rest,r))}case"record":return ze(o.keyType,r)||ze(o.valueType,r);case"map":return ze(o.keyType,r)||ze(o.valueType,r);case"set":return ze(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return ze(o.innerType,r);case"lazy":return ze(o.getter(),r);case"default":return ze(o.innerType,r);case"prefault":return ze(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return ze(o.in,r)||ze(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var zT=b("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");fe.init(t,e),t.def=e,t.parse=(r,n)=>Cu(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Sn(t,r,n),t.parseAsync=async(r,n)=>Iu(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>kn(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)=>yt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var LT=b("ZodMiniObject",(t,e)=>{Zi.init(t,e),zT.init(t,e),oe.defineLazy(t,"shape",()=>e.shape)});function fd(t,e){let r={type:"object",get shape(){return oe.assignProp(this,"shape",{...t}),this.shape},...oe.normalizeParams(e)};return new LT(r)}function Tt(t){return!!t._zod}function Tn(t){let e=Object.values(t);if(e.length===0)return fd({});let r=e.every(Tt),n=e.every(o=>!Tt(o));if(r)return fd(t);if(n)return gu(t);throw new Error("Mixed Zod versions detected in object shape.")}function Lr(t,e){return Tt(t)?Sn(t,e):t.safeParse(e)}async function Xi(t,e){return Tt(t)?await kn(t,e):await t.safeParseAsync(e)}function Ur(t){if(!t)return;let e;if(Tt(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function uo(t){if(t){if(typeof t=="object"){let e=t,r=t;if(!e._def&&!r._zod){let n=Object.values(t);if(n.length>0&&n.every(o=>typeof o=="object"&&o!==null&&(o._def!==void 0||o._zod!==void 0||typeof o.parse=="function")))return Tn(t)}}if(Tt(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 Qi(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 ny(t){return t.description}function oy(t){if(Tt(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function ea(t){if(Tt(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 ms={};Ue(ms,{ZodISODate:()=>iy,ZodISODateTime:()=>sy,ZodISODuration:()=>cy,ZodISOTime:()=>ay,date:()=>hd,datetime:()=>md,duration:()=>yd,time:()=>gd});var sy=b("ZodISODateTime",(t,e)=>{Bg.init(t,e),Pe.init(t,e)});function md(t){return Yg(sy,t)}var iy=b("ZodISODate",(t,e)=>{qg.init(t,e),Pe.init(t,e)});function hd(t){return Xg(iy,t)}var ay=b("ZodISOTime",(t,e)=>{Vg.init(t,e),Pe.init(t,e)});function gd(t){return Qg(ay,t)}var cy=b("ZodISODuration",(t,e)=>{Wg.init(t,e),Pe.init(t,e)});function yd(t){return ey(cy,t)}var uy=(t,e)=>{zi.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Ru(t,r)},flatten:{value:r=>Pu(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},YL=b("ZodError",uy),hs=b("ZodError",uy,{Parent:Error});var ly=$u(hs),dy=Ou(hs),py=Au(hs),fy=Nu(hs);var Oe=b("ZodType",(t,e)=>(fe.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)=>yt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>ly(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>py(t,r,n),t.parseAsync=async(r,n)=>dy(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>fy(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(MP(r,n)),t.superRefine=r=>t.check(jP(r)),t.overwrite=r=>t.check(En(r)),t.optional=()=>$e(t),t.nullable=()=>gy(t),t.nullish=()=>$e(gy(t)),t.nonoptional=r=>$P(t,r),t.array=()=>se(t),t.or=r=>Se([t,r]),t.and=r=>ra(t,r),t.transform=r=>xd(t,Sy(r)),t.default=r=>TP(t,r),t.prefault=r=>RP(t,r),t.catch=r=>OP(t,r),t.pipe=r=>xd(t,r),t.readonly=()=>NP(t),t.describe=r=>{let n=t.clone();return zr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return zr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return zr.get(t);let n=t.clone();return zr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),yy=b("_ZodString",(t,e)=>{ls.init(t,e),Oe.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(ed(...n)),t.includes=(...n)=>t.check(nd(...n)),t.startsWith=(...n)=>t.check(od(...n)),t.endsWith=(...n)=>t.check(sd(...n)),t.min=(...n)=>t.check(co(...n)),t.max=(...n)=>t.check(Gi(...n)),t.length=(...n)=>t.check(Ji(...n)),t.nonempty=(...n)=>t.check(co(1,...n)),t.lowercase=n=>t.check(td(n)),t.uppercase=n=>t.check(rd(n)),t.trim=()=>t.check(ad()),t.normalize=(...n)=>t.check(id(...n)),t.toLowerCase=()=>t.check(cd()),t.toUpperCase=()=>t.check(ud())}),KT=b("ZodString",(t,e)=>{ls.init(t,e),yy.init(t,e),t.email=r=>t.check(Pl(GT,r)),t.url=r=>t.check(Il(JT,r)),t.jwt=r=>t.check(Wl(dP,r)),t.emoji=r=>t.check(Al(YT,r)),t.guid=r=>t.check(qi(my,r)),t.uuid=r=>t.check(Rl(ta,r)),t.uuidv4=r=>t.check($l(ta,r)),t.uuidv6=r=>t.check(Cl(ta,r)),t.uuidv7=r=>t.check(Ol(ta,r)),t.nanoid=r=>t.check(Nl(XT,r)),t.guid=r=>t.check(qi(my,r)),t.cuid=r=>t.check(Dl(QT,r)),t.cuid2=r=>t.check(Ml(eP,r)),t.ulid=r=>t.check(jl(tP,r)),t.base64=r=>t.check(Bl(cP,r)),t.base64url=r=>t.check(ql(uP,r)),t.xid=r=>t.check(zl(rP,r)),t.ksuid=r=>t.check(Ll(nP,r)),t.ipv4=r=>t.check(Ul(oP,r)),t.ipv6=r=>t.check(Hl(sP,r)),t.cidrv4=r=>t.check(Fl(iP,r)),t.cidrv6=r=>t.check(Zl(aP,r)),t.e164=r=>t.check(Vl(lP,r)),t.datetime=r=>t.check(md(r)),t.date=r=>t.check(hd(r)),t.time=r=>t.check(gd(r)),t.duration=r=>t.check(yd(r))});function v(t){return Tl(KT,t)}var Pe=b("ZodStringFormat",(t,e)=>{xe.init(t,e),yy.init(t,e)}),GT=b("ZodEmail",(t,e)=>{Fu.init(t,e),Pe.init(t,e)});var my=b("ZodGUID",(t,e)=>{Uu.init(t,e),Pe.init(t,e)});var ta=b("ZodUUID",(t,e)=>{Hu.init(t,e),Pe.init(t,e)});var JT=b("ZodURL",(t,e)=>{Zu.init(t,e),Pe.init(t,e)});var YT=b("ZodEmoji",(t,e)=>{Bu.init(t,e),Pe.init(t,e)});var XT=b("ZodNanoID",(t,e)=>{qu.init(t,e),Pe.init(t,e)});var QT=b("ZodCUID",(t,e)=>{Vu.init(t,e),Pe.init(t,e)});var eP=b("ZodCUID2",(t,e)=>{Wu.init(t,e),Pe.init(t,e)});var tP=b("ZodULID",(t,e)=>{Ku.init(t,e),Pe.init(t,e)});var rP=b("ZodXID",(t,e)=>{Gu.init(t,e),Pe.init(t,e)});var nP=b("ZodKSUID",(t,e)=>{Ju.init(t,e),Pe.init(t,e)});var oP=b("ZodIPv4",(t,e)=>{Yu.init(t,e),Pe.init(t,e)});var sP=b("ZodIPv6",(t,e)=>{Xu.init(t,e),Pe.init(t,e)});var iP=b("ZodCIDRv4",(t,e)=>{Qu.init(t,e),Pe.init(t,e)});var aP=b("ZodCIDRv6",(t,e)=>{el.init(t,e),Pe.init(t,e)});var cP=b("ZodBase64",(t,e)=>{tl.init(t,e),Pe.init(t,e)});var uP=b("ZodBase64URL",(t,e)=>{rl.init(t,e),Pe.init(t,e)});var lP=b("ZodE164",(t,e)=>{nl.init(t,e),Pe.init(t,e)});var dP=b("ZodJWT",(t,e)=>{ol.init(t,e),Pe.init(t,e)});var _y=b("ZodNumber",(t,e)=>{Fi.init(t,e),Oe.init(t,e),t.gt=(n,o)=>t.check(Wi(n,o)),t.gte=(n,o)=>t.check(fs(n,o)),t.min=(n,o)=>t.check(fs(n,o)),t.lt=(n,o)=>t.check(Vi(n,o)),t.lte=(n,o)=>t.check(ps(n,o)),t.max=(n,o)=>t.check(ps(n,o)),t.int=n=>t.check(hy(n)),t.safe=n=>t.check(hy(n)),t.positive=n=>t.check(Wi(0,n)),t.nonnegative=n=>t.check(fs(0,n)),t.negative=n=>t.check(Vi(0,n)),t.nonpositive=n=>t.check(ps(0,n)),t.multipleOf=(n,o)=>t.check(Ki(n,o)),t.step=(n,o)=>t.check(Ki(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 pe(t){return Kl(_y,t)}var pP=b("ZodNumberFormat",(t,e)=>{sl.init(t,e),_y.init(t,e)});function hy(t){return Gl(pP,t)}var fP=b("ZodBoolean",(t,e)=>{il.init(t,e),Oe.init(t,e)});function He(t){return Jl(fP,t)}var mP=b("ZodNull",(t,e)=>{al.init(t,e),Oe.init(t,e)});function xy(t){return Yl(mP,t)}var hP=b("ZodUnknown",(t,e)=>{cl.init(t,e),Oe.init(t,e)});function Re(){return Xl(hP)}var gP=b("ZodNever",(t,e)=>{ul.init(t,e),Oe.init(t,e)});function yP(t){return Ql(gP,t)}var _P=b("ZodArray",(t,e)=>{ll.init(t,e),Oe.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(co(r,n)),t.nonempty=r=>t.check(co(1,r)),t.max=(r,n)=>t.check(Gi(r,n)),t.length=(r,n)=>t.check(Ji(r,n)),t.unwrap=()=>t.element});function se(t,e){return ty(_P,t,e)}var vy=b("ZodObject",(t,e)=>{Zi.init(t,e),Oe.init(t,e),oe.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>ut(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:Re()}),t.loose=()=>t.clone({...t._zod.def,catchall:Re()}),t.strict=()=>t.clone({...t._zod.def,catchall:yP()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>oe.extend(t,r),t.merge=r=>oe.merge(t,r),t.pick=r=>oe.pick(t,r),t.omit=r=>oe.omit(t,r),t.partial=(...r)=>oe.partial(ky,t,r[0]),t.required=(...r)=>oe.required(Ey,t,r[0])});function I(t,e){let r={type:"object",get shape(){return oe.assignProp(this,"shape",{...t}),this.shape},...oe.normalizeParams(e)};return new vy(r)}function rt(t,e){return new vy({type:"object",get shape(){return oe.assignProp(this,"shape",{...t}),this.shape},catchall:Re(),...oe.normalizeParams(e)})}var by=b("ZodUnion",(t,e)=>{Bi.init(t,e),Oe.init(t,e),t.options=e.options});function Se(t,e){return new by({type:"union",options:t,...oe.normalizeParams(e)})}var xP=b("ZodDiscriminatedUnion",(t,e)=>{by.init(t,e),dl.init(t,e)});function vd(t,e,r){return new xP({type:"union",options:e,discriminator:t,...oe.normalizeParams(r)})}var vP=b("ZodIntersection",(t,e)=>{pl.init(t,e),Oe.init(t,e)});function ra(t,e){return new vP({type:"intersection",left:t,right:e})}var bP=b("ZodRecord",(t,e)=>{fl.init(t,e),Oe.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function ve(t,e,r){return new bP({type:"record",keyType:t,valueType:e,...oe.normalizeParams(r)})}var _d=b("ZodEnum",(t,e)=>{ml.init(t,e),Oe.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 _d({...e,checks:[],...oe.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 _d({...e,checks:[],...oe.normalizeParams(o),entries:s})}});function ut(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new _d({type:"enum",entries:r,...oe.normalizeParams(e)})}var SP=b("ZodLiteral",(t,e)=>{hl.init(t,e),Oe.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 U(t,e){return new SP({type:"literal",values:Array.isArray(t)?t:[t],...oe.normalizeParams(e)})}var kP=b("ZodTransform",(t,e)=>{gl.init(t,e),Oe.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(oe.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(oe.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 Sy(t){return new kP({type:"transform",transform:t})}var ky=b("ZodOptional",(t,e)=>{yl.init(t,e),Oe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function $e(t){return new ky({type:"optional",innerType:t})}var EP=b("ZodNullable",(t,e)=>{_l.init(t,e),Oe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function gy(t){return new EP({type:"nullable",innerType:t})}var wP=b("ZodDefault",(t,e)=>{xl.init(t,e),Oe.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function TP(t,e){return new wP({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var PP=b("ZodPrefault",(t,e)=>{vl.init(t,e),Oe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function RP(t,e){return new PP({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Ey=b("ZodNonOptional",(t,e)=>{bl.init(t,e),Oe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function $P(t,e){return new Ey({type:"nonoptional",innerType:t,...oe.normalizeParams(e)})}var CP=b("ZodCatch",(t,e)=>{Sl.init(t,e),Oe.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function OP(t,e){return new CP({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var IP=b("ZodPipe",(t,e)=>{kl.init(t,e),Oe.init(t,e),t.in=e.in,t.out=e.out});function xd(t,e){return new IP({type:"pipe",in:t,out:e})}var AP=b("ZodReadonly",(t,e)=>{El.init(t,e),Oe.init(t,e)});function NP(t){return new AP({type:"readonly",innerType:t})}var wy=b("ZodCustom",(t,e)=>{wl.init(t,e),Oe.init(t,e)});function DP(t){let e=new Ze({check:"custom"});return e._zod.check=t,e}function Ty(t,e){return ld(wy,t??(()=>!0),e)}function MP(t,e={}){return dd(wy,t,e)}function jP(t){let e=DP(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(oe.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(oe.issue(o))}},t(r.value,r)));return e}function bd(t,e){return xd(Sy(t),e)}gt(Gg());var kd="2025-11-25";var Py=[kd,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Hr="io.modelcontextprotocol/related-task",oa="2.0",Le=Ty(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Ry=Se([v(),pe().int()]),$y=v(),d1=rt({ttl:pe().optional(),pollInterval:pe().optional()}),zP=I({ttl:pe().optional()}),LP=I({taskId:v()}),Ed=rt({progressToken:Ry.optional(),[Hr]:LP.optional()}),_t=I({_meta:Ed.optional()}),gs=_t.extend({task:zP.optional()}),Cy=t=>gs.safeParse(t).success,Be=I({method:v(),params:_t.loose().optional()}),Pt=I({_meta:Ed.optional()}),Rt=I({method:v(),params:Pt.loose().optional()}),qe=rt({_meta:Ed.optional()}),sa=Se([v(),pe().int()]),Oy=I({jsonrpc:U(oa),id:sa,...Be.shape}).strict(),wd=t=>Oy.safeParse(t).success,Iy=I({jsonrpc:U(oa),...Rt.shape}).strict(),Ay=t=>Iy.safeParse(t).success,Td=I({jsonrpc:U(oa),id:sa,result:qe}).strict(),ys=t=>Td.safeParse(t).success;var Z;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(Z||(Z={}));var Pd=I({jsonrpc:U(oa),id:sa.optional(),error:I({code:pe().int(),message:v(),data:Re().optional()})}).strict();var Ny=t=>Pd.safeParse(t).success;var Dy=Se([Oy,Iy,Td,Pd]),p1=Se([Td,Pd]),ia=qe.strict(),UP=Pt.extend({requestId:sa.optional(),reason:v().optional()}),aa=Rt.extend({method:U("notifications/cancelled"),params:UP}),HP=I({src:v(),mimeType:v().optional(),sizes:se(v()).optional(),theme:ut(["light","dark"]).optional()}),_s=I({icons:se(HP).optional()}),lo=I({name:v(),title:v().optional()}),My=lo.extend({...lo.shape,..._s.shape,version:v(),websiteUrl:v().optional(),description:v().optional()}),FP=ra(I({applyDefaults:He().optional()}),ve(v(),Re())),ZP=bd(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ra(I({form:FP.optional(),url:Le.optional()}),ve(v(),Re()).optional())),BP=rt({list:Le.optional(),cancel:Le.optional(),requests:rt({sampling:rt({createMessage:Le.optional()}).optional(),elicitation:rt({create:Le.optional()}).optional()}).optional()}),qP=rt({list:Le.optional(),cancel:Le.optional(),requests:rt({tools:rt({call:Le.optional()}).optional()}).optional()}),VP=I({experimental:ve(v(),Le).optional(),sampling:I({context:Le.optional(),tools:Le.optional()}).optional(),elicitation:ZP.optional(),roots:I({listChanged:He().optional()}).optional(),tasks:BP.optional(),extensions:ve(v(),Le).optional()}),WP=_t.extend({protocolVersion:v(),capabilities:VP,clientInfo:My}),Rd=Be.extend({method:U("initialize"),params:WP});var KP=I({experimental:ve(v(),Le).optional(),logging:Le.optional(),completions:Le.optional(),prompts:I({listChanged:He().optional()}).optional(),resources:I({subscribe:He().optional(),listChanged:He().optional()}).optional(),tools:I({listChanged:He().optional()}).optional(),tasks:qP.optional(),extensions:ve(v(),Le).optional()}),GP=qe.extend({protocolVersion:v(),capabilities:KP,serverInfo:My,instructions:v().optional()}),$d=Rt.extend({method:U("notifications/initialized"),params:Pt.optional()});var ca=Be.extend({method:U("ping"),params:_t.optional()}),JP=I({progress:pe(),total:$e(pe()),message:$e(v())}),YP=I({...Pt.shape,...JP.shape,progressToken:Ry}),ua=Rt.extend({method:U("notifications/progress"),params:YP}),XP=_t.extend({cursor:$y.optional()}),xs=Be.extend({params:XP.optional()}),vs=qe.extend({nextCursor:$y.optional()}),QP=ut(["working","input_required","completed","failed","cancelled"]),bs=I({taskId:v(),status:QP,ttl:Se([pe(),xy()]),createdAt:v(),lastUpdatedAt:v(),pollInterval:$e(pe()),statusMessage:$e(v())}),po=qe.extend({task:bs}),e0=Pt.merge(bs),Ss=Rt.extend({method:U("notifications/tasks/status"),params:e0}),la=Be.extend({method:U("tasks/get"),params:_t.extend({taskId:v()})}),da=qe.merge(bs),pa=Be.extend({method:U("tasks/result"),params:_t.extend({taskId:v()})}),f1=qe.loose(),fa=xs.extend({method:U("tasks/list")}),ma=vs.extend({tasks:se(bs)}),ha=Be.extend({method:U("tasks/cancel"),params:_t.extend({taskId:v()})}),jy=qe.merge(bs),zy=I({uri:v(),mimeType:$e(v()),_meta:ve(v(),Re()).optional()}),Ly=zy.extend({text:v()}),Cd=v().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Uy=zy.extend({blob:Cd}),ks=ut(["user","assistant"]),fo=I({audience:se(ks).optional(),priority:pe().min(0).max(1).optional(),lastModified:ms.datetime({offset:!0}).optional()}),Hy=I({...lo.shape,..._s.shape,uri:v(),description:$e(v()),mimeType:$e(v()),size:$e(pe()),annotations:fo.optional(),_meta:$e(rt({}))}),t0=I({...lo.shape,..._s.shape,uriTemplate:v(),description:$e(v()),mimeType:$e(v()),annotations:fo.optional(),_meta:$e(rt({}))}),mo=xs.extend({method:U("resources/list")}),r0=vs.extend({resources:se(Hy)}),ho=xs.extend({method:U("resources/templates/list")}),n0=vs.extend({resourceTemplates:se(t0)}),Od=_t.extend({uri:v()}),o0=Od,ga=Be.extend({method:U("resources/read"),params:o0}),s0=qe.extend({contents:se(Se([Ly,Uy]))}),i0=Rt.extend({method:U("notifications/resources/list_changed"),params:Pt.optional()}),a0=Od,c0=Be.extend({method:U("resources/subscribe"),params:a0}),u0=Od,l0=Be.extend({method:U("resources/unsubscribe"),params:u0}),d0=Pt.extend({uri:v()}),p0=Rt.extend({method:U("notifications/resources/updated"),params:d0}),f0=I({name:v(),description:$e(v()),required:$e(He())}),m0=I({...lo.shape,..._s.shape,description:$e(v()),arguments:$e(se(f0)),_meta:$e(rt({}))}),go=xs.extend({method:U("prompts/list")}),h0=vs.extend({prompts:se(m0)}),g0=_t.extend({name:v(),arguments:ve(v(),v()).optional()}),ya=Be.extend({method:U("prompts/get"),params:g0}),Id=I({type:U("text"),text:v(),annotations:fo.optional(),_meta:ve(v(),Re()).optional()}),Ad=I({type:U("image"),data:Cd,mimeType:v(),annotations:fo.optional(),_meta:ve(v(),Re()).optional()}),Nd=I({type:U("audio"),data:Cd,mimeType:v(),annotations:fo.optional(),_meta:ve(v(),Re()).optional()}),y0=I({type:U("tool_use"),name:v(),id:v(),input:ve(v(),Re()),_meta:ve(v(),Re()).optional()}),_0=I({type:U("resource"),resource:Se([Ly,Uy]),annotations:fo.optional(),_meta:ve(v(),Re()).optional()}),x0=Hy.extend({type:U("resource_link")}),Dd=Se([Id,Ad,Nd,x0,_0]),v0=I({role:ks,content:Dd}),b0=qe.extend({description:v().optional(),messages:se(v0)}),S0=Rt.extend({method:U("notifications/prompts/list_changed"),params:Pt.optional()}),k0=I({title:v().optional(),readOnlyHint:He().optional(),destructiveHint:He().optional(),idempotentHint:He().optional(),openWorldHint:He().optional()}),E0=I({taskSupport:ut(["required","optional","forbidden"]).optional()}),Fy=I({...lo.shape,..._s.shape,description:v().optional(),inputSchema:I({type:U("object"),properties:ve(v(),Le).optional(),required:se(v()).optional()}).catchall(Re()),outputSchema:I({type:U("object"),properties:ve(v(),Le).optional(),required:se(v()).optional()}).catchall(Re()).optional(),annotations:k0.optional(),execution:E0.optional(),_meta:ve(v(),Re()).optional()}),_a=xs.extend({method:U("tools/list")}),w0=vs.extend({tools:se(Fy)}),xa=qe.extend({content:se(Dd).default([]),structuredContent:ve(v(),Re()).optional(),isError:He().optional()}),m1=xa.or(qe.extend({toolResult:Re()})),T0=gs.extend({name:v(),arguments:ve(v(),Re()).optional()}),yo=Be.extend({method:U("tools/call"),params:T0}),P0=Rt.extend({method:U("notifications/tools/list_changed"),params:Pt.optional()}),h1=I({autoRefresh:He().default(!0),debounceMs:pe().int().nonnegative().default(300)}),Es=ut(["debug","info","notice","warning","error","critical","alert","emergency"]),R0=_t.extend({level:Es}),Md=Be.extend({method:U("logging/setLevel"),params:R0}),$0=Pt.extend({level:Es,logger:v().optional(),data:Re()}),C0=Rt.extend({method:U("notifications/message"),params:$0}),O0=I({name:v().optional()}),I0=I({hints:se(O0).optional(),costPriority:pe().min(0).max(1).optional(),speedPriority:pe().min(0).max(1).optional(),intelligencePriority:pe().min(0).max(1).optional()}),A0=I({mode:ut(["auto","required","none"]).optional()}),N0=I({type:U("tool_result"),toolUseId:v().describe("The unique identifier for the corresponding tool call."),content:se(Dd).default([]),structuredContent:I({}).loose().optional(),isError:He().optional(),_meta:ve(v(),Re()).optional()}),D0=vd("type",[Id,Ad,Nd]),na=vd("type",[Id,Ad,Nd,y0,N0]),M0=I({role:ks,content:Se([na,se(na)]),_meta:ve(v(),Re()).optional()}),j0=gs.extend({messages:se(M0),modelPreferences:I0.optional(),systemPrompt:v().optional(),includeContext:ut(["none","thisServer","allServers"]).optional(),temperature:pe().optional(),maxTokens:pe().int(),stopSequences:se(v()).optional(),metadata:Le.optional(),tools:se(Fy).optional(),toolChoice:A0.optional()}),z0=Be.extend({method:U("sampling/createMessage"),params:j0}),ws=qe.extend({model:v(),stopReason:$e(ut(["endTurn","stopSequence","maxTokens"]).or(v())),role:ks,content:D0}),jd=qe.extend({model:v(),stopReason:$e(ut(["endTurn","stopSequence","maxTokens","toolUse"]).or(v())),role:ks,content:Se([na,se(na)])}),L0=I({type:U("boolean"),title:v().optional(),description:v().optional(),default:He().optional()}),U0=I({type:U("string"),title:v().optional(),description:v().optional(),minLength:pe().optional(),maxLength:pe().optional(),format:ut(["email","uri","date","date-time"]).optional(),default:v().optional()}),H0=I({type:ut(["number","integer"]),title:v().optional(),description:v().optional(),minimum:pe().optional(),maximum:pe().optional(),default:pe().optional()}),F0=I({type:U("string"),title:v().optional(),description:v().optional(),enum:se(v()),default:v().optional()}),Z0=I({type:U("string"),title:v().optional(),description:v().optional(),oneOf:se(I({const:v(),title:v()})),default:v().optional()}),B0=I({type:U("string"),title:v().optional(),description:v().optional(),enum:se(v()),enumNames:se(v()).optional(),default:v().optional()}),q0=Se([F0,Z0]),V0=I({type:U("array"),title:v().optional(),description:v().optional(),minItems:pe().optional(),maxItems:pe().optional(),items:I({type:U("string"),enum:se(v())}),default:se(v()).optional()}),W0=I({type:U("array"),title:v().optional(),description:v().optional(),minItems:pe().optional(),maxItems:pe().optional(),items:I({anyOf:se(I({const:v(),title:v()}))}),default:se(v()).optional()}),K0=Se([V0,W0]),G0=Se([B0,q0,K0]),J0=Se([G0,L0,U0,H0]),Y0=gs.extend({mode:U("form").optional(),message:v(),requestedSchema:I({type:U("object"),properties:ve(v(),J0),required:se(v()).optional()})}),X0=gs.extend({mode:U("url"),message:v(),elicitationId:v(),url:v().url()}),Q0=Se([Y0,X0]),eR=Be.extend({method:U("elicitation/create"),params:Q0}),tR=Pt.extend({elicitationId:v()}),rR=Rt.extend({method:U("notifications/elicitation/complete"),params:tR}),_o=qe.extend({action:ut(["accept","decline","cancel"]),content:bd(t=>t===null?void 0:t,ve(v(),Se([v(),pe(),He(),se(v())])).optional())}),nR=I({type:U("ref/resource"),uri:v()});var oR=I({type:U("ref/prompt"),name:v()}),sR=_t.extend({ref:Se([oR,nR]),argument:I({name:v(),value:v()}),context:I({arguments:ve(v(),v()).optional()}).optional()}),va=Be.extend({method:U("completion/complete"),params:sR});function Zy(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function By(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var iR=qe.extend({completion:rt({values:se(v()).max(100),total:$e(pe().int()),hasMore:$e(He())})}),aR=I({uri:v().startsWith("file://"),name:v().optional(),_meta:ve(v(),Re()).optional()}),cR=Be.extend({method:U("roots/list"),params:_t.optional()}),zd=qe.extend({roots:se(aR)}),uR=Rt.extend({method:U("notifications/roots/list_changed"),params:Pt.optional()}),g1=Se([ca,Rd,va,Md,ya,go,mo,ho,ga,c0,l0,yo,_a,la,pa,fa,ha]),y1=Se([aa,ua,$d,uR,Ss]),_1=Se([ia,ws,jd,_o,zd,da,ma,po]),x1=Se([ca,z0,eR,cR,la,pa,fa,ha]),v1=Se([aa,ua,C0,p0,i0,P0,S0,Ss,rR]),b1=Se([ia,GP,iR,b0,h0,r0,n0,s0,xa,w0,da,ma,po]),j=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===Z.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Sd(o.elicitations,r)}return new t(e,r,n)}},Sd=class extends j{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(Z.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function Fr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Vy=Symbol("Let zodToJsonSchema decide on which parser to use");var qy={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"},Wy=t=>typeof t=="string"?{...qy,name:t}:{...qy,...t};var Ky=t=>{let e=Wy(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 Ld(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function ie(t,e,r,n,o){t[e]=r,Ld(t,e,n,o)}var ba=(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 Ce(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?ba(e,t.currentPath):e.join("/")}}function Gy(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==T.ZodAny&&(r.items=W(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&ie(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&ie(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(ie(r,"minItems",t.exactLength.value,t.exactLength.message,e),ie(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Jy(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?ie(r,"minimum",n.value,n.message,e):ie(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),ie(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?ie(r,"maximum",n.value,n.message,e):ie(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),ie(r,"maximum",n.value,n.message,e));break;case"multipleOf":ie(r,"multipleOf",n.value,n.message,e);break}return r}function Yy(){return{type:"boolean"}}function Sa(t,e){return W(t.type._def,e)}var Xy=(t,e)=>W(t.innerType._def,e);function Ud(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Ud(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 lR(t,e)}}var lR=(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":ie(r,"minimum",n.value,n.message,e);break;case"max":ie(r,"maximum",n.value,n.message,e);break}return r};function Qy(t,e){return{...W(t.innerType._def,e),default:t.defaultValue()}}function e_(t,e){return e.effectStrategy==="input"?W(t.schema._def,e):Ce(e)}function t_(t){return{type:"string",enum:Array.from(t.values)}}var dR=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function r_(t,e){let r=[W(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),W(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(dR(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 n_(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 Hd,Bt={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:()=>(Hd===void 0&&(Hd=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Hd),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 ka(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":ie(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":ie(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":qt(r,"email",n.message,e);break;case"format:idn-email":qt(r,"idn-email",n.message,e);break;case"pattern:zod":nt(r,Bt.email,n.message,e);break}break;case"url":qt(r,"uri",n.message,e);break;case"uuid":qt(r,"uuid",n.message,e);break;case"regex":nt(r,n.regex,n.message,e);break;case"cuid":nt(r,Bt.cuid,n.message,e);break;case"cuid2":nt(r,Bt.cuid2,n.message,e);break;case"startsWith":nt(r,RegExp(`^${Fd(n.value,e)}`),n.message,e);break;case"endsWith":nt(r,RegExp(`${Fd(n.value,e)}$`),n.message,e);break;case"datetime":qt(r,"date-time",n.message,e);break;case"date":qt(r,"date",n.message,e);break;case"time":qt(r,"time",n.message,e);break;case"duration":qt(r,"duration",n.message,e);break;case"length":ie(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),ie(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{nt(r,RegExp(Fd(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&qt(r,"ipv4",n.message,e),n.version!=="v4"&&qt(r,"ipv6",n.message,e);break}case"base64url":nt(r,Bt.base64url,n.message,e);break;case"jwt":nt(r,Bt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&nt(r,Bt.ipv4Cidr,n.message,e),n.version!=="v4"&&nt(r,Bt.ipv6Cidr,n.message,e);break}case"emoji":nt(r,Bt.emoji(),n.message,e);break;case"ulid":{nt(r,Bt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{qt(r,"binary",n.message,e);break}case"contentEncoding:base64":{ie(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{nt(r,Bt.base64,n.message,e);break}}break}case"nanoid":nt(r,Bt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Fd(t,e){return e.patternStrategy==="escape"?fR(t):t}var pR=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function fR(t){let e="";for(let r=0;r<t.length;r++)pR.has(t[r])||(e+="\\"),e+=t[r];return e}function qt(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}}})):ie(t,"format",e,r,n)}function nt(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:o_(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):ie(t,"pattern",o_(e,n),r,n)}function o_(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
67
|
]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
|
|
68
68
|
]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
|
|
69
69
|
`:`[${n[c]}\r
|
|
70
|
-
]`;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 Ea(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===T.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:W(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??Oe(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:W(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===T.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=ka(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===T.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===T.ZodBranded&&t.keyType._def.type._def.typeName===T.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=Sa(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function s_(t,e){if(e.mapStrategy==="record")return Ea(t,e);let r=W(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||Oe(e),n=W(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||Oe(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function i_(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 a_(t){return t.target==="openAi"?void 0:{not:Oe({...t,currentPath:[...t.currentPath,"not"]})}}function c_(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Ts={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function l_(t,e){if(e.target==="openApi3")return u_(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Ts&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Ts[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 u_(t,e)}var u_=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>W(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 d_(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:Ts[t.innerType._def.typeName],nullable:!0}:{type:[Ts[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=W(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=W(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function p_(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",Ld(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?ie(r,"minimum",n.value,n.message,e):ie(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),ie(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?ie(r,"maximum",n.value,n.message,e):ie(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),ie(r,"maximum",n.value,n.message,e));break;case"multipleOf":ie(r,"multipleOf",n.value,n.message,e);break}return r}function f_(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=hR(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let d=W(c._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});d!==void 0&&(n.properties[a]=d,u||o.push(a))}o.length&&(n.required=o);let i=mR(t,e);return i!==void 0&&(n.additionalProperties=i),n}function mR(t,e){if(t.catchall._def.typeName!=="ZodNever")return W(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 hR(t){try{return t.isOptional()}catch{return!0}}var m_=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return W(t.innerType._def,e);let r=W(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:Oe(e)},r]}:Oe(e)};var h_=(t,e)=>{if(e.pipeStrategy==="input")return W(t.in._def,e);if(e.pipeStrategy==="output")return W(t.out._def,e);let r=W(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=W(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function g_(t,e){return W(t.type._def,e)}function y_(t,e){let n={type:"array",uniqueItems:!0,items:W(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&ie(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&ie(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function __(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>W(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:W(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>W(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function x_(t){return{not:Oe(t)}}function v_(t){return Oe(t)}var b_=(t,e)=>W(t.innerType._def,e);var S_=(t,e,r)=>{switch(e){case T.ZodString:return ka(t,r);case T.ZodNumber:return p_(t,r);case T.ZodObject:return f_(t,r);case T.ZodBigInt:return Jy(t,r);case T.ZodBoolean:return Yy();case T.ZodDate:return Ud(t,r);case T.ZodUndefined:return x_(r);case T.ZodNull:return c_(r);case T.ZodArray:return Gy(t,r);case T.ZodUnion:case T.ZodDiscriminatedUnion:return l_(t,r);case T.ZodIntersection:return r_(t,r);case T.ZodTuple:return __(t,r);case T.ZodRecord:return Ea(t,r);case T.ZodLiteral:return n_(t,r);case T.ZodEnum:return t_(t);case T.ZodNativeEnum:return i_(t);case T.ZodNullable:return d_(t,r);case T.ZodOptional:return m_(t,r);case T.ZodMap:return s_(t,r);case T.ZodSet:return y_(t,r);case T.ZodLazy:return()=>t.getter()._def;case T.ZodPromise:return g_(t,r);case T.ZodNaN:case T.ZodNever:return a_(r);case T.ZodEffects:return e_(t,r);case T.ZodAny:return Oe(r);case T.ZodUnknown:return v_(r);case T.ZodDefault:return Qy(t,r);case T.ZodBranded:return Sa(t,r);case T.ZodReadonly:return b_(t,r);case T.ZodCatch:return Xy(t,r);case T.ZodPipeline:return h_(t,r);case T.ZodFunction:case T.ZodVoid:case T.ZodSymbol:return;default:return(n=>{})(e)}};function W(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Vy)return a}if(n&&!r){let a=gR(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=S_(t,t.typeName,e),i=typeof s=="function"?W(s(),e):s;if(i&&yR(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var gR=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:ba(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`),Oe(e)):e.$refStrategy==="seen"?Oe(e):void 0}},yR=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var Zd=(t,e)=>{let r=Ky(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,d])=>({...c,[u]:W(d._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??Oe(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=W(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??Oe(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 _R(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function Bd(t,e){return Tt(t)?pd(t,{target:_R(e?.target),io:e?.pipeStrategy??"input"}):Zd(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function qd(t){let r=Hr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ea(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Vd(t,e){let r=Ur(t,e);if(!r.success)throw r.error;return r.data}var xR=6e4,wa=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(aa,r=>{this._oncancel(r)}),this.setNotificationHandler(ua,r=>{this._onprogress(r)}),this.setRequestHandler(ca,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(la,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new j(Z.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(pa,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,d=this._requestResolvers.get(u);if(d)if(this._requestResolvers.delete(u),a.type==="response")d(c);else{let l=c,f=new j(l.error.code,l.error.message,l.error.data);d(f)}else{let l=a.type==="response"?"Response":"Error";this._onerror(new Error(`${l} 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 j(Z.InvalidParams,`Task not found: ${s}`);if(!Zr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(Zr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Fr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(fa,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 j(Z.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(ha,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new j(Z.InvalidParams,`Task not found: ${r.params.taskId}`);if(Zr(o.status))throw new j(Z.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new j(Z.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof j?o:new j(Z.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),j.fromError(Z.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),ys(s)||Ny(s)?this._onresponse(s):wd(s)?this._onrequest(s,i):Ay(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._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=j.fromError(Z.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[Fr]?.taskId;if(n===void 0){let d={jsonrpc:"2.0",id:e.id,error:{code:Z.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId).catch(l=>this._onerror(new Error(`Failed to enqueue error response: ${l}`))):o?.send(d).catch(l=>this._onerror(new Error(`Failed to send an error response: ${l}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=Cy(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 d=>{if(i.signal.aborted)return;let l={relatedRequestId:e.id};s&&(l.relatedTask={taskId:s}),await this.notification(d,l)},sendRequest:async(d,l,f)=>{if(i.signal.aborted)throw new j(Z.ConnectionClosed,"Request was cancelled");let m={...f,relatedRequestId:e.id};s&&!m.relatedTask&&(m.relatedTask={taskId:s});let p=m.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(d,l,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 d=>{if(i.signal.aborted)return;let l={result:d,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:l,timestamp:Date.now()},o?.sessionId):await o?.send(l)},async d=>{if(i.signal.aborted)return;let l={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(d.code)?d.code:Z.InternalError,message:d.message??"Internal error",...d.data!==void 0&&{data:d.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId):await o?.send(l)}).catch(d=>this._onerror(new Error(`Failed to send response: ${d}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===i&&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),ys(e))n(e);else{let i=new j(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(ys(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),ys(e))o(e);else{let i=j.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 j?i:new j(Z.InternalError,String(i))}}return}let s;try{let i=await this.request(e,po,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new j(Z.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},Zr(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new j(Z.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new j(Z.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof j?i:new j(Z.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,d)=>{let l=x=>{d(x)};if(!this._transport){l(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(x){l(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||{},[Fr]: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(S=>this._onerror(new Error(`Failed to send cancellation: ${S}`)));let y=x instanceof j?x:new j(Z.RequestTimeout,String(x));d(y)};this._responseHandlers.set(f,x=>{if(!n?.signal?.aborted){if(x instanceof Error)return d(x);try{let y=Ur(r,x.result);y.success?u(y.data):d(y.error)}catch(y){d(y)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??xR,g=()=>p(j.fromError(Z.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){let x=y=>{let S=this._responseHandlers.get(f);S?S(y):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(y=>{this._cleanupTimeout(f),d(y)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(x=>{this._cleanupTimeout(f),d(x)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},da,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},ma,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},jy,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||{},[Fr]: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||{},[Fr]: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||{},[Fr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=qd(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=Vd(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=qd(e);this._notificationHandlers.set(n,o=>{let s=Vd(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"&&wd(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new j(Z.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new j(Z.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new j(Z.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new j(Z.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=Ss.parse({method:"notifications/tasks/status",params:a});await this.notification(c),Zr(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 j(Z.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(Zr(a.status))throw new j(Z.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=Ss.parse({method:"notifications/tasks/status",params:c});await this.notification(u),Zr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function k_(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function E_(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];k_(i)&&k_(s)?r[o]={...i,...s}:r[o]=s}return r}var lb=$h(If(),1),db=$h(ub(),1);function lN(){let t=new lb.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,db.default)(t),t}var ac=class{constructor(e){this._ajv=e??lN()}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 cc=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(d=>d.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(d=>d.type==="tool_use");if(i){if(s.some(d=>d.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let d=new Set(c.filter(f=>f.type==="tool_use").map(f=>f.id)),l=new Set(s.filter(f=>f.type==="tool_result").map(f=>f.toolUseId));if(d.size!==l.size||![...d].every(f=>l.has(f)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},ws,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},_o,r)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function pb(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 fb(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 uc=class extends wa{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Es.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 ac,this.setRequestHandler(Rd,n=>this._oninitialize(n)),this.setNotificationHandler($d,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Md,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Es.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new cc(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=E_(this._capabilities,e)}setRequestHandler(e,r){let o=Hr(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(Tt(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 d=Ur(yo,c);if(!d.success){let p=d.error instanceof Error?d.error.message:String(d.error);throw new j(Z.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:l}=d.data,f=await Promise.resolve(r(c,u));if(l.task){let p=Ur(po,f);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new j(Z.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let m=Ur(xa,f);if(!m.success){let p=m.error instanceof Error?m.error.message:String(m.error);throw new j(Z.InvalidParams,`Invalid tools/call result: ${p}`)}return m.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){fb(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&pb(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:Py.includes(r)?r:kd,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"},ia)}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(l=>l.type==="tool_use").map(l=>l.id)),d=new Set(o.filter(l=>l.type==="tool_result").map(l=>l.toolUseId));if(u.size!==d.size||![...u].every(l=>d.has(l)))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},jd,r):this.request({method:"sampling/createMessage",params:e},ws,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},_o,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},_o,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new j(Z.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof j?i:new j(Z.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},zd,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 hb=Symbol.for("mcp.completable");function Uf(t){return!!t&&typeof t=="object"&&hb in t}function gb(t){return t[hb]?.complete}var mb;(function(t){t.Completable="McpCompletable"})(mb||(mb={}));var dN=/^[A-Za-z0-9._-]{1,128}$/;function pN(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"),!dN.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 fN(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 Hf(t){let e=pN(t);return fN(t,e.warnings),e.isValid}var lc=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 dc=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 uc(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new lc(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(Xr(_a)),this.server.assertCanSetRequestHandler(Xr(yo)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(_a,()=>({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=uo(r.inputSchema);return o?Bd(o,{strictUnions:!0,pipeStrategy:"input"}):mN})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=uo(r.outputSchema);o&&(n.outputSchema=Bd(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(yo,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new j(Z.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new j(Z.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new j(Z.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new j(Z.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof j&&n.code===Z.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=uo(e.inputSchema)??e.inputSchema,i=await Xi(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Qi(a);throw new j(Z.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new j(Z.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=uo(e.outputSchema),s=await Xi(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Qi(i);throw new j(Z.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,d=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(f=>setTimeout(f,d));let l=await n.taskStore.getTask(c);if(!l)throw new j(Z.InternalError,`Task ${c} not found during polling`);u=l}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Xr(va)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(va,async e=>{switch(e.params.ref.type){case"ref/prompt":return Zy(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return By(e),this.handleResourceCompletion(e,e.params.ref);default:throw new j(Z.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new j(Z.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new j(Z.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return ri;let s=Hr(n.argsSchema)?.[e.params.argument.name];if(!Uf(s))return ri;let i=gb(s);if(!i)return ri;let a=await i(e.params.argument.value,e.params.context);return _b(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 ri;throw new j(Z.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return ri;let s=await o(e.params.argument.value,e.params.context);return _b(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(Xr(mo)),this.server.assertCanSetRequestHandler(Xr(ho)),this.server.assertCanSetRequestHandler(Xr(ga)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(mo,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(ho,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(ga,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new j(Z.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new j(Z.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(Xr(go)),this.server.assertCanSetRequestHandler(Xr(ya)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(go,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?hN(r.argsSchema):void 0}))})),this.server.setRequestHandler(ya,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new j(Z.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new j(Z.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=uo(n.argsSchema),s=await Xi(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Qi(c);throw new j(Z.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:Tn(o),callback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:a=>{typeof a.name<"u"&&a.name!==e&&(delete this._registeredPrompts[e],a.name&&(this._registeredPrompts[a.name]=i)),typeof a.title<"u"&&(i.title=a.title),typeof a.description<"u"&&(i.description=a.description),typeof a.argsSchema<"u"&&(i.argsSchema=Tn(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof at?c._def?.innerType:c;return Uf(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){Hf(e);let d={title:r,description:n,inputSchema:yb(o),outputSchema:yb(s),annotations:i,execution:a,_meta:c,handler:u,enabled:!0,disable:()=>d.update({enabled:!1}),enable:()=>d.update({enabled:!0}),remove:()=>d.update({name:null}),update:l=>{typeof l.name<"u"&&l.name!==e&&(typeof l.name=="string"&&Hf(l.name),delete this._registeredTools[e],l.name&&(this._registeredTools[l.name]=d)),typeof l.title<"u"&&(d.title=l.title),typeof l.description<"u"&&(d.description=l.description),typeof l.paramsSchema<"u"&&(d.inputSchema=Tn(l.paramsSchema)),typeof l.outputSchema<"u"&&(d.outputSchema=Tn(l.outputSchema)),typeof l.callback<"u"&&(d.handler=l.callback),typeof l.annotations<"u"&&(d.annotations=l.annotations),typeof l._meta<"u"&&(d._meta=l._meta),typeof l.enabled<"u"&&(d.enabled=l.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=d,this.setToolRequestHandlers(),this.sendToolListChanged(),d}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];if(Ff(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!Ff(r[0])&&(i=r.shift());else if(typeof c=="object"&&c!==null){if(Object.values(c).some(u=>typeof u=="object"&&u!==null))throw new Error(`Tool ${e} expected a Zod schema or ToolAnnotations, but received an unrecognized object`);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 mN={type:"object",properties:{}};function xb(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function vb(t){return"_def"in t||"_zod"in t||xb(t)}function Ff(t){return typeof t!="object"||t===null||vb(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(xb)}function yb(t){if(t){if(Ff(t))return Tn(t);if(!vb(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function hN(t){let e=Hr(t);return e?Object.entries(e).map(([r,n])=>{let o=ny(n),s=oy(n);return{name:r,description:o,required:!s}}):[]}function Xr(t){let r=Hr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ea(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function _b(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var ri={completion:{values:[],hasMore:!1}};import Sb from"node:process";var pc=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
|
|
70
|
+
]`;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 Ea(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===T.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:W(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??Ce(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:W(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===T.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=ka(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===T.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===T.ZodBranded&&t.keyType._def.type._def.typeName===T.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=Sa(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function s_(t,e){if(e.mapStrategy==="record")return Ea(t,e);let r=W(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||Ce(e),n=W(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||Ce(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function i_(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 a_(t){return t.target==="openAi"?void 0:{not:Ce({...t,currentPath:[...t.currentPath,"not"]})}}function c_(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Ts={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function l_(t,e){if(e.target==="openApi3")return u_(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Ts&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Ts[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 u_(t,e)}var u_=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>W(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 d_(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:Ts[t.innerType._def.typeName],nullable:!0}:{type:[Ts[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=W(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=W(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function p_(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",Ld(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?ie(r,"minimum",n.value,n.message,e):ie(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),ie(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?ie(r,"maximum",n.value,n.message,e):ie(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),ie(r,"maximum",n.value,n.message,e));break;case"multipleOf":ie(r,"multipleOf",n.value,n.message,e);break}return r}function f_(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=hR(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let d=W(c._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});d!==void 0&&(n.properties[a]=d,u||o.push(a))}o.length&&(n.required=o);let i=mR(t,e);return i!==void 0&&(n.additionalProperties=i),n}function mR(t,e){if(t.catchall._def.typeName!=="ZodNever")return W(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 hR(t){try{return t.isOptional()}catch{return!0}}var m_=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return W(t.innerType._def,e);let r=W(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:Ce(e)},r]}:Ce(e)};var h_=(t,e)=>{if(e.pipeStrategy==="input")return W(t.in._def,e);if(e.pipeStrategy==="output")return W(t.out._def,e);let r=W(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=W(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function g_(t,e){return W(t.type._def,e)}function y_(t,e){let n={type:"array",uniqueItems:!0,items:W(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&ie(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&ie(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function __(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>W(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:W(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>W(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function x_(t){return{not:Ce(t)}}function v_(t){return Ce(t)}var b_=(t,e)=>W(t.innerType._def,e);var S_=(t,e,r)=>{switch(e){case T.ZodString:return ka(t,r);case T.ZodNumber:return p_(t,r);case T.ZodObject:return f_(t,r);case T.ZodBigInt:return Jy(t,r);case T.ZodBoolean:return Yy();case T.ZodDate:return Ud(t,r);case T.ZodUndefined:return x_(r);case T.ZodNull:return c_(r);case T.ZodArray:return Gy(t,r);case T.ZodUnion:case T.ZodDiscriminatedUnion:return l_(t,r);case T.ZodIntersection:return r_(t,r);case T.ZodTuple:return __(t,r);case T.ZodRecord:return Ea(t,r);case T.ZodLiteral:return n_(t,r);case T.ZodEnum:return t_(t);case T.ZodNativeEnum:return i_(t);case T.ZodNullable:return d_(t,r);case T.ZodOptional:return m_(t,r);case T.ZodMap:return s_(t,r);case T.ZodSet:return y_(t,r);case T.ZodLazy:return()=>t.getter()._def;case T.ZodPromise:return g_(t,r);case T.ZodNaN:case T.ZodNever:return a_(r);case T.ZodEffects:return e_(t,r);case T.ZodAny:return Ce(r);case T.ZodUnknown:return v_(r);case T.ZodDefault:return Qy(t,r);case T.ZodBranded:return Sa(t,r);case T.ZodReadonly:return b_(t,r);case T.ZodCatch:return Xy(t,r);case T.ZodPipeline:return h_(t,r);case T.ZodFunction:case T.ZodVoid:case T.ZodSymbol:return;default:return(n=>{})(e)}};function W(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Vy)return a}if(n&&!r){let a=gR(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=S_(t,t.typeName,e),i=typeof s=="function"?W(s(),e):s;if(i&&yR(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var gR=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:ba(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`),Ce(e)):e.$refStrategy==="seen"?Ce(e):void 0}},yR=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var Zd=(t,e)=>{let r=Ky(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,d])=>({...c,[u]:W(d._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??Ce(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=W(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??Ce(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 _R(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function Bd(t,e){return Tt(t)?pd(t,{target:_R(e?.target),io:e?.pipeStrategy??"input"}):Zd(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function qd(t){let r=Ur(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ea(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Vd(t,e){let r=Lr(t,e);if(!r.success)throw r.error;return r.data}var xR=6e4,wa=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(aa,r=>{this._oncancel(r)}),this.setNotificationHandler(ua,r=>{this._onprogress(r)}),this.setRequestHandler(ca,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(la,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new j(Z.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(pa,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,d=this._requestResolvers.get(u);if(d)if(this._requestResolvers.delete(u),a.type==="response")d(c);else{let l=c,f=new j(l.error.code,l.error.message,l.error.data);d(f)}else{let l=a.type==="response"?"Response":"Error";this._onerror(new Error(`${l} 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 j(Z.InvalidParams,`Task not found: ${s}`);if(!Fr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(Fr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Hr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(fa,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 j(Z.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(ha,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new j(Z.InvalidParams,`Task not found: ${r.params.taskId}`);if(Fr(o.status))throw new j(Z.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new j(Z.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof j?o:new j(Z.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),j.fromError(Z.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),ys(s)||Ny(s)?this._onresponse(s):wd(s)?this._onrequest(s,i):Ay(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._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=j.fromError(Z.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[Hr]?.taskId;if(n===void 0){let d={jsonrpc:"2.0",id:e.id,error:{code:Z.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId).catch(l=>this._onerror(new Error(`Failed to enqueue error response: ${l}`))):o?.send(d).catch(l=>this._onerror(new Error(`Failed to send an error response: ${l}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=Cy(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 d=>{if(i.signal.aborted)return;let l={relatedRequestId:e.id};s&&(l.relatedTask={taskId:s}),await this.notification(d,l)},sendRequest:async(d,l,f)=>{if(i.signal.aborted)throw new j(Z.ConnectionClosed,"Request was cancelled");let m={...f,relatedRequestId:e.id};s&&!m.relatedTask&&(m.relatedTask={taskId:s});let p=m.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(d,l,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 d=>{if(i.signal.aborted)return;let l={result:d,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:l,timestamp:Date.now()},o?.sessionId):await o?.send(l)},async d=>{if(i.signal.aborted)return;let l={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(d.code)?d.code:Z.InternalError,message:d.message??"Internal error",...d.data!==void 0&&{data:d.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId):await o?.send(l)}).catch(d=>this._onerror(new Error(`Failed to send response: ${d}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===i&&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),ys(e))n(e);else{let i=new j(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(ys(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),ys(e))o(e);else{let i=j.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 j?i:new j(Z.InternalError,String(i))}}return}let s;try{let i=await this.request(e,po,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new j(Z.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},Fr(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new j(Z.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new j(Z.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof j?i:new j(Z.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,d)=>{let l=x=>{d(x)};if(!this._transport){l(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(x){l(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||{},[Hr]: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(S=>this._onerror(new Error(`Failed to send cancellation: ${S}`)));let y=x instanceof j?x:new j(Z.RequestTimeout,String(x));d(y)};this._responseHandlers.set(f,x=>{if(!n?.signal?.aborted){if(x instanceof Error)return d(x);try{let y=Lr(r,x.result);y.success?u(y.data):d(y.error)}catch(y){d(y)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??xR,g=()=>p(j.fromError(Z.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){let x=y=>{let S=this._responseHandlers.get(f);S?S(y):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(y=>{this._cleanupTimeout(f),d(y)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(x=>{this._cleanupTimeout(f),d(x)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},da,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},ma,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},jy,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||{},[Hr]: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||{},[Hr]: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||{},[Hr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=qd(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=Vd(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=qd(e);this._notificationHandlers.set(n,o=>{let s=Vd(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"&&wd(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new j(Z.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new j(Z.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new j(Z.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new j(Z.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=Ss.parse({method:"notifications/tasks/status",params:a});await this.notification(c),Fr(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 j(Z.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(Fr(a.status))throw new j(Z.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=Ss.parse({method:"notifications/tasks/status",params:c});await this.notification(u),Fr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function k_(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function E_(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];k_(i)&&k_(s)?r[o]={...i,...s}:r[o]=s}return r}var lb=$h(If(),1),db=$h(ub(),1);function lN(){let t=new lb.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,db.default)(t),t}var ac=class{constructor(e){this._ajv=e??lN()}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 cc=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(d=>d.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(d=>d.type==="tool_use");if(i){if(s.some(d=>d.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let d=new Set(c.filter(f=>f.type==="tool_use").map(f=>f.id)),l=new Set(s.filter(f=>f.type==="tool_result").map(f=>f.toolUseId));if(d.size!==l.size||![...d].every(f=>l.has(f)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},ws,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},_o,r)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function pb(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 fb(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 uc=class extends wa{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Es.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 ac,this.setRequestHandler(Rd,n=>this._oninitialize(n)),this.setNotificationHandler($d,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Md,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Es.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new cc(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=E_(this._capabilities,e)}setRequestHandler(e,r){let o=Ur(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(Tt(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 d=Lr(yo,c);if(!d.success){let p=d.error instanceof Error?d.error.message:String(d.error);throw new j(Z.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:l}=d.data,f=await Promise.resolve(r(c,u));if(l.task){let p=Lr(po,f);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new j(Z.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let m=Lr(xa,f);if(!m.success){let p=m.error instanceof Error?m.error.message:String(m.error);throw new j(Z.InvalidParams,`Invalid tools/call result: ${p}`)}return m.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){fb(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&pb(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:Py.includes(r)?r:kd,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"},ia)}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(l=>l.type==="tool_use").map(l=>l.id)),d=new Set(o.filter(l=>l.type==="tool_result").map(l=>l.toolUseId));if(u.size!==d.size||![...u].every(l=>d.has(l)))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},jd,r):this.request({method:"sampling/createMessage",params:e},ws,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},_o,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},_o,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new j(Z.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof j?i:new j(Z.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},zd,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 hb=Symbol.for("mcp.completable");function Uf(t){return!!t&&typeof t=="object"&&hb in t}function gb(t){return t[hb]?.complete}var mb;(function(t){t.Completable="McpCompletable"})(mb||(mb={}));var dN=/^[A-Za-z0-9._-]{1,128}$/;function pN(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"),!dN.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 fN(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 Hf(t){let e=pN(t);return fN(t,e.warnings),e.isValid}var lc=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 dc=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 uc(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new lc(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(Yr(_a)),this.server.assertCanSetRequestHandler(Yr(yo)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(_a,()=>({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=uo(r.inputSchema);return o?Bd(o,{strictUnions:!0,pipeStrategy:"input"}):mN})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=uo(r.outputSchema);o&&(n.outputSchema=Bd(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(yo,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new j(Z.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new j(Z.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new j(Z.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new j(Z.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof j&&n.code===Z.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=uo(e.inputSchema)??e.inputSchema,i=await Xi(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Qi(a);throw new j(Z.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new j(Z.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=uo(e.outputSchema),s=await Xi(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Qi(i);throw new j(Z.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,d=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(f=>setTimeout(f,d));let l=await n.taskStore.getTask(c);if(!l)throw new j(Z.InternalError,`Task ${c} not found during polling`);u=l}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Yr(va)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(va,async e=>{switch(e.params.ref.type){case"ref/prompt":return Zy(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return By(e),this.handleResourceCompletion(e,e.params.ref);default:throw new j(Z.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new j(Z.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new j(Z.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return ri;let s=Ur(n.argsSchema)?.[e.params.argument.name];if(!Uf(s))return ri;let i=gb(s);if(!i)return ri;let a=await i(e.params.argument.value,e.params.context);return _b(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 ri;throw new j(Z.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return ri;let s=await o(e.params.argument.value,e.params.context);return _b(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(Yr(mo)),this.server.assertCanSetRequestHandler(Yr(ho)),this.server.assertCanSetRequestHandler(Yr(ga)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(mo,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(ho,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(ga,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new j(Z.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new j(Z.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(Yr(go)),this.server.assertCanSetRequestHandler(Yr(ya)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(go,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?hN(r.argsSchema):void 0}))})),this.server.setRequestHandler(ya,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new j(Z.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new j(Z.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=uo(n.argsSchema),s=await Xi(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Qi(c);throw new j(Z.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:Tn(o),callback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:a=>{typeof a.name<"u"&&a.name!==e&&(delete this._registeredPrompts[e],a.name&&(this._registeredPrompts[a.name]=i)),typeof a.title<"u"&&(i.title=a.title),typeof a.description<"u"&&(i.description=a.description),typeof a.argsSchema<"u"&&(i.argsSchema=Tn(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof at?c._def?.innerType:c;return Uf(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){Hf(e);let d={title:r,description:n,inputSchema:yb(o),outputSchema:yb(s),annotations:i,execution:a,_meta:c,handler:u,enabled:!0,disable:()=>d.update({enabled:!1}),enable:()=>d.update({enabled:!0}),remove:()=>d.update({name:null}),update:l=>{typeof l.name<"u"&&l.name!==e&&(typeof l.name=="string"&&Hf(l.name),delete this._registeredTools[e],l.name&&(this._registeredTools[l.name]=d)),typeof l.title<"u"&&(d.title=l.title),typeof l.description<"u"&&(d.description=l.description),typeof l.paramsSchema<"u"&&(d.inputSchema=Tn(l.paramsSchema)),typeof l.outputSchema<"u"&&(d.outputSchema=Tn(l.outputSchema)),typeof l.callback<"u"&&(d.handler=l.callback),typeof l.annotations<"u"&&(d.annotations=l.annotations),typeof l._meta<"u"&&(d._meta=l._meta),typeof l.enabled<"u"&&(d.enabled=l.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=d,this.setToolRequestHandlers(),this.sendToolListChanged(),d}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];if(Ff(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!Ff(r[0])&&(i=r.shift());else if(typeof c=="object"&&c!==null){if(Object.values(c).some(u=>typeof u=="object"&&u!==null))throw new Error(`Tool ${e} expected a Zod schema or ToolAnnotations, but received an unrecognized object`);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 mN={type:"object",properties:{}};function xb(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function vb(t){return"_def"in t||"_zod"in t||xb(t)}function Ff(t){return typeof t!="object"||t===null||vb(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(xb)}function yb(t){if(t){if(Ff(t))return Tn(t);if(!vb(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function hN(t){let e=Ur(t);return e?Object.entries(e).map(([r,n])=>{let o=ny(n),s=oy(n);return{name:r,description:o,required:!s}}):[]}function Yr(t){let r=Ur(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ea(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function _b(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var ri={completion:{values:[],hasMore:!1}};import Sb from"node:process";var pc=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
|
|
71
71
|
`);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),gN(r)}clear(){this._buffer=void 0}};function gN(t){return Dy.parse(JSON.parse(t))}function bb(t){return JSON.stringify(t)+`
|
|
72
|
-
`}var fc=class{constructor(e=Sb.stdin,r=Sb.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new pc,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=bb(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as rE}from"node:module";import{existsSync as
|
|
72
|
+
`}var fc=class{constructor(e=Sb.stdin,r=Sb.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new pc,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=bb(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as rE}from"node:module";import{existsSync as Te,unlinkSync as Go,readdirSync as yj,readFileSync as su,writeFileSync as xh,renameSync as _j,rmSync as Qc,mkdirSync as wi,cpSync as xj,statSync as qk,symlinkSync as vj,lstatSync as bj}from"node:fs";import{execSync as Vk,spawnSync as nE}from"node:child_process";import{join as ye,dirname as Lt,resolve as je,sep as Sj,isAbsolute as kj}from"node:path";import{fileURLToPath as Ej}from"node:url";import{homedir as Jo,tmpdir as vh,cpus as wj}from"node:os";import{request as Tj}from"node:https";import{AsyncLocalStorage as Pj}from"node:async_hooks";import{spawn as Cb,execSync as bN,execFileSync as Nb}from"node:child_process";import{mkdtempSync as SN,writeFileSync as Ob,rmSync as Ib,existsSync as Ab}from"node:fs";import{join as yc,resolve as Db}from"node:path";import{tmpdir as kN}from"node:os";import{execFileSync as Eb,execSync as ni}from"node:child_process";import{existsSync as mc}from"node:fs";var yN=/^(bash|sh|zsh|dash|pwsh|powershell|cmd)(\.exe)?$/i,kb=/^bun(\.exe)?$/i;function Bf(t){let e=t.split(/[\\/]/);return e[e.length-1]??t}function _N(t){return yN.test(Bf(t))}var oi=process.platform==="win32";function Ke(t){try{let e=oi?`where ${t}`:`command -v ${t}`;return ni(e,{stdio:"pipe"}),!0}catch{return!1}}function Zf(t){if(oi)try{let r=ni(`where ${t}`,{encoding:"utf-8",stdio:"pipe"}).trim().split(/\r?\n/).map(o=>o.trim()).filter(Boolean);if(r.length===0||r.filter(o=>!/\\Microsoft\\WindowsApps\\/i.test(o)).length===0)return!1}catch{return!1}else if(!Ke(t))return!1;try{return oi?ni(`"${t}" --version`,{stdio:"pipe",timeout:5e3}):Eb(t,["--version"],{stdio:"pipe",timeout:1500}),!0}catch{return!1}}function wb(){if(Ke("bun"))return!0;for(let t of Tb())if(mc(t))return!0;return!1}function xN(){for(let e of Tb())if(mc(e))return e;if(Ke("bun"))return"bun";let t=process.env.HOME??process.env.USERPROFILE??"";return oi?`${t}\\.bun\\bin\\bun.exe`:`${t}/.bun/bin/bun`}function Tb(){let t=process.env.HOME??process.env.USERPROFILE??"";if(oi){let e=process.env.LOCALAPPDATA??"",r=process.env.APPDATA??"";return[...t?[`${t}\\.bun\\bin\\bun.exe`]:[],...e?[`${e}\\bun\\bin\\bun.exe`]:[],...r?[`${r}\\npm\\node_modules\\bun\\bin\\bun.exe`]:[]]}return t?[`${t}/.bun/bin/bun`]:[]}function vN(){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(mc(e))return e;try{let r=ni("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 At(t,e=["--version"]){try{if(process.platform==="win32"){let r=[t,...e].map(n=>/[\s"&|<>^()%!]/.test(n)?JSON.stringify(n):n).join(" ");return ni(r,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}else return Eb(t,e,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function hc(){let e=wb()?xN():null,r=process.env.SHELL,n=r&&mc(r)&&_N(r)?r:null,o=process.platform==="win32";return{javascript:e??process.execPath,typescript:e||(Ke("tsx")?"tsx":Ke("ts-node")?"ts-node":null),python:Zf("python3")?"python3":Zf("python")?"python":Zf("py")?"py":null,shell:n??(o?vN()??(Ke("sh")?"sh":Ke("powershell")?"powershell":"cmd.exe"):Ke("bash")?"bash":"sh"),ruby:Ke("ruby")?"ruby":null,go:Ke("go")?"go":null,rust:Ke("rustc")?"rustc":null,php:Ke("php")?"php":null,perl:Ke("perl")?"perl":null,r:Ke("Rscript")?"Rscript":Ke("r")?"r":null,elixir:Ke("elixir")?"elixir":null,csharp:Ke("dotnet-script")?"dotnet-script":null}}function gc(){return wb()}function Pb(t){let e=[],r=t.javascript?.endsWith("bun")??!1;return e.push(` JavaScript: ${t.javascript} (${At(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${At(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${At(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${At(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${At(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${At(t.go,["version"])})`),t.rust&&e.push(` Rust: ${t.rust} (${At(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${At(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${At(t.perl)})`),t.r&&e.push(` R: ${t.r} (${At(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${At(t.elixir)})`),t.csharp&&e.push(` C#: ${t.csharp} (${At(t.csharp)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
|
|
73
73
|
`)}function Rb(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"),t.csharp&&e.push("csharp"),e}function $b(t,e,r){switch(e){case"javascript":return kb.test(Bf(t.javascript))?[t.javascript,"run",r]:[t.javascript,r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return kb.test(Bf(t.typescript))?[t.typescript,"run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":{if(process.platform==="win32"){let o=t.shell.toLowerCase();if(o.includes("bash")||o.endsWith("/sh")||o.endsWith("\\sh.exe")){let s=r.replace(/'/g,"'\\''");return[t.shell,"-c",`source '${s}'`]}if(o.includes("powershell")||o.includes("pwsh"))return[t.shell,"-File",r]}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];case"csharp":if(!t.csharp)throw new Error("C# not available. Install dotnet-script via `dotnet tool install -g dotnet-script`.");return[t.csharp,r]}}var Nt=process.platform==="win32",EN={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs",csharp:"csx"};function wN(t,e,r){if(e==="win32"&&t==="shell"){let n=r?.toLowerCase()??"";return n.includes("powershell")||n.includes("pwsh")?"script.ps1":"script"}return`script.${EN[t]}`}function TN(t){return{windowsHide:t==="win32"}}function PN(t){return`'${t.replace(/'/g,"'\\''")}'`}function RN(t,e,r){return r==="win32"||!e?t:`export PATH=${PN(e)}
|
|
74
74
|
${t}`}var $N=(()=>{if(Nt)return process.env.TEMP??process.env.TMP??kN();try{let t=Nb(process.platform==="darwin"?"getconf":"mktemp",process.platform==="darwin"?["DARWIN_USER_TEMP_DIR"]:["-u","-d"],{env:{...process.env,TMPDIR:void 0},encoding:"utf-8"}).trim(),e=process.platform==="darwin"?t:Db(t,"..");if(e&&e!==process.cwd())return e}catch{}return"/tmp"})();function qf(t){if(Nt&&t.pid)try{bN(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var si=class{#e;#t;#n;#s=new Set;constructor(e){this.#e=e?.hardCapBytes??100*1024*1024;let r=e?.projectRoot;typeof r=="function"?this.#t=r:typeof r=="string"?this.#t=()=>r:this.#t=()=>process.cwd(),this.#n=e?.runtimes??hc()}get#o(){return this.#t()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#s)try{process.kill(Nt?e:-e,"SIGTERM")}catch{}this.#s.clear()}async execute(e){let{language:r,code:n,timeout:o,background:s=!1}=e,i=SN(yc($N,".ctx-mode-"));try{let a=this.#a(i,n,r),c=$b(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#c(a,i,o);let u=r==="shell"?this.#o:i,d=await this.#i(c,u,i,o,s);if(!d.backgrounded)try{Ib(i,{recursive:!0,force:!0})}catch{}return d}catch(a){try{Ib(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s}=e,i=Db(this.#o,r),a=this.#l(i,n,o);return this.execute({language:n,code:a,timeout:s})}#a(e,r,n){n==="go"&&!r.includes("package ")&&(r=`package main
|
|
75
75
|
|
|
@@ -397,7 +397,7 @@ stdout:
|
|
|
397
397
|
${n}
|
|
398
398
|
|
|
399
399
|
stderr:
|
|
400
|
-
${o}`}}import{execFileSync as AM}from"node:child_process";function NM(){if(process.platform==="win32")return NaN;let t=process.ppid;if(!t||t<=1)return NaN;try{let e=AM("ps",["-o","ppid=","-p",String(t)],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).trim(),r=parseInt(e,10);return Number.isFinite(r)?r:NaN}catch{return NaN}}function DM(t={}){let e=t.getPpid??(()=>process.ppid),r=t.readGrandparentPpid??NM,n=e(),o=r();return()=>{let s=e();return!(s!==n||s===0||s===1||!Number.isNaN(o)&&o>1&&r()===1)}}var MM=DM();function jM(t=process.env){let e=t.CONTEXT_MODE_BRIDGE_DEPTH;if(e===void 0)return 3e4;let r=Number.parseInt(e,10);return!Number.isFinite(r)||r<=0?3e4:1e3}function hk(t){let e=t.checkIntervalMs??jM(),r=t.isParentAlive??MM,n=!1,o=()=>{n||(n=!0,t.onShutdown())},s=setInterval(()=>{r()||o()},e);s.unref();let i=["SIGTERM","SIGINT"];process.platform!=="win32"&&i.push("SIGHUP");for(let c of i)process.on(c,o);let a=()=>{r()||o()};return process.stdin.isTTY||process.stdin.on("end",a),()=>{n=!0,clearInterval(s);for(let c of i)process.removeListener(c,o);process.stdin.removeListener("end",a)}}import{createHash as _i}from"node:crypto";import{execFileSync as zM}from"node:child_process";import{existsSync as jc,realpathSync as LM,renameSync as sh}from"node:fs";import{join as zc}from"node:path";var yi;function xi(t){let e=t.replace(/\\/g,"/");return/^\/+$/.test(e)?"/":/^[A-Za-z]:\/+$/.test(e)?`${e.slice(0,2)}/`:e.replace(/\/+$/,"")}function gk(t){let e=t;try{e=LM.native(t)}catch{}let r=xi(e);return process.platform==="win32"||process.platform==="darwin"?r.toLowerCase():r}function xk(t,e){return zM("git",["-C",t,...e],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).trim()}function UM(t){let e=xk(t,["rev-parse","--show-toplevel"]);return e.length>0?xi(e):null}function HM(t){let e=xk(t,["worktree","list","--porcelain"]).split(/\r?\n/).find(r=>r.startsWith("worktree "))?.replace("worktree ","")?.trim();return e?xi(e):null}function Lc(t=process.cwd()){let e=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(yi&&yi.projectDir===t&&yi.envSuffix===e)return yi.suffix;let r="";if(e!==void 0)r=e?`__${e}`:"";else try{let n=UM(t),o=HM(t);if(n&&o){let s=gk(n),i=gk(o);s!==i&&(r=`__${_i("sha256").update(s).digest("hex").slice(0,8)}`)}}catch{}return yi={projectDir:t,envSuffix:e,suffix:r},r}function
|
|
400
|
+
${o}`}}import{execFileSync as AM}from"node:child_process";function NM(){if(process.platform==="win32")return NaN;let t=process.ppid;if(!t||t<=1)return NaN;try{let e=AM("ps",["-o","ppid=","-p",String(t)],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).trim(),r=parseInt(e,10);return Number.isFinite(r)?r:NaN}catch{return NaN}}function DM(t={}){let e=t.getPpid??(()=>process.ppid),r=t.readGrandparentPpid??NM,n=e(),o=r();return()=>{let s=e();return!(s!==n||s===0||s===1||!Number.isNaN(o)&&o>1&&r()===1)}}var MM=DM();function jM(t=process.env){let e=t.CONTEXT_MODE_BRIDGE_DEPTH;if(e===void 0)return 3e4;let r=Number.parseInt(e,10);return!Number.isFinite(r)||r<=0?3e4:1e3}function hk(t){let e=t.checkIntervalMs??jM(),r=t.isParentAlive??MM,n=!1,o=()=>{n||(n=!0,t.onShutdown())},s=setInterval(()=>{r()||o()},e);s.unref();let i=["SIGTERM","SIGINT"];process.platform!=="win32"&&i.push("SIGHUP");for(let c of i)process.on(c,o);let a=()=>{r()||o()};return process.stdin.isTTY||process.stdin.on("end",a),()=>{n=!0,clearInterval(s);for(let c of i)process.removeListener(c,o);process.stdin.removeListener("end",a)}}import{createHash as _i}from"node:crypto";import{execFileSync as zM}from"node:child_process";import{existsSync as jc,realpathSync as LM,renameSync as sh}from"node:fs";import{join as zc}from"node:path";var yi;function xi(t){let e=t.replace(/\\/g,"/");return/^\/+$/.test(e)?"/":/^[A-Za-z]:\/+$/.test(e)?`${e.slice(0,2)}/`:e.replace(/\/+$/,"")}function gk(t){let e=t;try{e=LM.native(t)}catch{}let r=xi(e);return process.platform==="win32"||process.platform==="darwin"?r.toLowerCase():r}function xk(t,e){return zM("git",["-C",t,...e],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).trim()}function UM(t){let e=xk(t,["rev-parse","--show-toplevel"]);return e.length>0?xi(e):null}function HM(t){let e=xk(t,["worktree","list","--porcelain"]).split(/\r?\n/).find(r=>r.startsWith("worktree "))?.replace("worktree ","")?.trim();return e?xi(e):null}function Lc(t=process.cwd()){let e=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(yi&&yi.projectDir===t&&yi.envSuffix===e)return yi.suffix;let r="";if(e!==void 0)r=e?`__${e}`:"";else try{let n=UM(t),o=HM(t);if(n&&o){let s=gk(n),i=gk(o);s!==i&&(r=`__${_i("sha256").update(s).digest("hex").slice(0,8)}`)}}catch{}return yi={projectDir:t,envSuffix:e,suffix:r},r}function Pr(t){return _i("sha256").update(xi(t)).digest("hex").slice(0,16)}function Rr(t){let e=xi(t),r=process.platform==="darwin"||process.platform==="win32"?e.toLowerCase():e;return _i("sha256").update(r).digest("hex").slice(0,16)}function vk(t){let{projectDir:e,contentDir:r}=t,n=Rr(e),o=zc(r,`${n}.db`);if(jc(o))return o;let s=Pr(e);if(s===n)return o;let i=zc(r,`${s}.db`);if(jc(i))try{sh(i,o);for(let a of["-wal","-shm"])try{sh(i+a,o+a)}catch{}}catch{}return o}function vi(t){return FM({...t,ext:".db"})}function FM(t){let{projectDir:e,sessionsDir:r,ext:n}=t,o=t.suffix??Lc(e),s=Rr(e),i=zc(r,`${s}${o}${n}`);if(jc(i))return i;let a=Pr(e);if(a===s)return i;let c=zc(r,`${a}${o}${n}`);if(jc(c))try{sh(c,i)}catch{}return i}var yk=1e3,_k=5;function Mc(t){let e=Number(t);return!Number.isFinite(e)||e<=0?0:Math.floor(e)}var F={insertEvent:"insertEvent",getEvents:"getEvents",getEventsByType:"getEventsByType",getEventsByPriority:"getEventsByPriority",getEventsByTypeAndPriority:"getEventsByTypeAndPriority",getEventCount:"getEventCount",getLatestAttributedProject:"getLatestAttributedProject",checkDuplicate:"checkDuplicate",evictLowestPriority:"evictLowestPriority",updateMetaLastEvent:"updateMetaLastEvent",ensureSession:"ensureSession",getSessionStats:"getSessionStats",incrementCompactCount:"incrementCompactCount",upsertResume:"upsertResume",getResume:"getResume",markResumeConsumed:"markResumeConsumed",claimLatestUnconsumedResume:"claimLatestUnconsumedResume",deleteEvents:"deleteEvents",deleteMeta:"deleteMeta",deleteResume:"deleteResume",getOldSessions:"getOldSessions",searchEvents:"searchEvents",incrementToolCall:"incrementToolCall",getToolCallTotals:"getToolCallTotals",getToolCallByTool:"getToolCallByTool",getEventBytesSummary:"getEventBytesSummary"},Xt=class extends _c{constructor(e){super(e?.dbPath??jb("session"))}stmt(e){return this.stmts.get(e)}initSchema(){try{let r=this.db.pragma("table_xinfo(session_events)").find(n=>n.name==="data_hash");r&&r.hidden!==0&&this.db.exec("DROP TABLE session_events")}catch{}this.db.exec(`
|
|
401
401
|
CREATE TABLE IF NOT EXISTS session_events (
|
|
402
402
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
403
403
|
session_id TEXT NOT NULL,
|
|
@@ -515,7 +515,7 @@ ${o}`}}import{execFileSync as AM}from"node:child_process";function NM(){if(proce
|
|
|
515
515
|
FROM tool_calls WHERE session_id = ?`),e(F.getToolCallByTool,`SELECT tool, calls, bytes_returned
|
|
516
516
|
FROM tool_calls WHERE session_id = ? ORDER BY calls DESC`),e(F.getEventBytesSummary,`SELECT COALESCE(SUM(bytes_avoided), 0) AS bytes_avoided,
|
|
517
517
|
COALESCE(SUM(bytes_returned), 0) AS bytes_returned
|
|
518
|
-
FROM session_events WHERE session_id = ?`)}insertEvent(e,r,n="PostToolUse",o,s){let i=_i("sha256").update(r.data).digest("hex").slice(0,16).toUpperCase(),a=String(o?.projectDir??r.project_dir??this._getSessionProjectDir(e)).trim(),c=String(o?.source??r.attribution_source??"unknown"),u=Number(o?.confidence??r.attribution_confidence??0),d=Number.isFinite(u)?Math.max(0,Math.min(1,u)):0,l=Mc(s?.bytesAvoided),f=Mc(s?.bytesReturned),m=this.db.transaction(()=>{if(this.stmt(F.checkDuplicate).get(e,_k,r.type,i))return;this.stmt(F.getEventCount).get(e).cnt>=yk&&this.stmt(F.evictLowestPriority).run(e),this.stmt(F.insertEvent).run(e,r.type,r.category,r.priority,r.data,a,c,d,l,f,n,i),this.stmt(F.updateMetaLastEvent).run(e)});this.withRetry(()=>m())}bulkInsertEvents(e,r,n="PostToolUse",o,s){if(!r||r.length===0)return;if(r.length===1){this.insertEvent(e,r[0],n,o?.[0],s?.[0]);return}let i=r.map((c,u)=>{let d=_i("sha256").update(c.data).digest("hex").slice(0,16).toUpperCase(),l=o?.[u],f=String(l?.projectDir??c.project_dir??this._getSessionProjectDir(e)??"").trim(),m=String(l?.source??c.attribution_source??"unknown"),p=Number(l?.confidence??c.attribution_confidence??0),h=Number.isFinite(p)?Math.max(0,Math.min(1,p)):0,g=s?.[u],_=Mc(g?.bytesAvoided),x=Mc(g?.bytesReturned);return{event:c,dataHash:d,projectDir:f,attributionSource:m,attributionConfidence:h,bytesAvoided:_,bytesReturned:x}}),a=this.db.transaction(()=>{let c=this.stmt(F.getEventCount).get(e).cnt;for(let u of i)this.stmt(F.checkDuplicate).get(e,_k,u.event.type,u.dataHash)||(c>=yk?this.stmt(F.evictLowestPriority).run(e):c++,this.stmt(F.insertEvent).run(e,u.event.type,u.event.category,u.event.priority,u.event.data,u.projectDir,u.attributionSource,u.attributionConfidence,u.bytesAvoided,u.bytesReturned,n,u.dataHash));this.stmt(F.updateMetaLastEvent).run(e)});this.withRetry(()=>a())}getEvents(e,r){let n=r?.limit??1e3,o=r?.type,s=r?.minPriority;return o&&s!==void 0?this.stmt(F.getEventsByTypeAndPriority).all(e,o,s,n):o?this.stmt(F.getEventsByType).all(e,o,n):s!==void 0?this.stmt(F.getEventsByPriority).all(e,s,n):this.stmt(F.getEvents).all(e,n)}getEventCount(e){return this.stmt(F.getEventCount).get(e).cnt}getEventBytesSummary(e){let r=this.stmt(F.getEventBytesSummary).get(e);return{bytesAvoided:Number(r?.bytes_avoided??0),bytesReturned:Number(r?.bytes_returned??0)}}getLatestAttributedProjectDir(e){return this.stmt(F.getLatestAttributedProject).get(e)?.project_dir||null}_getSessionProjectDir(e){try{return this.db.prepare("SELECT project_dir FROM session_meta WHERE session_id = ?").get(e)?.project_dir||""}catch{return""}}searchEvents(e,r,n,o){try{let s=e.replace(/[%_]/g,a=>"\\"+a),i=o??null;return this.stmt(F.searchEvents).all(n,s,s,i,i,r)}catch{return[]}}ensureSession(e,r){this.stmt(F.ensureSession).run(e,r)}getSessionStats(e){return this.stmt(F.getSessionStats).get(e)??null}incrementCompactCount(e){this.stmt(F.incrementCompactCount).run(e)}upsertResume(e,r,n){this.stmt(F.upsertResume).run(e,r,n??0)}getResume(e){return this.stmt(F.getResume).get(e)??null}markResumeConsumed(e){this.stmt(F.markResumeConsumed).run(e)}claimLatestUnconsumedResume(e){let r=this.stmt(F.claimLatestUnconsumedResume).get(e);return r?{sessionId:r.session_id,snapshot:r.snapshot}:null}getLatestSessionId(){try{return this.db.prepare("SELECT session_id FROM session_meta ORDER BY started_at DESC LIMIT 1").get()?.session_id??null}catch{return null}}incrementToolCall(e,r,n=0){let o=Number.isFinite(n)&&n>0?Math.round(n):0;try{this.stmt(F.incrementToolCall).run(e,r,o)}catch{}}getToolCallStats(e){try{let r=this.stmt(F.getToolCallTotals).get(e),n=this.stmt(F.getToolCallByTool).all(e),o={};for(let s of n)o[s.tool]={calls:s.calls,bytesReturned:s.bytes_returned};return{totalCalls:r?.calls??0,totalBytesReturned:r?.bytes_returned??0,byTool:o}}catch{return{totalCalls:0,totalBytesReturned:0,byTool:{}}}}deleteSession(e){this.db.transaction(()=>{this.stmt(F.deleteEvents).run(e),this.stmt(F.deleteResume).run(e),this.stmt(F.deleteMeta).run(e)})()}cleanupOldSessions(e=7){let r=`-${e}`,n=this.stmt(F.getOldSessions).all(r);for(let{session_id:o}of n)this.deleteSession(o);return n.length}};import{existsSync as ih,unlinkSync as ZM}from"node:fs";import{join as bi}from"node:path";var BM=["","-wal","-shm"];function ah(t,e){try{return ZM(t),e.push(t),!0}catch{return!1}}function Uc(t,e){let r=!1;for(let n of BM)ah(`${t}${n}`,e)&&n===""&&(r=!0);return r}function bk(t){let{projectDir:e,sessionsDir:r,storePath:n,contentDir:o,legacyContentDir:s,contentHash:i,sessionId:a,scope:c}=t,u=[],d=[],l=c??(a?"session":"project");if(l==="session"&&!a)throw new TypeError("purgeSession: scope:'session' requires sessionId. Pass scope:'project' for the legacy whole-project wipe.");if(l==="session"&&a){let y=Lc(e),S
|
|
518
|
+
FROM session_events WHERE session_id = ?`)}insertEvent(e,r,n="PostToolUse",o,s){let i=_i("sha256").update(r.data).digest("hex").slice(0,16).toUpperCase(),a=String(o?.projectDir??r.project_dir??this._getSessionProjectDir(e)).trim(),c=String(o?.source??r.attribution_source??"unknown"),u=Number(o?.confidence??r.attribution_confidence??0),d=Number.isFinite(u)?Math.max(0,Math.min(1,u)):0,l=Mc(s?.bytesAvoided),f=Mc(s?.bytesReturned),m=this.db.transaction(()=>{if(this.stmt(F.checkDuplicate).get(e,_k,r.type,i))return;this.stmt(F.getEventCount).get(e).cnt>=yk&&this.stmt(F.evictLowestPriority).run(e),this.stmt(F.insertEvent).run(e,r.type,r.category,r.priority,r.data,a,c,d,l,f,n,i),this.stmt(F.updateMetaLastEvent).run(e)});this.withRetry(()=>m())}bulkInsertEvents(e,r,n="PostToolUse",o,s){if(!r||r.length===0)return;if(r.length===1){this.insertEvent(e,r[0],n,o?.[0],s?.[0]);return}let i=r.map((c,u)=>{let d=_i("sha256").update(c.data).digest("hex").slice(0,16).toUpperCase(),l=o?.[u],f=String(l?.projectDir??c.project_dir??this._getSessionProjectDir(e)??"").trim(),m=String(l?.source??c.attribution_source??"unknown"),p=Number(l?.confidence??c.attribution_confidence??0),h=Number.isFinite(p)?Math.max(0,Math.min(1,p)):0,g=s?.[u],_=Mc(g?.bytesAvoided),x=Mc(g?.bytesReturned);return{event:c,dataHash:d,projectDir:f,attributionSource:m,attributionConfidence:h,bytesAvoided:_,bytesReturned:x}}),a=this.db.transaction(()=>{let c=this.stmt(F.getEventCount).get(e).cnt;for(let u of i)this.stmt(F.checkDuplicate).get(e,_k,u.event.type,u.dataHash)||(c>=yk?this.stmt(F.evictLowestPriority).run(e):c++,this.stmt(F.insertEvent).run(e,u.event.type,u.event.category,u.event.priority,u.event.data,u.projectDir,u.attributionSource,u.attributionConfidence,u.bytesAvoided,u.bytesReturned,n,u.dataHash));this.stmt(F.updateMetaLastEvent).run(e)});this.withRetry(()=>a())}getEvents(e,r){let n=r?.limit??1e3,o=r?.type,s=r?.minPriority;return o&&s!==void 0?this.stmt(F.getEventsByTypeAndPriority).all(e,o,s,n):o?this.stmt(F.getEventsByType).all(e,o,n):s!==void 0?this.stmt(F.getEventsByPriority).all(e,s,n):this.stmt(F.getEvents).all(e,n)}getEventCount(e){return this.stmt(F.getEventCount).get(e).cnt}getEventBytesSummary(e){let r=this.stmt(F.getEventBytesSummary).get(e);return{bytesAvoided:Number(r?.bytes_avoided??0),bytesReturned:Number(r?.bytes_returned??0)}}getLatestAttributedProjectDir(e){return this.stmt(F.getLatestAttributedProject).get(e)?.project_dir||null}_getSessionProjectDir(e){try{return this.db.prepare("SELECT project_dir FROM session_meta WHERE session_id = ?").get(e)?.project_dir||""}catch{return""}}searchEvents(e,r,n,o){try{let s=e.replace(/[%_]/g,a=>"\\"+a),i=o??null;return this.stmt(F.searchEvents).all(n,s,s,i,i,r)}catch{return[]}}ensureSession(e,r){this.stmt(F.ensureSession).run(e,r)}getSessionStats(e){return this.stmt(F.getSessionStats).get(e)??null}incrementCompactCount(e){this.stmt(F.incrementCompactCount).run(e)}upsertResume(e,r,n){this.stmt(F.upsertResume).run(e,r,n??0)}getResume(e){return this.stmt(F.getResume).get(e)??null}markResumeConsumed(e){this.stmt(F.markResumeConsumed).run(e)}claimLatestUnconsumedResume(e){let r=this.stmt(F.claimLatestUnconsumedResume).get(e);return r?{sessionId:r.session_id,snapshot:r.snapshot}:null}getLatestSessionId(){try{return this.db.prepare("SELECT session_id FROM session_meta ORDER BY started_at DESC LIMIT 1").get()?.session_id??null}catch{return null}}incrementToolCall(e,r,n=0){let o=Number.isFinite(n)&&n>0?Math.round(n):0;try{this.stmt(F.incrementToolCall).run(e,r,o)}catch{}}getToolCallStats(e){try{let r=this.stmt(F.getToolCallTotals).get(e),n=this.stmt(F.getToolCallByTool).all(e),o={};for(let s of n)o[s.tool]={calls:s.calls,bytesReturned:s.bytes_returned};return{totalCalls:r?.calls??0,totalBytesReturned:r?.bytes_returned??0,byTool:o}}catch{return{totalCalls:0,totalBytesReturned:0,byTool:{}}}}deleteSession(e){this.db.transaction(()=>{this.stmt(F.deleteEvents).run(e),this.stmt(F.deleteResume).run(e),this.stmt(F.deleteMeta).run(e)})()}cleanupOldSessions(e=7){let r=`-${e}`,n=this.stmt(F.getOldSessions).all(r);for(let{session_id:o}of n)this.deleteSession(o);return n.length}};import{existsSync as ih,unlinkSync as ZM}from"node:fs";import{join as bi}from"node:path";var BM=["","-wal","-shm"];function ah(t,e){try{return ZM(t),e.push(t),!0}catch{return!1}}function Uc(t,e){let r=!1;for(let n of BM)ah(`${t}${n}`,e)&&n===""&&(r=!0);return r}function bk(t){let{projectDir:e,sessionsDir:r,storePath:n,contentDir:o,legacyContentDir:s,contentHash:i,sessionId:a,scope:c}=t,u=[],d=[],l=c??(a?"session":"project");if(l==="session"&&!a)throw new TypeError("purgeSession: scope:'session' requires sessionId. Pass scope:'project' for the legacy whole-project wipe.");if(l==="session"&&a){let y=Lc(e),S=Rr(e),E=Pr(e),O=S===E?[S]:[S,E],L=!1;for(let w of O){let P=bi(r,`${w}${y}.db`);if(!ih(P))continue;let N=null;try{N=new Xt({dbPath:P});let Q=N.getEvents(a).length;N.deleteSession(a),Q>0&&(L=!0)}catch{}finally{try{N?.close()}catch{}}}L&&u.push(`session rows for ${a}`);let A=[];if(n&&ih(n)&&A.push(n),o){let w=Rr(e),P=Pr(e),N=w===P?[w]:[w,P];for(let Q of N){let nr=bi(o,`${Q}.db`);ih(nr)&&!A.includes(nr)&&A.push(nr)}}let z=!1;for(let w of A)try{let P=tt(),N=new P(w,{timeout:3e4});try{let Q=N.prepare("SELECT COUNT(*) AS c FROM chunks WHERE session_id = ?").get(a).c;N.prepare("DELETE FROM chunks WHERE session_id = ?").run(a),N.prepare("DELETE FROM chunks_trigram WHERE session_id = ?").run(a),Q>0&&(z=!0)}finally{try{N.close()}catch{}}}catch{}return z&&u.push(`FTS5 chunks for ${a}`),{deleted:u,wipedPaths:d}}let f=!1;if(n&&Uc(n,d)&&(f=!0),o){let y=Rr(e),S=Pr(e),E=y===S?[y]:[y,S];for(let O of E){let L=bi(o,`${O}.db`);Uc(L,d)&&(f=!0)}}if(f&&u.push("knowledge base (FTS5)"),s){if(!i)throw new TypeError("purgeSession: contentHash is required when legacyContentDir is provided");let y=bi(s,`${i}.db`);Uc(y,d)}let m=Lc(e),p=Rr(e),h=Pr(e),g=p===h?[p]:[p,h],_=!1,x=!1;for(let y of g){let S=bi(r,`${y}${m}`);Uc(`${S}.db`,d)&&(_=!0),ah(`${S}-events.md`,d)&&(x=!0),ah(`${S}.cleanup`,d)}return _&&u.push("session events DB"),x&&u.push("session events markdown"),{deleted:u,wipedPaths:d}}import{existsSync as qM}from"node:fs";function ch(t,e){try{if(!qM(t))return;let r=new Xt({dbPath:t});try{let n=r.getLatestSessionId();if(!n)return;e(r,n)}finally{try{r.close()}catch{}}}catch{}}function Sk(t){ch(t.sessionDbPath,(e,r)=>{e.insertEvent(r,{type:"sandbox-execute",category:"sandbox",priority:1,data:t.toolName,project_dir:"",attribution_source:"server",attribution_confidence:1},"ctx-server",void 0,{bytesReturned:t.bytesReturned})})}function kk(t){ch(t.sessionDbPath,(e,r)=>{e.insertEvent(r,{type:"index-write",category:"sandbox",priority:1,data:t.source,project_dir:"",attribution_source:"server",attribution_confidence:1},"ctx-server",void 0,{bytesAvoided:t.bytesAvoided})})}function Ek(t){ch(t.sessionDbPath,(e,r)=>{e.insertEvent(r,{type:"cache-hit",category:"cache",priority:1,data:t.source,project_dir:"",attribution_source:"server",attribution_confidence:1},"ctx-server",void 0,{bytesAvoided:t.bytesAvoided})})}import{existsSync as wk}from"node:fs";function Tk(t,e,r){try{if(!wk(t))return;let n=new Xt({dbPath:t});try{let o=n.getLatestSessionId();if(!o)return;n.incrementToolCall(o,e,r)}finally{n.close()}}catch{}}function Pk(t){try{if(!wk(t))return null;let e=new Xt({dbPath:t});try{let r=e.getLatestSessionId();if(!r)return null;let n=e.getToolCallStats(r),o={},s={};for(let[a,c]of Object.entries(n.byTool))o[a]=c.calls,s[a]=c.bytesReturned;let i=Date.now();try{let a=e.getSessionStats(r);if(a?.started_at){let c=Date.parse(`${a.started_at}Z`);Number.isFinite(c)&&c>0&&(i=c)}}catch{}return Object.keys(o).length===0&&Object.keys(s).length===0?{calls:o,bytesReturned:s,sessionStart:i}:{calls:o,bytesReturned:s,sessionStart:i}}finally{e.close()}}catch{return null}}Un();import{existsSync as uh,readFileSync as VM,readdirSync as WM,statSync as KM}from"node:fs";import{join as Si,isAbsolute as GM}from"node:path";var Rk=process.env.DEBUG?.includes("context-mode");function Ck(t,e=5,r,n,o){let s=[],i=o?.getInstructionFiles()??["CLAUDE.md"],a=o?.getConfigDir(),u=(a?$k(r,a):null)??n??vt(),d=o?.getMemoryDir(),l=d?$k(r,d):Si(u,"memory"),f=[];if(r)for(let m of i){let p=Si(r,m);uh(p)&&f.push({path:p,label:`project/${m}`})}if(u&&u!==r)for(let m of i){let p=Si(u,m);uh(p)&&f.push({path:p,label:`user/${m}`})}if(l&&uh(l))try{let m=WM(l).filter(p=>p.endsWith(".md"));for(let p of m)f.push({path:Si(l,p),label:`memory/${p}`})}catch(m){Rk&&process.stderr.write(`[ctx] auto-memory dir scan failed: ${m}
|
|
519
519
|
`)}for(let m of f){if(s.length>=e)break;try{let p;try{if(p=KM(m.path),p.size>1e6)continue}catch{continue}let h=VM(m.path,"utf-8"),g=h.toLowerCase();for(let _ of t){if(s.length>=e)break;let y=_.toLowerCase().split(/\s+/).filter(E=>E.length>=3);if(y.some(E=>{try{return new RegExp(`\\b${E.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\b`,"i").test(h)}catch{return g.includes(E)}})){let E=y.reduce((P,N)=>{let Q=g.indexOf(N);return Q>=0&&(P<0||Q<P)?Q:P},-1),O=Math.max(0,E-200),L=Math.min(h.length,E+500),A=h.lastIndexOf(`
|
|
520
520
|
|
|
521
521
|
`,O),z=h.indexOf(`
|
|
@@ -524,10 +524,10 @@ ${o}`}}import{execFileSync as AM}from"node:child_process";function NM(){if(proce
|
|
|
524
524
|
`)}}return s.slice(0,e)}function $k(t,e){return e?GM(e)||!t?e:Si(t,e):t??""}var lh=process.env.DEBUG?.includes("context-mode");function Ok(t){let{query:e,limit:r,store:n,sort:o="relevance",source:s,contentType:i,sessionDB:a,projectDir:c,configDir:u,adapter:d}=t,l=[],f=new Date().toISOString();try{let m=n.searchWithFallback(e,r,s,i);l.push(...m.map(p=>({title:p.title,content:p.content,source:p.source,origin:"current-session",timestamp:p.timestamp||f,rank:p.rank,matchLayer:p.matchLayer,highlighted:p.highlighted,contentType:p.contentType})))}catch(m){lh&&process.stderr.write(`[ctx] ContentStore search failed: ${m}
|
|
525
525
|
`)}if(o==="timeline"){try{if(a){let m=a.searchEvents(e,r,c||"",s);l.push(...m.map(p=>({title:`[${p.category}] ${p.type}`,content:p.data,source:"prior-session",origin:"prior-session",timestamp:p.created_at})))}}catch(m){lh&&process.stderr.write(`[ctx] SessionDB search failed: ${m}
|
|
526
526
|
`)}try{let m=Ck([e],r,c,u,d);l.push(...m)}catch(m){lh&&process.stderr.write(`[ctx] auto-memory search failed: ${m}
|
|
527
|
-
`)}}for(let m of l)m.timestamp&&!m.timestamp.includes("T")&&(m.timestamp=m.timestamp.replace(" ","T")+"Z");return o==="timeline"&&l.sort((m,p)=>(m.timestamp||"").localeCompare(p.timestamp||"")),l.slice(0,r)}
|
|
528
|
-
`).slice(0,10))if(a.trim())try{let c=JSON.parse(a);if(typeof c.cwd=="string"&&c.cwd.length>0)return c.cwd}catch{}}finally{ht.closeSync(n)}}catch{}}function Ak(t){let{env:e,cwd:r,pwd:n,transcriptsRoot:o,transcriptMaxAgeMs:s,nowMs:i,strictPlatform:a}=t,c=a?[...Jm(a),...XM]:QM;for(let u of c){let d=e[u];if(d&&!dh(d))return d}if(o){let u=ej({projectsRoot:o,maxAgeMs:s,nowMs:i});if(u&&!dh(u))return u}return n&&!dh(n)?n:r}import{execFileSync as tj}from"node:child_process";import{existsSync as Cr,readdirSync as Vo,statSync as rj}from"node:fs";import{homedir as qc}from"node:os";import{join as St,sep as nj}from"node:path";Un();function Hk(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}var Fc={file:"Files tracked",cwd:"Working directory",rule:"Project rules (CLAUDE.md)",prompt:"Your requests saved",intent:"Session goal",role:"Behavior rules",constraint:"Constraints you set",mcp:"MCP tools called",skill:"Skills used",subagent:"Delegated work",decision:"Your decisions","agent-finding":"Agent insights kept","rejected-approach":"Approaches you rejected","external-ref":"External docs indexed",data:"Data references",git:"Git operations",env:"Environment setup",task:"Tasks in progress",error:"Errors caught",compact:"Compactions weathered",resume:"Sessions resumed cleanly",snapshot:"Snapshots restored",cache:"Cache hits saved",latency:"Slow tools recorded","user-prompt":"Your messages remembered",plan:"Plans drafted","blocked-on":"Blockers logged"},oj={file:"Restored after compact \u2014 no need to re-read",rule:"Your project instructions survive context resets",prompt:"Continues exactly where you left off",decision:"Applied automatically \u2014 won\u2019t ask again",task:"Picks up from where it stopped",error:"Tracked and monitored across compacts",git:"Branch, commit, and repo state preserved",env:"Runtime config carried forward",mcp:"Tool usage patterns remembered",subagent:"Delegation history preserved",skill:"Skill invocations tracked"},Wo=class{db;constructor(e){this.db=e}static contextSavingsTotal(e,r){let n=e-r,o=e>0?Math.round(n/e*1e3)/10:0;return{rawBytes:e,contextBytes:r,savedBytes:n,savedPercent:o}}static thinkInCodeComparison(e,r){let n=r>0?Math.round(e/r*10)/10:0;return{fileBytes:e,outputBytes:r,ratio:n}}static toolSavings(e){return e.map(r=>({...r,savedBytes:r.rawBytes-r.contextBytes}))}static sandboxIO(e,r){return{inputBytes:e,outputBytes:r}}getMcpToolUsage(){let e;try{e=this.db.prepare("SELECT data FROM session_events WHERE category = 'mcp_tool_call'").all()}catch{return[]}let r=new Map;for(let o of e){let s;try{s=JSON.parse(o.data)}catch{continue}let i=typeof s.tool_name=="string"?s.tool_name:null;if(!i)continue;let a=r.get(i)??{calls:0,concurrencies:[]};if(a.calls+=1,s.truncated!==!0&&s.params&&typeof s.params=="object"){let c=s.params.concurrency;typeof c=="number"&&Number.isFinite(c)&&c>0&&a.concurrencies.push(c)}r.set(i,a)}let n=[];for(let[o,s]of r){let i=null,a=null;if(s.concurrencies.length>0){let c=[...s.concurrencies].sort((d,l)=>d-l),u=Math.floor(c.length/2);i=c.length%2===0?(c[u-1]+c[u])/2:c[u],a=c[c.length-1]}n.push({tool_name:o,calls:s.calls,median_concurrency:i,max_concurrency:a})}return n.sort((o,s)=>s.calls-o.calls||o.tool_name.localeCompare(s.tool_name)),n}queryAll(e){let n=this.db.prepare("SELECT session_id FROM session_meta ORDER BY started_at DESC LIMIT 1").get()?.session_id??"",o=Object.values(e.bytesReturned).reduce((P,N)=>P+N,0),s=Object.values(e.calls).reduce((P,N)=>P+N,0),i=e.bytesIndexed+e.bytesSandboxed,a=i+o,c=a/Math.max(o,1),u=a>0?Math.round((1-o/a)*100):0,d=new Set([...Object.keys(e.calls),...Object.keys(e.bytesReturned)]),l=Array.from(d).sort().map(P=>({tool:P,calls:e.calls[P]||0,context_kb:Math.round((e.bytesReturned[P]||0)/1024*10)/10,tokens:Math.round((e.bytesReturned[P]||0)/4)})),m=((Date.now()-e.sessionStart)/6e4).toFixed(1),p;if(e.cacheHits>0||e.cacheBytesSaved>0){let P=a+e.cacheBytesSaved,N=P/Math.max(o,1),Q=Math.max(0,24-Math.floor((Date.now()-e.sessionStart)/(3600*1e3)));p={hits:e.cacheHits,bytes_saved:e.cacheBytesSaved,ttl_hours_left:Q,total_with_cache:P,total_savings_ratio:N}}let h=this.db.prepare("SELECT COUNT(*) as cnt FROM session_events WHERE session_id = ?").get(n).cnt,g=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events WHERE session_id = ? GROUP BY category ORDER BY cnt DESC").all(n),x=this.db.prepare("SELECT compact_count FROM session_meta WHERE session_id = ?").get(n)?.compact_count??0,y=this.db.prepare("SELECT event_count, consumed FROM session_resume WHERE session_id = ? ORDER BY created_at DESC LIMIT 1").get(n),S=y?!y.consumed:!1,E=this.db.prepare("SELECT category, type, data FROM session_events WHERE session_id = ? ORDER BY id DESC").all(n),O=new Map;for(let P of E){O.has(P.category)||O.set(P.category,new Set);let N=O.get(P.category);if(N.size<5){let Q=P.data;P.category==="file"?Q=P.data.split("/").pop()||P.data:(P.category==="prompt"||P.category==="user-prompt")&&(Q=Q.length>50?Q.slice(0,47)+"...":Q),Q.length>40&&(Q=Q.slice(0,37)+"..."),N.add(Q)}}let L=g.map(P=>({category:P.category,count:P.cnt,label:Fc[P.category]||P.category,preview:O.get(P.category)?Array.from(O.get(P.category)).join(", "):"",why:oj[P.category]||"Survives context resets"})),A=this.db.prepare("SELECT COUNT(*) as cnt, COUNT(DISTINCT session_id) as sessions FROM session_events").get(),w=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all().filter(P=>P.cnt>0).map(P=>({category:P.category,count:P.cnt,label:Fc[P.category]||P.category}));return{savings:{processed_kb:Math.round(a/1024*10)/10,entered_kb:Math.round(o/1024*10)/10,saved_kb:Math.round(i/1024*10)/10,pct:u,savings_ratio:Math.round(c*10)/10,by_tool:l,total_calls:s,total_bytes_returned:o,kept_out:i,total_processed:a},cache:p,session:{id:n,uptime_min:m},continuity:{total_events:h,by_category:L,compact_count:x,resume_ready:S},projectMemory:{total_events:A.cnt,session_count:A.sessions,by_category:w}}}};function sj(t){let e=t?.home??qc();return[["claude-code",[".claude"]],["gemini-cli",[".gemini"]],["antigravity",[".gemini"]],["openclaw",[".openclaw"]],["codex",[".codex"]],["cursor",[".cursor"]],["vscode-copilot",[".vscode"]],["kiro",[".kiro"]],["pi",[".pi"]],["omp",[".omp"]],["qwen-code",[".qwen"]],["kilo",[".config","kilo"]],["opencode",[".config","opencode"]],["zed",[".config","zed"]],["jetbrains-copilot",[".config","JetBrains"]]].map(([n,o])=>{let s=St(e,...o,"context-mode");return{name:n,sessionsDir:St(s,"sessions"),contentDir:St(s,"content")}})}function ij(t){let r=t.replace(/\.md$/i,"").match(/^([a-z]+)/i);return r?r[1].toLowerCase():"other"}function ki(t){let e=vt(),r=t?.sessionsDir??St(e,"context-mode","sessions"),n=t?.memoryRoot??St(e,"projects"),o=0,s=0,i=0,a=Number.POSITIVE_INFINITY,c=new Set,u={};if(Cr(r)){let m=[];try{m=Vo(r).filter(p=>p.endsWith(".db"))}catch{}if(m.length>0){let p=null;try{p=t?.loadDatabase?t.loadDatabase():tt()}catch{}if(p)for(let h of m){let g=St(r,h);try{let _=new p(g,{readonly:!0});try{let x=_.prepare("SELECT COUNT(*) AS cnt FROM session_events").get(),y=_.prepare("SELECT COUNT(*) AS cnt FROM session_meta").get();o+=x?.cnt??0,s+=y?.cnt??0;try{let S=_.prepare("SELECT category, COUNT(*) AS cnt FROM session_events GROUP BY category").all();for(let E of S)E.category&&(u[E.category]=(u[E.category]??0)+(E.cnt??0))}catch{}try{let S=_.prepare("SELECT COALESCE(SUM(length(snapshot)), 0) AS bytes FROM session_resume WHERE consumed = 1").get();S?.bytes&&(i+=S.bytes)}catch{}try{let S=_.prepare("SELECT MIN(created_at) AS t FROM session_events").get();if(S?.t){let E=S.t.endsWith("Z")?S.t:S.t+"Z",O=Date.parse(E);Number.isFinite(O)&&O<a&&(a=O)}}catch{}try{let S=_.prepare("SELECT DISTINCT project_dir AS p FROM session_events WHERE project_dir != ''").all();for(let E of S)E.p&&c.add(E.p)}catch{}}finally{_.close()}}catch{}}}}let d=0,l=0,f={};if(Cr(n)){let m=[];try{m=Vo(n).filter(p=>{try{return rj(St(n,p)).isDirectory()}catch{return!1}})}catch{}for(let p of m){let h=St(n,p,"memory");if(!Cr(h))continue;let g=[];try{g=Vo(h).filter(_=>_.endsWith(".md"))}catch{continue}if(g.length!==0){l++,d+=g.length;for(let _ of g){let x=ij(_);f[x]=(f[x]??0)+1}}}}return{totalEvents:o,totalSessions:s,autoMemoryCount:d,autoMemoryProjects:l,autoMemoryByPrefix:f,categoryCounts:u,rescueBytes:i,firstEventMs:Number.isFinite(a)?a:0,distinctProjects:c.size}}function Fk(t){let e=t.sessionsDir??St(qc(),".claude","context-mode","sessions"),r=t.sessionId,n={sessionId:r,events:0,dbCount:0,daysAlive:0,snapshotBytes:0,snapshotsConsumed:0,byCategory:[]};if(!r||!Cr(e))return n;let o=[];try{o=Vo(e).filter(y=>!(!y.endsWith(".db")||t.worktreeHash&&!y.startsWith(t.worktreeHash)))}catch{return n}if(o.length===0)return n;let s=null;try{s=t.loadDatabase?t.loadDatabase():tt()}catch{return n}if(!s)return n;let i={},a=0,c=0,u=0,d=0,l=Number.POSITIVE_INFINITY,f=0,m=0,p=new Map,h=y=>Math.floor(y/864e5)*864e5;for(let y of o){let S=St(e,y),E=!1;try{let O=new s(S,{readonly:!0});try{let L=O.prepare("SELECT category, COUNT(*) AS cnt FROM session_events WHERE session_id = ? GROUP BY category").all(r);for(let z of L)z.category&&(i[z.category]=(i[z.category]??0)+(z.cnt??0),a+=z.cnt??0,E=!0);let A=O.prepare("SELECT MIN(created_at) AS mn, MAX(created_at) AS mx FROM session_events WHERE session_id = ?").get(r);if(A?.mn){let z=Date.parse(A.mn+(A.mn.endsWith("Z")?"":"Z"));Number.isFinite(z)&&z<l&&(l=z)}if(A?.mx){let z=Date.parse(A.mx+(A.mx.endsWith("Z")?"":"Z"));Number.isFinite(z)&&z>f&&(f=z)}try{let z=O.prepare("SELECT strftime('%s', created_at) AS sec, COUNT(*) AS cnt FROM session_events WHERE session_id = ? GROUP BY date(created_at)").all(r);for(let w of z){if(!w.sec)continue;let P=parseInt(w.sec,10)*1e3;if(!Number.isFinite(P))continue;let N=h(P),Q=p.get(N)??{count:0,rescueBytes:0};Q.count+=w.cnt??0,p.set(N,Q)}}catch{}try{let z=O.prepare("SELECT COALESCE(SUM(length(snapshot)), 0) AS bytes, COUNT(*) AS n, MAX(strftime('%s', created_at)) AS lastSec FROM session_resume WHERE session_id = ? AND consumed = 1").get(r);if(z?.bytes&&(u+=z.bytes),z?.n&&(d+=z.n),z?.lastSec){let w=parseInt(z.lastSec,10)*1e3;if(Number.isFinite(w)&&w>m&&(m=w),Number.isFinite(w)&&(z?.bytes??0)>0){let P=h(w),N=p.get(P)??{count:0,rescueBytes:0};N.rescueBytes=Math.max(N.rescueBytes,z.bytes),p.set(P,N)}}}catch{}}finally{O.close()}}catch{}E&&c++}let g=l<f?(f-l)/864e5:0,_=Object.entries(i).filter(([,y])=>y>0).map(([y,S])=>({category:y,count:S,label:Fc[y]||y})).sort((y,S)=>S.count-y.count),x=[...p.entries()].sort((y,S)=>y[0]-S[0]).map(([y,S])=>({ms:y,count:S.count,...S.rescueBytes>0?{rescueBytes:S.rescueBytes}:{}}));return{sessionId:r,events:a,dbCount:c,daysAlive:g,snapshotBytes:u,snapshotsConsumed:d,byCategory:_,firstEventMs:Number.isFinite(l)?l:0,lastEventMs:f>0?f:0,lastRescueMs:m>0?m:void 0,byDay:x}}function aj(t,e,r){if(!t||!e||!Cr(e))return 0;let n=null;try{n=r?.loadDatabase?r.loadDatabase():tt()}catch{return 0}if(!n)return 0;try{let o=new n(e,{readonly:!0});try{let s=o.prepare(`SELECT COALESCE(SUM(LENGTH(content) + LENGTH(title)), 0) AS bytes
|
|
529
|
-
FROM chunks WHERE session_id = ?`).get(t);return Number(s?.bytes??0)}finally{o.close()}}catch{return 0}}function Zk(t,e){if(!t
|
|
530
|
-
FROM chunks`).get();return Number(o?.bytes??0)}finally{n.close()}}catch{return 0}}function fh(t){let e={eventDataBytes:0,bytesAvoided:0,bytesReturned:0,snapshotBytes:0,contentBytes:0,totalSavedTokens:0},r=t.sessionsDir??St(qc(),".claude","context-mode","sessions");if(
|
|
527
|
+
`)}}for(let m of l)m.timestamp&&!m.timestamp.includes("T")&&(m.timestamp=m.timestamp.replace(" ","T")+"Z");return o==="timeline"&&l.sort((m,p)=>(m.timestamp||"").localeCompare(p.timestamp||"")),l.slice(0,r)}Xr();Gn();bm();Xr();function JM(t){let e=[];if(t&&typeof t=="object"){let r=t.command;typeof r=="string"&&e.push(r);let n=t.hooks;if(Array.isArray(n)){for(let o of n)if(o&&typeof o=="object"){let s=o.command;typeof s=="string"&&e.push(s)}}}return e}function YM(t){let e=bc(t);if(e)return e.scriptPath.endsWith(".mjs")?e.scriptPath:null;let r=t.match(/^\s*node\s+"([^"]+\.mjs)"\s*$/);if(r)return r[1];let n=t.match(/^\s*node\s+(\S+\.mjs)\s*$/);return n?n[1]:null}function Ik(t,e){let r=new Set,n=t.generateHookConfig(e);for(let o of Object.values(n))if(Array.isArray(o))for(let s of o)for(let i of JM(s)){let a=YM(i);a&&r.add(a)}return[...r]}Un();Gn();import*as ht from"node:fs";import*as ph from"node:path";var XM=["CONTEXT_MODE_PROJECT_DIR"],QM=["CLAUDE_PROJECT_DIR","GEMINI_PROJECT_DIR","VSCODE_CWD","OPENCODE_PROJECT_DIR","PI_PROJECT_DIR","IDEA_INITIAL_DIRECTORY","CURSOR_CWD","CONTEXT_MODE_PROJECT_DIR"];function dh(t){return t?/[/\\]\.claude[/\\]plugins[/\\](cache|marketplaces)[/\\]/.test(t):!1}function ej(t){if(!ht.existsSync(t.projectsRoot))return;let e,r=0;try{for(let n of ht.readdirSync(t.projectsRoot)){let o=ph.join(t.projectsRoot,n),s;try{s=ht.statSync(o)}catch{continue}if(!s.isDirectory())continue;let i;try{i=ht.readdirSync(o)}catch{continue}for(let a of i){if(!a.endsWith(".jsonl"))continue;let c=ph.join(o,a);try{let u=ht.statSync(c).mtimeMs;u>r&&(r=u,e=c)}catch{}}}}catch{return}if(e&&!(typeof t.maxAgeMs=="number"&&(t.nowMs??Date.now())-r>t.maxAgeMs))try{let n=ht.openSync(e,"r");try{let o=Buffer.alloc(8192),s=ht.readSync(n,o,0,o.length,0),i=o.subarray(0,s).toString("utf-8");for(let a of i.split(`
|
|
528
|
+
`).slice(0,10))if(a.trim())try{let c=JSON.parse(a);if(typeof c.cwd=="string"&&c.cwd.length>0)return c.cwd}catch{}}finally{ht.closeSync(n)}}catch{}}function Ak(t){let{env:e,cwd:r,pwd:n,transcriptsRoot:o,transcriptMaxAgeMs:s,nowMs:i,strictPlatform:a}=t,c=a?[...Jm(a),...XM]:QM;for(let u of c){let d=e[u];if(d&&!dh(d))return d}if(o){let u=ej({projectsRoot:o,maxAgeMs:s,nowMs:i});if(u&&!dh(u))return u}return n&&!dh(n)?n:r}import{execFileSync as tj}from"node:child_process";import{existsSync as $r,readdirSync as Vo,statSync as rj}from"node:fs";import{homedir as qc}from"node:os";import{join as St,sep as nj}from"node:path";Un();function Hk(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}var Fc={file:"Files tracked",cwd:"Working directory",rule:"Project rules (CLAUDE.md)",prompt:"Your requests saved",intent:"Session goal",role:"Behavior rules",constraint:"Constraints you set",mcp:"MCP tools called",skill:"Skills used",subagent:"Delegated work",decision:"Your decisions","agent-finding":"Agent insights kept","rejected-approach":"Approaches you rejected","external-ref":"External docs indexed",data:"Data references",git:"Git operations",env:"Environment setup",task:"Tasks in progress",error:"Errors caught",compact:"Compactions weathered",resume:"Sessions resumed cleanly",snapshot:"Snapshots restored",cache:"Cache hits saved",latency:"Slow tools recorded","user-prompt":"Your messages remembered",plan:"Plans drafted","blocked-on":"Blockers logged"},oj={file:"Restored after compact \u2014 no need to re-read",rule:"Your project instructions survive context resets",prompt:"Continues exactly where you left off",decision:"Applied automatically \u2014 won\u2019t ask again",task:"Picks up from where it stopped",error:"Tracked and monitored across compacts",git:"Branch, commit, and repo state preserved",env:"Runtime config carried forward",mcp:"Tool usage patterns remembered",subagent:"Delegation history preserved",skill:"Skill invocations tracked"},Wo=class{db;constructor(e){this.db=e}static contextSavingsTotal(e,r){let n=e-r,o=e>0?Math.round(n/e*1e3)/10:0;return{rawBytes:e,contextBytes:r,savedBytes:n,savedPercent:o}}static thinkInCodeComparison(e,r){let n=r>0?Math.round(e/r*10)/10:0;return{fileBytes:e,outputBytes:r,ratio:n}}static toolSavings(e){return e.map(r=>({...r,savedBytes:r.rawBytes-r.contextBytes}))}static sandboxIO(e,r){return{inputBytes:e,outputBytes:r}}getMcpToolUsage(){let e;try{e=this.db.prepare("SELECT data FROM session_events WHERE category = 'mcp_tool_call'").all()}catch{return[]}let r=new Map;for(let o of e){let s;try{s=JSON.parse(o.data)}catch{continue}let i=typeof s.tool_name=="string"?s.tool_name:null;if(!i)continue;let a=r.get(i)??{calls:0,concurrencies:[]};if(a.calls+=1,s.truncated!==!0&&s.params&&typeof s.params=="object"){let c=s.params.concurrency;typeof c=="number"&&Number.isFinite(c)&&c>0&&a.concurrencies.push(c)}r.set(i,a)}let n=[];for(let[o,s]of r){let i=null,a=null;if(s.concurrencies.length>0){let c=[...s.concurrencies].sort((d,l)=>d-l),u=Math.floor(c.length/2);i=c.length%2===0?(c[u-1]+c[u])/2:c[u],a=c[c.length-1]}n.push({tool_name:o,calls:s.calls,median_concurrency:i,max_concurrency:a})}return n.sort((o,s)=>s.calls-o.calls||o.tool_name.localeCompare(s.tool_name)),n}queryAll(e){let n=this.db.prepare("SELECT session_id FROM session_meta ORDER BY started_at DESC LIMIT 1").get()?.session_id??"",o=Object.values(e.bytesReturned).reduce((P,N)=>P+N,0),s=Object.values(e.calls).reduce((P,N)=>P+N,0),i=e.bytesIndexed+e.bytesSandboxed,a=i+o,c=a/Math.max(o,1),u=a>0?Math.round((1-o/a)*100):0,d=new Set([...Object.keys(e.calls),...Object.keys(e.bytesReturned)]),l=Array.from(d).sort().map(P=>({tool:P,calls:e.calls[P]||0,context_kb:Math.round((e.bytesReturned[P]||0)/1024*10)/10,tokens:Math.round((e.bytesReturned[P]||0)/4)})),m=((Date.now()-e.sessionStart)/6e4).toFixed(1),p;if(e.cacheHits>0||e.cacheBytesSaved>0){let P=a+e.cacheBytesSaved,N=P/Math.max(o,1),Q=Math.max(0,24-Math.floor((Date.now()-e.sessionStart)/(3600*1e3)));p={hits:e.cacheHits,bytes_saved:e.cacheBytesSaved,ttl_hours_left:Q,total_with_cache:P,total_savings_ratio:N}}let h=this.db.prepare("SELECT COUNT(*) as cnt FROM session_events WHERE session_id = ?").get(n).cnt,g=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events WHERE session_id = ? GROUP BY category ORDER BY cnt DESC").all(n),x=this.db.prepare("SELECT compact_count FROM session_meta WHERE session_id = ?").get(n)?.compact_count??0,y=this.db.prepare("SELECT event_count, consumed FROM session_resume WHERE session_id = ? ORDER BY created_at DESC LIMIT 1").get(n),S=y?!y.consumed:!1,E=this.db.prepare("SELECT category, type, data FROM session_events WHERE session_id = ? ORDER BY id DESC").all(n),O=new Map;for(let P of E){O.has(P.category)||O.set(P.category,new Set);let N=O.get(P.category);if(N.size<5){let Q=P.data;P.category==="file"?Q=P.data.split("/").pop()||P.data:(P.category==="prompt"||P.category==="user-prompt")&&(Q=Q.length>50?Q.slice(0,47)+"...":Q),Q.length>40&&(Q=Q.slice(0,37)+"..."),N.add(Q)}}let L=g.map(P=>({category:P.category,count:P.cnt,label:Fc[P.category]||P.category,preview:O.get(P.category)?Array.from(O.get(P.category)).join(", "):"",why:oj[P.category]||"Survives context resets"})),A=this.db.prepare("SELECT COUNT(*) as cnt, COUNT(DISTINCT session_id) as sessions FROM session_events").get(),w=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all().filter(P=>P.cnt>0).map(P=>({category:P.category,count:P.cnt,label:Fc[P.category]||P.category}));return{savings:{processed_kb:Math.round(a/1024*10)/10,entered_kb:Math.round(o/1024*10)/10,saved_kb:Math.round(i/1024*10)/10,pct:u,savings_ratio:Math.round(c*10)/10,by_tool:l,total_calls:s,total_bytes_returned:o,kept_out:i,total_processed:a},cache:p,session:{id:n,uptime_min:m},continuity:{total_events:h,by_category:L,compact_count:x,resume_ready:S},projectMemory:{total_events:A.cnt,session_count:A.sessions,by_category:w}}}};function sj(t){let e=t?.home??qc();return[["claude-code",[".claude"]],["gemini-cli",[".gemini"]],["antigravity",[".gemini"]],["openclaw",[".openclaw"]],["codex",[".codex"]],["cursor",[".cursor"]],["vscode-copilot",[".vscode"]],["kiro",[".kiro"]],["pi",[".pi"]],["omp",[".omp"]],["qwen-code",[".qwen"]],["kilo",[".config","kilo"]],["opencode",[".config","opencode"]],["zed",[".config","zed"]],["jetbrains-copilot",[".config","JetBrains"]]].map(([n,o])=>{let s=St(e,...o,"context-mode");return{name:n,sessionsDir:St(s,"sessions"),contentDir:St(s,"content")}})}function ij(t){let r=t.replace(/\.md$/i,"").match(/^([a-z]+)/i);return r?r[1].toLowerCase():"other"}function ki(t){let e=vt(),r=t?.sessionsDir??St(e,"context-mode","sessions"),n=t?.memoryRoot??St(e,"projects"),o=0,s=0,i=0,a=Number.POSITIVE_INFINITY,c=new Set,u={};if($r(r)){let m=[];try{m=Vo(r).filter(p=>p.endsWith(".db"))}catch{}if(m.length>0){let p=null;try{p=t?.loadDatabase?t.loadDatabase():tt()}catch{}if(p)for(let h of m){let g=St(r,h);try{let _=new p(g,{readonly:!0});try{let x=_.prepare("SELECT COUNT(*) AS cnt FROM session_events").get(),y=_.prepare("SELECT COUNT(*) AS cnt FROM session_meta").get();o+=x?.cnt??0,s+=y?.cnt??0;try{let S=_.prepare("SELECT category, COUNT(*) AS cnt FROM session_events GROUP BY category").all();for(let E of S)E.category&&(u[E.category]=(u[E.category]??0)+(E.cnt??0))}catch{}try{let S=_.prepare("SELECT COALESCE(SUM(length(snapshot)), 0) AS bytes FROM session_resume WHERE consumed = 1").get();S?.bytes&&(i+=S.bytes)}catch{}try{let S=_.prepare("SELECT MIN(created_at) AS t FROM session_events").get();if(S?.t){let E=S.t.endsWith("Z")?S.t:S.t+"Z",O=Date.parse(E);Number.isFinite(O)&&O<a&&(a=O)}}catch{}try{let S=_.prepare("SELECT DISTINCT project_dir AS p FROM session_events WHERE project_dir != ''").all();for(let E of S)E.p&&c.add(E.p)}catch{}}finally{_.close()}}catch{}}}}let d=0,l=0,f={};if($r(n)){let m=[];try{m=Vo(n).filter(p=>{try{return rj(St(n,p)).isDirectory()}catch{return!1}})}catch{}for(let p of m){let h=St(n,p,"memory");if(!$r(h))continue;let g=[];try{g=Vo(h).filter(_=>_.endsWith(".md"))}catch{continue}if(g.length!==0){l++,d+=g.length;for(let _ of g){let x=ij(_);f[x]=(f[x]??0)+1}}}}return{totalEvents:o,totalSessions:s,autoMemoryCount:d,autoMemoryProjects:l,autoMemoryByPrefix:f,categoryCounts:u,rescueBytes:i,firstEventMs:Number.isFinite(a)?a:0,distinctProjects:c.size}}function Fk(t){let e=t.sessionsDir??St(qc(),".claude","context-mode","sessions"),r=t.sessionId,n={sessionId:r,events:0,dbCount:0,daysAlive:0,snapshotBytes:0,snapshotsConsumed:0,byCategory:[]};if(!r||!$r(e))return n;let o=[];try{o=Vo(e).filter(y=>!(!y.endsWith(".db")||t.worktreeHash&&!y.startsWith(t.worktreeHash)))}catch{return n}if(o.length===0)return n;let s=null;try{s=t.loadDatabase?t.loadDatabase():tt()}catch{return n}if(!s)return n;let i={},a=0,c=0,u=0,d=0,l=Number.POSITIVE_INFINITY,f=0,m=0,p=new Map,h=y=>Math.floor(y/864e5)*864e5;for(let y of o){let S=St(e,y),E=!1;try{let O=new s(S,{readonly:!0});try{let L=O.prepare("SELECT category, COUNT(*) AS cnt FROM session_events WHERE session_id = ? GROUP BY category").all(r);for(let z of L)z.category&&(i[z.category]=(i[z.category]??0)+(z.cnt??0),a+=z.cnt??0,E=!0);let A=O.prepare("SELECT MIN(created_at) AS mn, MAX(created_at) AS mx FROM session_events WHERE session_id = ?").get(r);if(A?.mn){let z=Date.parse(A.mn+(A.mn.endsWith("Z")?"":"Z"));Number.isFinite(z)&&z<l&&(l=z)}if(A?.mx){let z=Date.parse(A.mx+(A.mx.endsWith("Z")?"":"Z"));Number.isFinite(z)&&z>f&&(f=z)}try{let z=O.prepare("SELECT strftime('%s', created_at) AS sec, COUNT(*) AS cnt FROM session_events WHERE session_id = ? GROUP BY date(created_at)").all(r);for(let w of z){if(!w.sec)continue;let P=parseInt(w.sec,10)*1e3;if(!Number.isFinite(P))continue;let N=h(P),Q=p.get(N)??{count:0,rescueBytes:0};Q.count+=w.cnt??0,p.set(N,Q)}}catch{}try{let z=O.prepare("SELECT COALESCE(SUM(length(snapshot)), 0) AS bytes, COUNT(*) AS n, MAX(strftime('%s', created_at)) AS lastSec FROM session_resume WHERE session_id = ? AND consumed = 1").get(r);if(z?.bytes&&(u+=z.bytes),z?.n&&(d+=z.n),z?.lastSec){let w=parseInt(z.lastSec,10)*1e3;if(Number.isFinite(w)&&w>m&&(m=w),Number.isFinite(w)&&(z?.bytes??0)>0){let P=h(w),N=p.get(P)??{count:0,rescueBytes:0};N.rescueBytes=Math.max(N.rescueBytes,z.bytes),p.set(P,N)}}}catch{}}finally{O.close()}}catch{}E&&c++}let g=l<f?(f-l)/864e5:0,_=Object.entries(i).filter(([,y])=>y>0).map(([y,S])=>({category:y,count:S,label:Fc[y]||y})).sort((y,S)=>S.count-y.count),x=[...p.entries()].sort((y,S)=>y[0]-S[0]).map(([y,S])=>({ms:y,count:S.count,...S.rescueBytes>0?{rescueBytes:S.rescueBytes}:{}}));return{sessionId:r,events:a,dbCount:c,daysAlive:g,snapshotBytes:u,snapshotsConsumed:d,byCategory:_,firstEventMs:Number.isFinite(l)?l:0,lastEventMs:f>0?f:0,lastRescueMs:m>0?m:void 0,byDay:x}}function aj(t,e,r){if(!t||!e||!$r(e))return 0;let n=null;try{n=r?.loadDatabase?r.loadDatabase():tt()}catch{return 0}if(!n)return 0;try{let o=new n(e,{readonly:!0});try{let s=o.prepare(`SELECT COALESCE(SUM(LENGTH(content) + LENGTH(title)), 0) AS bytes
|
|
529
|
+
FROM chunks WHERE session_id = ?`).get(t);return Number(s?.bytes??0)}finally{o.close()}}catch{return 0}}function Zk(t,e){if(!t||!$r(t))return 0;let r=null;try{r=e?.loadDatabase?e.loadDatabase():tt()}catch{return 0}if(!r)return 0;try{let n=new r(t,{readonly:!0});try{let o=n.prepare(`SELECT COALESCE(SUM(LENGTH(content) + LENGTH(title)), 0) AS bytes
|
|
530
|
+
FROM chunks`).get();return Number(o?.bytes??0)}finally{n.close()}}catch{return 0}}function fh(t){let e={eventDataBytes:0,bytesAvoided:0,bytesReturned:0,snapshotBytes:0,contentBytes:0,totalSavedTokens:0},r=t.sessionsDir??St(qc(),".claude","context-mode","sessions");if(!$r(r))return e;let n=[];try{n=Vo(r).filter(l=>!(!l.endsWith(".db")||t.worktreeHash&&!l.startsWith(t.worktreeHash)))}catch{return e}if(n.length===0)return e;let o=null;try{o=t.loadDatabase?t.loadDatabase():tt()}catch{return e}if(!o)return e;let s=0,i=0,a=0,c=0;for(let l of n){let f=St(r,l);try{let m=new o(f,{readonly:!0});try{if(t.sessionId){let p=m.prepare(`SELECT
|
|
531
531
|
COALESCE(SUM(LENGTH(data)), 0) AS data_bytes,
|
|
532
532
|
COALESCE(SUM(bytes_avoided), 0) AS bytes_avoided,
|
|
533
533
|
COALESCE(SUM(bytes_returned), 0) AS bytes_returned
|
|
@@ -535,17 +535,17 @@ ${o}`}}import{execFileSync as AM}from"node:child_process";function NM(){if(proce
|
|
|
535
535
|
COALESCE(SUM(LENGTH(data)), 0) AS data_bytes,
|
|
536
536
|
COALESCE(SUM(bytes_avoided), 0) AS bytes_avoided,
|
|
537
537
|
COALESCE(SUM(bytes_returned), 0) AS bytes_returned
|
|
538
|
-
FROM session_events`).get();p&&(s+=Number(p.data_bytes??0),i+=Number(p.bytes_avoided??0),a+=Number(p.bytes_returned??0));try{let h=m.prepare("SELECT COALESCE(SUM(LENGTH(snapshot)), 0) AS bytes FROM session_resume").get();h?.bytes&&(c+=Number(h.bytes))}catch{}}}finally{m.close()}}catch{}}let u=0;t.sessionId&&t.contentDbPath&&(u=aj(t.sessionId,t.contentDbPath,{loadDatabase:t.loadDatabase}),i+=u);let d=Math.floor((s+i+c)/4);return{eventDataBytes:s,bytesAvoided:i,bytesReturned:a,snapshotBytes:c,contentBytes:u,totalSavedTokens:d}}var cj={minEvents:100,minProjects:5,recencyMs:30*864e5,minAvgBytes:50};function uj(t,e,r){let n={name:t.name,eventCount:0,sessionCount:0,dataBytes:0,rescueBytes:0,contentBytes:0,uuidConvs:0,projectDirs:[],firstMs:Number.POSITIVE_INFINITY,lastMs:0,isReal:!1};if(!Cr(t.sessionsDir))return n;let o=[];try{o=Vo(t.sessionsDir).filter(d=>d.endsWith(".db"))}catch{return n}if(o.length===0)return n;let s=null;try{s=e()}catch{return n}if(!s)return n;let i=new Set,a=new Set;for(let d of o){let l=St(t.sessionsDir,d);try{let f=new s(l,{readonly:!0});try{let m=f.prepare("SELECT COUNT(*) AS cnt, COALESCE(SUM(LENGTH(data)), 0) AS bytes FROM session_events").get();m&&(n.eventCount+=Number(m.cnt??0),n.dataBytes+=Number(m.bytes??0));try{let p=f.prepare("SELECT COUNT(*) AS cnt FROM session_meta").get();n.sessionCount+=Number(p?.cnt??0)}catch{}try{let p=f.prepare("SELECT COALESCE(SUM(length(snapshot)), 0) AS bytes FROM session_resume WHERE consumed = 1").get();p?.bytes&&(n.rescueBytes+=Number(p.bytes))}catch{}try{let p=f.prepare("SELECT MIN(created_at) AS mn, MAX(created_at) AS mx FROM session_events").get();if(p?.mn){let h=Date.parse(p.mn+(p.mn.endsWith("Z")?"":"Z"));Number.isFinite(h)&&h<n.firstMs&&(n.firstMs=h)}if(p?.mx){let h=Date.parse(p.mx+(p.mx.endsWith("Z")?"":"Z"));Number.isFinite(h)&&h>n.lastMs&&(n.lastMs=h)}}catch{}try{let p=f.prepare("SELECT DISTINCT project_dir AS p FROM session_events WHERE project_dir != ''").all();for(let h of p)h.p&&i.add(h.p)}catch{}try{let p=f.prepare("SELECT DISTINCT session_id AS s FROM session_events").all();for(let h of p)h.s&&a.add(h.s)}catch{}}finally{f.close()}}catch{}}n.projectDirs=Array.from(i),n.uuidConvs=a.size;let c=n.eventCount>0?n.dataBytes/n.eventCount:0,u=n.lastMs>0&&r.nowMs-n.lastMs<=r.recencyMs;return n.isReal=n.eventCount>=r.minEvents&&i.size>=r.minProjects&&u&&c>=r.minAvgBytes,n}function Vc(t){let e=sj({home:t?.home}),r=t?.loadDatabase??tt,n={...cj,...t?.filter??{},nowMs:t?.filter?.nowMs??Date.now()},o=[],s=0,i=0,a=0;for(let c of e){if(!Cr(c.sessionsDir))continue;let u=uj(c,r,n);o.push(u),s+=u.eventCount,i+=u.sessionCount,a+=u.dataBytes+u.rescueBytes}return{totalEvents:s,totalSessions:i,totalBytes:a,perAdapter:o}}var Bk={project:"What you're building",feedback:"How you work",user:"Who you are",reference:"Where to look",memory:"Long-term context",other:"Other notes"},lj={"claude-code":"Claude Code","gemini-cli":"Gemini CLI",antigravity:"Antigravity",openclaw:"Openclaw",codex:"Codex CLI",cursor:"Cursor","vscode-copilot":"VS Code Copilot",kiro:"Kiro",pi:"Pi",omp:"OMP","qwen-code":"Qwen Code",kilo:"Kilo",opencode:"OpenCode",zed:"Zed","jetbrains-copilot":"JetBrains"};function Zc(t){return lj[t]??t}function Ge(t){if(!Number.isFinite(t)||t<=0)return"0 B";if(t<1024)return`${Math.round(t)} B`;let e=t/1024;if(e<1024)return e<100?`${e.toFixed(1)} KB`:`${Math.round(e)} KB`;let r=e/1024;if(r<1024)return r<100?`${r.toFixed(1)} MB`:`${Math.round(r)} MB`;let n=r/1024;return n<100?`${n.toFixed(2)} GB`:`${n.toFixed(1)} GB`}function dj(t){let e=parseFloat(t);if(isNaN(e)||e<1)return"< 1 min";if(e<60)return`${Math.round(e)} min`;let r=Math.floor(e/60),n=Math.round(e%60);return n>0?`${r}h ${n}m`:`${r}h`}function Hc(t){if(!t)return!1;try{return Intl.DateTimeFormat.supportedLocalesOf(t).length===0?!1:(new Intl.DateTimeFormat(t),!0)}catch{return!1}}function pj(){let t=process.env??{},e=t.CONTEXT_MODE_LOCALE??"";if(e&&!Hc(e)&&(e=""),!e){if(process.platform==="darwin"){try{let n=tj("defaults",["read","-g","AppleLocale"],{encoding:"utf8",timeout:500}).trim();n&&(e=n.replace(/_/g,"-"))}catch{}e&&!Hc(e)&&(e="")}if(!e&&(t.LC_TIME||t.LANG)){let n=(t.LC_TIME||t.LANG||"").split(".")[0];n&&(e=n.replace(/_/g,"-")),e&&!Hc(e)&&(e="")}if(!e)try{e=new Intl.DateTimeFormat().resolvedOptions().locale}catch{e="en-US"}}let r=t.CONTEXT_MODE_TZ??"";if(!r)try{r=new Intl.DateTimeFormat().resolvedOptions().timeZone}catch{r="UTC"}return Hc(e)||(e="en-US"),{locale:e,tz:r||"UTC"}}function Nk(t){let e=qc();return e?t===e?"~":t.startsWith(e+nj)?"~"+t.slice(e.length):t:t}function fj(t,e,r){if(!Number.isFinite(e)||e<=0)return[];let n=e*15/1e6,o=(h,g=2)=>h.toFixed(g),s=Math.round(n/20),i=(n/200).toFixed(1),a=Math.round(n/73.67),c=Math.round(n*10),u=r>0?Math.round(n*10/r*365):0,d=(e*3/1e6).toFixed(2),l=(e*2.5/1e6).toFixed(2),f=(e*1.25/1e6).toFixed(2),m=(e*.8/1e6).toFixed(2),p=[];return p.push(` $${o(n)} of Opus 4 tokens your team didn't burn.`),p.push(` context-mode kept ${Ge(t)} out of context \u2014 that's ${s} months of Cursor Pro paid for itself.`),c>0&&u>0&&(p.push(""),p.push(` Scale across a 10-dev team and that's ~$${u.toLocaleString("en-US")}/year saved.`)),p.push(""),p.push(" (Opus rates shown for context. On cheaper models the dollar number drops; the savings ratio holds.)"),p}function mj(t){let{conversation:e,lifetime:r,multiAdapter:n,realBytes:o,cwd:s,locale:i,tz:a,now:c,version:u,latestVersion:d}=t,l=[],f=e.events*Lk,m=Math.round((e.snapshotBytes??0)/4),p=f+m,h=o?.conversation?.totalSavedTokens??0,g=Math.max(p,h),_=(r?.totalEvents??0)*Lk,x=Math.round((r?.rescueBytes??0)/4),y=_+x,S=o?.lifetime?.totalSavedTokens??0,E=Math.max(y,S),O=o?.lifetime?.bytesReturned??0,L=o?.lifetime?.bytesAvoided??0,A=O+L>0?Math.max(1,Math.floor(O/4)):Math.max(1,Math.round(E*.02)),z=n?.totalBytes&&n.totalBytes>0?n.totalBytes:E*4,w=o?.conversation?o.conversation.eventDataBytes+o.conversation.bytesAvoided+o.conversation.snapshotBytes:g*4,P=e.daysAlive>=1?`${e.daysAlive.toFixed(1)} days alive \xB7 still going`:`${Math.max(1,Math.round(e.daysAlive*24))} hr alive \xB7 still going`,N=r?.firstEventMs??n?.perAdapter?.[0]?.firstMs??0,Q=N>0?Math.max(1,Math.round((c-N)/864e5)):0,nr=n?.totalSessions??r?.totalSessions??1,au=n?.perAdapter.filter(Ne=>Ne.isReal).length??0,Xo;if(n&&au>=2)Xo=`across ${au} AI tools`;else if(n&&au===1){let Ne=n.perAdapter.find(Ut=>Ut.isReal);Xo=`in ${Ne?Zc(Ne.name):"Claude Code"}`}else Xo="in Claude Code";Q>0?l.push(` Across ${Q} days you ran ${Qt(nr)} conversations ${Xo}.`):l.push(` You ran ${Qt(nr)} conversations ${Xo}.`);let lE=Q>0?z/Q:0;l.push(` context-mode kept ${Ge(z)} out of your context window \u2014 about ${Ge(lE)} every single day.`),l.push(""),l.push(""),l.push(" \u2500\u2500\u2500 1. Where you are now \u2500\u2500\u2500"),l.push("");let Eh=e.firstEventMs&&e.firstEventMs>0?Dk(e.firstEventMs,i,a):"";if(Eh?l.push(` This conversation started ${Eh} in ${Nk(s)}.`):l.push(` This conversation lives in ${Nk(s)}.`),l.push(` ${P}.`),e.snapshotsConsumed>0&&e.snapshotBytes>0){let Ne=e.lastRescueMs&&e.lastRescueMs>0?Dk(e.lastRescueMs,i,a):"",Ut=Math.round(e.snapshotBytes/1024);Ne?l.push(` On ${Ne}, /compact fired \u2014 ${Ut} KB rescued from snapshot.`):l.push(` /compact fired \u2014 ${Ut} KB rescued from snapshot.`),l.push(" Without that, you'd be re-explaining everything to a blank model right now.")}l.push("");let cu=o?.conversation,wh=cu?.bytesAvoided??0,uu=cu?.bytesReturned??0,lu=cu?.eventDataBytes??0;if(wh+uu+lu>0){let Ne=wh+uu+lu,Ut=Math.max(1,uu+lu),Ht=Math.max(1,Math.floor(Ne/4)),hr=Math.max(1,Math.floor(Ut/4)),du=tn(Ht,Ht,32),hE=tn(hr,Ht,32),gE=(1-hr/Ht)*100,yE=Math.max(1,Math.round(Ht/hr));l.push(` Without context-mode ${Ge(Ne).padStart(8)} ${du} ${Qt(Ht).padStart(7)} tokens`),l.push(` With context-mode ${Ge(Ut).padStart(8)} ${hE} ${Qt(hr).padStart(7)} tokens`),l.push(` ${gE.toFixed(0)}% kept out of context \xB7 your AI ran ${yE}\xD7 longer before /compact fired`),l.push("")}if(e.byDay&&e.byDay.length>0){let Ne=e.lastEventMs&&e.firstEventMs?Math.max(1,Math.round((e.lastEventMs-e.firstEventMs)/864e5)+1):e.byDay.length;l.push(` How that ${Ge(w)} built up \u2014 ${Ne} days, ${e.byDay.length} active:`),l.push(""),l.push(...gj(e.byDay,i,a))}l.push(""),l.push(""),l.push(" \u2500\u2500\u2500 2. What this chat captured (used when you --continue or /resume here) \u2500\u2500\u2500"),l.push("");let dE=e.byCategory.reduce((Ne,Ut)=>Ne+Ut.count,0).toLocaleString(i);l.push(` ${dE} things \u2014 files, errors, decisions, agent runs:`),l.push("");let pE=e.byCategory[0]?.count??1;for(let Ne of e.byCategory)l.push(` ${Ne.label.padEnd(26)} ${String(Ne.count).padStart(5)} ${tn(Ne.count,pE,28)}`);l.push(""),l.push(""),l.push(" \u2500\u2500\u2500 3. The scope, getting wider \u2500\u2500\u2500"),l.push("");let Th=e.firstEventMs&&e.firstEventMs>0?new Intl.DateTimeFormat(i,{timeZone:a,year:"numeric",month:"short",day:"numeric"}).format(new Date(e.firstEventMs)):"",Ph=N>0?new Intl.DateTimeFormat(i,{timeZone:a,year:"numeric",month:"short",day:"numeric"}).format(new Date(N)):"",Rh=r?.distinctProjects??0,fE=r?.totalEvents??n?.totalEvents??0;if(l.push(` This chat: ${Ge(w)} kept out \xB7 ${e.events.toLocaleString(i)} captures${Th?` \xB7 started ${Th}`:""}.`),l.push(` All your work: ${Ge(z)} kept out \xB7 ${fE.toLocaleString(i)} captures across ${Rh} project${Rh===1?"":"s"}${Ph?` \xB7 since ${Ph}`:""}.`),l.push(""),l.push(""),l.push(" \u2500\u2500\u2500 4. The bottom line \u2500\u2500\u2500"),l.push(""),l.push(...fj(z,E,Q)),l.push(""),l.push(""),l.push(" \u2500\u2500\u2500 5. What context-mode learned about how you work \u2500\u2500\u2500"),l.push(""),r&&r.autoMemoryCount>0){l.push(` ${r.autoMemoryCount} preferences picked up across ${r.autoMemoryProjects} project${r.autoMemoryProjects===1?"":"s"}:`);let Ne=Object.entries(r.autoMemoryByPrefix).sort((Ht,hr)=>hr[1]-Ht[1]),Ut=Ne.length>0?Ne[0][1]:1;for(let[Ht,hr]of Ne){let du=Bk[Ht]??Ht;l.push(` ${du.padEnd(26)} ${String(hr).padStart(2)} ${tn(hr,Ut,20)}`)}}else l.push(" No preferences learned yet \u2014 context-mode picks them up automatically.");l.push(""),l.push(""),l.push(" Your AI talks less, remembers more, costs less."),l.push(` Locale ${i} \xB7 timezone ${a} \xB7 pricing examples for illustration only.`),l.push("");let mE=u?`v${u}`:"context-mode";return l.push(` ${mE}`),u&&d&&d!=="unknown"&&Hk(d,u)&&l.push(` Update available: v${u} -> v${d} | ctx_upgrade`),hj(l)}function hj(t){let e=[],r=0;for(let n of t)n===""?(r++,r<=2&&e.push(n)):(r=0,e.push(n));for(;e.length>0&&e[e.length-1]==="";)e.pop();return e}function gj(t,e,r){if(t.length===0)return[];let n=[...t].sort((f,m)=>f.ms-m.ms),o=n[0],s=n[n.length-1],i=Math.max(1,s.ms-o.ms),a=n[0];for(let f of n)f.count>a.count&&(a=f);let c=56,u=Array.from({length:c},()=>"\u2500");for(let f of n){let m=Math.round((f.ms-o.ms)/i*(c-1)),p="\u25CF";f===a&&(p="\u2588"),(f.rescueBytes??0)>0&&(p="\u25C6"),u[m]=p}let d=f=>{let m=new Intl.DateTimeFormat(e,{timeZone:r,month:"short",day:"numeric"}).formatToParts(new Date(f)),p=(m.find(g=>g.type==="month")?.value??"").toLowerCase(),h=m.find(g=>g.type==="day")?.value??"";return`${p} ${h}`},l=[];l.push(` ${d(o.ms)} ${u.join("")} ${d(s.ms)}`),l.push("");for(let f of n){let m=d(f.ms).padEnd(7),p=`${f.count} captures`,h=f===a?" \u2190 peak":"",g=(f.rescueBytes??0)>0?` \u25C6 /compact rescued ${Math.round((f.rescueBytes??0)/1024)} KB`:"";l.push(` ${m} ${p}${h}${g}`)}return l.push(""),l.push(" \u25CF active day \u2588 peak day \u25C6 /compact rescue"),l}function Dk(t,e,r){if(!Number.isFinite(t)||t<=0)return"";let n=new Date(t);if(Number.isNaN(n.getTime()))return"";let o=new Intl.DateTimeFormat(e,{timeZone:r,year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",hour12:!1}).formatToParts(n),s=l=>o.find(f=>f.type===l)?.value??"",i=s("day"),a=s("month"),c=s("year"),u=s("hour"),d=s("minute");return u==="24"&&(u="00"),`${i} ${a} ${c} at ${u}:${d} (${r})`}function Qt(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}K`:String(t)}var Wc=15/1e6;function Bc(t){return`$${((Number.isFinite(t)&&t>0?t:0)*Wc).toFixed(2)}`}function tn(t,e,r=40){if(e<=0)return"\u2591".repeat(r);let n=Math.max(1,Math.round(t/e*r));return"\u2588".repeat(Math.min(n,r))+"\u2591".repeat(Math.max(0,r-n))}function Mk(t,e){let r=e?.sessionTokensSaved??0;if(t.total_events===0&&(e?.lifetime?.totalEvents??0)===0&&r===0&&(e?.multiAdapter?.totalEvents??0)===0)return[];let n=e?.topN??Number.POSITIVE_INFINITY,o=[];o.push("");let s=e?.multiAdapter,i=s?.perAdapter.filter(h=>h.isReal).length??0,a=s?.totalEvents??e?.lifetime?.totalEvents??t.total_events,c=s?.totalSessions??e?.lifetime?.totalSessions??t.session_count,u=e?.lifetime?.distinctProjects;if(a>0&&u&&u>0){let h=i>=2?" everywhere":"";o.push(` All your work${h} \xB7 ${Qt(a)} events captured across ${u} project${u===1?"":"s"} \xB7 ${Qt(c)} conversations`)}else{o.push("Persistent memory \u2713 preserved across compact, restart & upgrade");let h=c===0&&r>0?1:c,g=h===1?"1 session":`${Qt(h)} sessions`,_=a*256+r;o.push(` ${Qt(a)} events \xB7 ${g} \xB7 ~${Bc(_)} saved lifetime`)}o.push("");let d=e?.lifetime?.categoryCounts,l;d&&Object.keys(d).length>0?l=Object.entries(d).filter(([,h])=>h>0).map(([h,g])=>({category:h,count:g,label:Fc[h]||h})).sort((h,g)=>g.count-h.count):l=(t.by_category??[]).filter(h=>h&&h.count>0);let f=l.slice(0,n),m=f.length>0?f[0].count:1;for(let h of f)o.push(` ${h.label.padEnd(26)} ${String(h.count).padStart(5)} ${tn(h.count,m,30)}`);let p=Math.max(0,l.length-n);return p>0&&o.push(` ... ${p} more categor${p===1?"y":"ies"}`),o}function jk(t){if(!t||t.autoMemoryCount===0)return[];let e=[];e.push(""),e.push(` Preferences learned \xB7 ${t.autoMemoryCount} across ${t.autoMemoryProjects} project${t.autoMemoryProjects===1?"":"s"}`);let r=Object.entries(t.autoMemoryByPrefix).sort((o,s)=>s[1]-o[1]).slice(0,6),n=r.length>0?r[0][1]:1;for(let[o,s]of r){let i=Bk[o]??o;e.push(` ${i.padEnd(26)} ${String(s).padStart(2)} ${tn(s,n,20)}`)}return e}function zk(t,e){let r=[],n=Bc(t),o=(e?.totalEvents??0)*256+t,s=Bc(o);return r.push(""),r.push("\u2500".repeat(65)),r.push("Your AI talks less, remembers more, costs less."),r.push(`${n} this session \xB7 ${s} lifetime`),r.push("\u2500".repeat(65)),r}var Lk=256;function Uk(t){if(!t)return[];let e=t.perAdapter.filter(o=>o.isReal),r=t.perAdapter.filter(o=>!o.isReal);if(e.length===0&&r.length===0)return[];let n=[];if(e.length>0){n.push(""),n.push("Where it came from (tools you actually used \u2014 fixtures + probes filtered):"),n.push("");let o=16,s=10,i=10,a=16;n.push(` ${"Tool".padEnd(o)}${"Captures".padStart(s)}${"Indexed".padStart(i)}${"Total kept out".padStart(a)}`);let c=[...e].sort((u,d)=>d.dataBytes+d.rescueBytes-(u.dataBytes+u.rescueBytes));for(let u of c){let d=u.dataBytes+u.rescueBytes,l=u.eventCount>0?Qt(u.eventCount):"\u2014",f=Ge(u.dataBytes),m=Ge(d);n.push(` ${Zc(u.name).padEnd(o)}${l.padStart(s)}${f.padStart(i)}${m.padStart(a)}`)}}if(r.length>0){e.length>0&&n.push("");let o=r.map(s=>Zc(s.name)).join(", ");n.push(` Skipped (${r.length}): ${o}`),n.push(" These adapters have DBs on disk but only test fixtures, dev skeletons,"),n.push(" or detection probes \u2014 no real chat activity.")}return n}function Kc(t,e,r,n){let o=[],s=dj(t.session.uptime_min),i=n?.lifetime,a=n?.mcpUsage,c=n?.conversation,u=n?.realBytes,d=n?.multiAdapter,l=d?.perAdapter.filter(O=>O.isReal).length??0;if(d&&l>0){let O=d.totalSessions||i?.totalSessions||0,L=i?.firstEventMs??0,A=L>0?Math.max(1,Math.round((Date.now()-L)/864e5)):0,z=A>0?`Across ${A} day${A===1?"":"s"} `:"",w=O>0?`you ran ${Qt(O)} conversation${O===1?"":"s"} `:"you ran ",P;if(l>=2)P=`across ${l} AI tools`;else{let N=d.perAdapter.find(Q=>Q.isReal);P=`in ${N?Zc(N.name):"Claude Code"}`}o.push(`${z}${w}${P}.`),o.push("")}if(c&&c.events>0){o.length>0&&(o.length=0);let O=pj(),L=n?.cwd??process.cwd(),A=n?.now??Date.now(),z=n?.locale??O.locale,w=n?.tz??O.tz;return o.push(...mj({conversation:c,lifetime:i,multiAdapter:d,realBytes:u,cwd:L,locale:z,tz:w,now:A,version:e,latestVersion:r})),o.join(`
|
|
538
|
+
FROM session_events`).get();p&&(s+=Number(p.data_bytes??0),i+=Number(p.bytes_avoided??0),a+=Number(p.bytes_returned??0));try{let h=m.prepare("SELECT COALESCE(SUM(LENGTH(snapshot)), 0) AS bytes FROM session_resume").get();h?.bytes&&(c+=Number(h.bytes))}catch{}}}finally{m.close()}}catch{}}let u=0;t.sessionId&&t.contentDbPath&&(u=aj(t.sessionId,t.contentDbPath,{loadDatabase:t.loadDatabase}),i+=u);let d=Math.floor((s+i+c)/4);return{eventDataBytes:s,bytesAvoided:i,bytesReturned:a,snapshotBytes:c,contentBytes:u,totalSavedTokens:d}}var cj={minEvents:100,minProjects:5,recencyMs:30*864e5,minAvgBytes:50};function uj(t,e,r){let n={name:t.name,eventCount:0,sessionCount:0,dataBytes:0,rescueBytes:0,contentBytes:0,uuidConvs:0,projectDirs:[],firstMs:Number.POSITIVE_INFINITY,lastMs:0,isReal:!1};if(!$r(t.sessionsDir))return n;let o=[];try{o=Vo(t.sessionsDir).filter(d=>d.endsWith(".db"))}catch{return n}if(o.length===0)return n;let s=null;try{s=e()}catch{return n}if(!s)return n;let i=new Set,a=new Set;for(let d of o){let l=St(t.sessionsDir,d);try{let f=new s(l,{readonly:!0});try{let m=f.prepare("SELECT COUNT(*) AS cnt, COALESCE(SUM(LENGTH(data)), 0) AS bytes FROM session_events").get();m&&(n.eventCount+=Number(m.cnt??0),n.dataBytes+=Number(m.bytes??0));try{let p=f.prepare("SELECT COUNT(*) AS cnt FROM session_meta").get();n.sessionCount+=Number(p?.cnt??0)}catch{}try{let p=f.prepare("SELECT COALESCE(SUM(length(snapshot)), 0) AS bytes FROM session_resume WHERE consumed = 1").get();p?.bytes&&(n.rescueBytes+=Number(p.bytes))}catch{}try{let p=f.prepare("SELECT MIN(created_at) AS mn, MAX(created_at) AS mx FROM session_events").get();if(p?.mn){let h=Date.parse(p.mn+(p.mn.endsWith("Z")?"":"Z"));Number.isFinite(h)&&h<n.firstMs&&(n.firstMs=h)}if(p?.mx){let h=Date.parse(p.mx+(p.mx.endsWith("Z")?"":"Z"));Number.isFinite(h)&&h>n.lastMs&&(n.lastMs=h)}}catch{}try{let p=f.prepare("SELECT DISTINCT project_dir AS p FROM session_events WHERE project_dir != ''").all();for(let h of p)h.p&&i.add(h.p)}catch{}try{let p=f.prepare("SELECT DISTINCT session_id AS s FROM session_events").all();for(let h of p)h.s&&a.add(h.s)}catch{}}finally{f.close()}}catch{}}n.projectDirs=Array.from(i),n.uuidConvs=a.size;let c=n.eventCount>0?n.dataBytes/n.eventCount:0,u=n.lastMs>0&&r.nowMs-n.lastMs<=r.recencyMs;return n.isReal=n.eventCount>=r.minEvents&&i.size>=r.minProjects&&u&&c>=r.minAvgBytes,n}function Vc(t){let e=sj({home:t?.home}),r=t?.loadDatabase??tt,n={...cj,...t?.filter??{},nowMs:t?.filter?.nowMs??Date.now()},o=[],s=0,i=0,a=0;for(let c of e){if(!$r(c.sessionsDir))continue;let u=uj(c,r,n);o.push(u),s+=u.eventCount,i+=u.sessionCount,a+=u.dataBytes+u.rescueBytes}return{totalEvents:s,totalSessions:i,totalBytes:a,perAdapter:o}}var Bk={project:"What you're building",feedback:"How you work",user:"Who you are",reference:"Where to look",memory:"Long-term context",other:"Other notes"},lj={"claude-code":"Claude Code","gemini-cli":"Gemini CLI",antigravity:"Antigravity",openclaw:"Openclaw",codex:"Codex CLI",cursor:"Cursor","vscode-copilot":"VS Code Copilot",kiro:"Kiro",pi:"Pi",omp:"OMP","qwen-code":"Qwen Code",kilo:"Kilo",opencode:"OpenCode",zed:"Zed","jetbrains-copilot":"JetBrains"};function Zc(t){return lj[t]??t}function Ge(t){if(!Number.isFinite(t)||t<=0)return"0 B";if(t<1024)return`${Math.round(t)} B`;let e=t/1024;if(e<1024)return e<100?`${e.toFixed(1)} KB`:`${Math.round(e)} KB`;let r=e/1024;if(r<1024)return r<100?`${r.toFixed(1)} MB`:`${Math.round(r)} MB`;let n=r/1024;return n<100?`${n.toFixed(2)} GB`:`${n.toFixed(1)} GB`}function dj(t){let e=parseFloat(t);if(isNaN(e)||e<1)return"< 1 min";if(e<60)return`${Math.round(e)} min`;let r=Math.floor(e/60),n=Math.round(e%60);return n>0?`${r}h ${n}m`:`${r}h`}function Hc(t){if(!t)return!1;try{return Intl.DateTimeFormat.supportedLocalesOf(t).length===0?!1:(new Intl.DateTimeFormat(t),!0)}catch{return!1}}function pj(){let t=process.env??{},e=t.CONTEXT_MODE_LOCALE??"";if(e&&!Hc(e)&&(e=""),!e){if(process.platform==="darwin"){try{let n=tj("defaults",["read","-g","AppleLocale"],{encoding:"utf8",timeout:500}).trim();n&&(e=n.replace(/_/g,"-"))}catch{}e&&!Hc(e)&&(e="")}if(!e&&(t.LC_TIME||t.LANG)){let n=(t.LC_TIME||t.LANG||"").split(".")[0];n&&(e=n.replace(/_/g,"-")),e&&!Hc(e)&&(e="")}if(!e)try{e=new Intl.DateTimeFormat().resolvedOptions().locale}catch{e="en-US"}}let r=t.CONTEXT_MODE_TZ??"";if(!r)try{r=new Intl.DateTimeFormat().resolvedOptions().timeZone}catch{r="UTC"}return Hc(e)||(e="en-US"),{locale:e,tz:r||"UTC"}}function Nk(t){let e=qc();return e?t===e?"~":t.startsWith(e+nj)?"~"+t.slice(e.length):t:t}function fj(t,e,r){if(!Number.isFinite(e)||e<=0)return[];let n=e*15/1e6,o=(h,g=2)=>h.toFixed(g),s=Math.round(n/20),i=(n/200).toFixed(1),a=Math.round(n/73.67),c=Math.round(n*10),u=r>0?Math.round(n*10/r*365):0,d=(e*3/1e6).toFixed(2),l=(e*2.5/1e6).toFixed(2),f=(e*1.25/1e6).toFixed(2),m=(e*.8/1e6).toFixed(2),p=[];return p.push(` $${o(n)} of Opus 4 tokens your team didn't burn.`),p.push(` context-mode kept ${Ge(t)} out of context \u2014 that's ${s} months of Cursor Pro paid for itself.`),c>0&&u>0&&(p.push(""),p.push(` Scale across a 10-dev team and that's ~$${u.toLocaleString("en-US")}/year saved.`)),p.push(""),p.push(" (Opus rates shown for context. On cheaper models the dollar number drops; the savings ratio holds.)"),p}function mj(t){let{conversation:e,lifetime:r,multiAdapter:n,realBytes:o,cwd:s,locale:i,tz:a,now:c,version:u,latestVersion:d}=t,l=[],f=e.events*Lk,m=Math.round((e.snapshotBytes??0)/4),p=f+m,h=o?.conversation?.totalSavedTokens??0,g=Math.max(p,h),_=(r?.totalEvents??0)*Lk,x=Math.round((r?.rescueBytes??0)/4),y=_+x,S=o?.lifetime?.totalSavedTokens??0,E=Math.max(y,S),O=o?.lifetime?.bytesReturned??0,L=o?.lifetime?.bytesAvoided??0,A=O+L>0?Math.max(1,Math.floor(O/4)):Math.max(1,Math.round(E*.02)),z=n?.totalBytes&&n.totalBytes>0?n.totalBytes:E*4,w=o?.conversation?o.conversation.eventDataBytes+o.conversation.bytesAvoided+o.conversation.snapshotBytes:g*4,P=e.daysAlive>=1?`${e.daysAlive.toFixed(1)} days alive \xB7 still going`:`${Math.max(1,Math.round(e.daysAlive*24))} hr alive \xB7 still going`,N=r?.firstEventMs??n?.perAdapter?.[0]?.firstMs??0,Q=N>0?Math.max(1,Math.round((c-N)/864e5)):0,nr=n?.totalSessions??r?.totalSessions??1,au=n?.perAdapter.filter(Ne=>Ne.isReal).length??0,Xo;if(n&&au>=2)Xo=`across ${au} AI tools`;else if(n&&au===1){let Ne=n.perAdapter.find(Ut=>Ut.isReal);Xo=`in ${Ne?Zc(Ne.name):"Claude Code"}`}else Xo="in Claude Code";Q>0?l.push(` Across ${Q} days you ran ${Qt(nr)} conversations ${Xo}.`):l.push(` You ran ${Qt(nr)} conversations ${Xo}.`);let lE=Q>0?z/Q:0;l.push(` context-mode kept ${Ge(z)} out of your context window \u2014 about ${Ge(lE)} every single day.`),l.push(""),l.push(""),l.push(" \u2500\u2500\u2500 1. Where you are now \u2500\u2500\u2500"),l.push("");let Eh=e.firstEventMs&&e.firstEventMs>0?Dk(e.firstEventMs,i,a):"";if(Eh?l.push(` This conversation started ${Eh} in ${Nk(s)}.`):l.push(` This conversation lives in ${Nk(s)}.`),l.push(` ${P}.`),e.snapshotsConsumed>0&&e.snapshotBytes>0){let Ne=e.lastRescueMs&&e.lastRescueMs>0?Dk(e.lastRescueMs,i,a):"",Ut=Math.round(e.snapshotBytes/1024);Ne?l.push(` On ${Ne}, /compact fired \u2014 ${Ut} KB rescued from snapshot.`):l.push(` /compact fired \u2014 ${Ut} KB rescued from snapshot.`),l.push(" Without that, you'd be re-explaining everything to a blank model right now.")}l.push("");let cu=o?.conversation,wh=cu?.bytesAvoided??0,uu=cu?.bytesReturned??0,lu=cu?.eventDataBytes??0;if(wh+uu+lu>0){let Ne=wh+uu+lu,Ut=Math.max(1,uu+lu),Ht=Math.max(1,Math.floor(Ne/4)),mr=Math.max(1,Math.floor(Ut/4)),du=tn(Ht,Ht,32),hE=tn(mr,Ht,32),gE=(1-mr/Ht)*100,yE=Math.max(1,Math.round(Ht/mr));l.push(` Without context-mode ${Ge(Ne).padStart(8)} ${du} ${Qt(Ht).padStart(7)} tokens`),l.push(` With context-mode ${Ge(Ut).padStart(8)} ${hE} ${Qt(mr).padStart(7)} tokens`),l.push(` ${gE.toFixed(0)}% kept out of context \xB7 your AI ran ${yE}\xD7 longer before /compact fired`),l.push("")}if(e.byDay&&e.byDay.length>0){let Ne=e.lastEventMs&&e.firstEventMs?Math.max(1,Math.round((e.lastEventMs-e.firstEventMs)/864e5)+1):e.byDay.length;l.push(` How that ${Ge(w)} built up \u2014 ${Ne} days, ${e.byDay.length} active:`),l.push(""),l.push(...gj(e.byDay,i,a))}l.push(""),l.push(""),l.push(" \u2500\u2500\u2500 2. What this chat captured (used when you --continue or /resume here) \u2500\u2500\u2500"),l.push("");let dE=e.byCategory.reduce((Ne,Ut)=>Ne+Ut.count,0).toLocaleString(i);l.push(` ${dE} things \u2014 files, errors, decisions, agent runs:`),l.push("");let pE=e.byCategory[0]?.count??1;for(let Ne of e.byCategory)l.push(` ${Ne.label.padEnd(26)} ${String(Ne.count).padStart(5)} ${tn(Ne.count,pE,28)}`);l.push(""),l.push(""),l.push(" \u2500\u2500\u2500 3. The scope, getting wider \u2500\u2500\u2500"),l.push("");let Th=e.firstEventMs&&e.firstEventMs>0?new Intl.DateTimeFormat(i,{timeZone:a,year:"numeric",month:"short",day:"numeric"}).format(new Date(e.firstEventMs)):"",Ph=N>0?new Intl.DateTimeFormat(i,{timeZone:a,year:"numeric",month:"short",day:"numeric"}).format(new Date(N)):"",Rh=r?.distinctProjects??0,fE=r?.totalEvents??n?.totalEvents??0;if(l.push(` This chat: ${Ge(w)} kept out \xB7 ${e.events.toLocaleString(i)} captures${Th?` \xB7 started ${Th}`:""}.`),l.push(` All your work: ${Ge(z)} kept out \xB7 ${fE.toLocaleString(i)} captures across ${Rh} project${Rh===1?"":"s"}${Ph?` \xB7 since ${Ph}`:""}.`),l.push(""),l.push(""),l.push(" \u2500\u2500\u2500 4. The bottom line \u2500\u2500\u2500"),l.push(""),l.push(...fj(z,E,Q)),l.push(""),l.push(""),l.push(" \u2500\u2500\u2500 5. What context-mode learned about how you work \u2500\u2500\u2500"),l.push(""),r&&r.autoMemoryCount>0){l.push(` ${r.autoMemoryCount} preferences picked up across ${r.autoMemoryProjects} project${r.autoMemoryProjects===1?"":"s"}:`);let Ne=Object.entries(r.autoMemoryByPrefix).sort((Ht,mr)=>mr[1]-Ht[1]),Ut=Ne.length>0?Ne[0][1]:1;for(let[Ht,mr]of Ne){let du=Bk[Ht]??Ht;l.push(` ${du.padEnd(26)} ${String(mr).padStart(2)} ${tn(mr,Ut,20)}`)}}else l.push(" No preferences learned yet \u2014 context-mode picks them up automatically.");l.push(""),l.push(""),l.push(" Your AI talks less, remembers more, costs less."),l.push(` Locale ${i} \xB7 timezone ${a} \xB7 pricing examples for illustration only.`),l.push("");let mE=u?`v${u}`:"context-mode";return l.push(` ${mE}`),u&&d&&d!=="unknown"&&Hk(d,u)&&l.push(` Update available: v${u} -> v${d} | ctx_upgrade`),hj(l)}function hj(t){let e=[],r=0;for(let n of t)n===""?(r++,r<=2&&e.push(n)):(r=0,e.push(n));for(;e.length>0&&e[e.length-1]==="";)e.pop();return e}function gj(t,e,r){if(t.length===0)return[];let n=[...t].sort((f,m)=>f.ms-m.ms),o=n[0],s=n[n.length-1],i=Math.max(1,s.ms-o.ms),a=n[0];for(let f of n)f.count>a.count&&(a=f);let c=56,u=Array.from({length:c},()=>"\u2500");for(let f of n){let m=Math.round((f.ms-o.ms)/i*(c-1)),p="\u25CF";f===a&&(p="\u2588"),(f.rescueBytes??0)>0&&(p="\u25C6"),u[m]=p}let d=f=>{let m=new Intl.DateTimeFormat(e,{timeZone:r,month:"short",day:"numeric"}).formatToParts(new Date(f)),p=(m.find(g=>g.type==="month")?.value??"").toLowerCase(),h=m.find(g=>g.type==="day")?.value??"";return`${p} ${h}`},l=[];l.push(` ${d(o.ms)} ${u.join("")} ${d(s.ms)}`),l.push("");for(let f of n){let m=d(f.ms).padEnd(7),p=`${f.count} captures`,h=f===a?" \u2190 peak":"",g=(f.rescueBytes??0)>0?` \u25C6 /compact rescued ${Math.round((f.rescueBytes??0)/1024)} KB`:"";l.push(` ${m} ${p}${h}${g}`)}return l.push(""),l.push(" \u25CF active day \u2588 peak day \u25C6 /compact rescue"),l}function Dk(t,e,r){if(!Number.isFinite(t)||t<=0)return"";let n=new Date(t);if(Number.isNaN(n.getTime()))return"";let o=new Intl.DateTimeFormat(e,{timeZone:r,year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",hour12:!1}).formatToParts(n),s=l=>o.find(f=>f.type===l)?.value??"",i=s("day"),a=s("month"),c=s("year"),u=s("hour"),d=s("minute");return u==="24"&&(u="00"),`${i} ${a} ${c} at ${u}:${d} (${r})`}function Qt(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}K`:String(t)}var Wc=15/1e6;function Bc(t){return`$${((Number.isFinite(t)&&t>0?t:0)*Wc).toFixed(2)}`}function tn(t,e,r=40){if(e<=0)return"\u2591".repeat(r);let n=Math.max(1,Math.round(t/e*r));return"\u2588".repeat(Math.min(n,r))+"\u2591".repeat(Math.max(0,r-n))}function Mk(t,e){let r=e?.sessionTokensSaved??0;if(t.total_events===0&&(e?.lifetime?.totalEvents??0)===0&&r===0&&(e?.multiAdapter?.totalEvents??0)===0)return[];let n=e?.topN??Number.POSITIVE_INFINITY,o=[];o.push("");let s=e?.multiAdapter,i=s?.perAdapter.filter(h=>h.isReal).length??0,a=s?.totalEvents??e?.lifetime?.totalEvents??t.total_events,c=s?.totalSessions??e?.lifetime?.totalSessions??t.session_count,u=e?.lifetime?.distinctProjects;if(a>0&&u&&u>0){let h=i>=2?" everywhere":"";o.push(` All your work${h} \xB7 ${Qt(a)} events captured across ${u} project${u===1?"":"s"} \xB7 ${Qt(c)} conversations`)}else{o.push("Persistent memory \u2713 preserved across compact, restart & upgrade");let h=c===0&&r>0?1:c,g=h===1?"1 session":`${Qt(h)} sessions`,_=a*256+r;o.push(` ${Qt(a)} events \xB7 ${g} \xB7 ~${Bc(_)} saved lifetime`)}o.push("");let d=e?.lifetime?.categoryCounts,l;d&&Object.keys(d).length>0?l=Object.entries(d).filter(([,h])=>h>0).map(([h,g])=>({category:h,count:g,label:Fc[h]||h})).sort((h,g)=>g.count-h.count):l=(t.by_category??[]).filter(h=>h&&h.count>0);let f=l.slice(0,n),m=f.length>0?f[0].count:1;for(let h of f)o.push(` ${h.label.padEnd(26)} ${String(h.count).padStart(5)} ${tn(h.count,m,30)}`);let p=Math.max(0,l.length-n);return p>0&&o.push(` ... ${p} more categor${p===1?"y":"ies"}`),o}function jk(t){if(!t||t.autoMemoryCount===0)return[];let e=[];e.push(""),e.push(` Preferences learned \xB7 ${t.autoMemoryCount} across ${t.autoMemoryProjects} project${t.autoMemoryProjects===1?"":"s"}`);let r=Object.entries(t.autoMemoryByPrefix).sort((o,s)=>s[1]-o[1]).slice(0,6),n=r.length>0?r[0][1]:1;for(let[o,s]of r){let i=Bk[o]??o;e.push(` ${i.padEnd(26)} ${String(s).padStart(2)} ${tn(s,n,20)}`)}return e}function zk(t,e){let r=[],n=Bc(t),o=(e?.totalEvents??0)*256+t,s=Bc(o);return r.push(""),r.push("\u2500".repeat(65)),r.push("Your AI talks less, remembers more, costs less."),r.push(`${n} this session \xB7 ${s} lifetime`),r.push("\u2500".repeat(65)),r}var Lk=256;function Uk(t){if(!t)return[];let e=t.perAdapter.filter(o=>o.isReal),r=t.perAdapter.filter(o=>!o.isReal);if(e.length===0&&r.length===0)return[];let n=[];if(e.length>0){n.push(""),n.push("Where it came from (tools you actually used \u2014 fixtures + probes filtered):"),n.push("");let o=16,s=10,i=10,a=16;n.push(` ${"Tool".padEnd(o)}${"Captures".padStart(s)}${"Indexed".padStart(i)}${"Total kept out".padStart(a)}`);let c=[...e].sort((u,d)=>d.dataBytes+d.rescueBytes-(u.dataBytes+u.rescueBytes));for(let u of c){let d=u.dataBytes+u.rescueBytes,l=u.eventCount>0?Qt(u.eventCount):"\u2014",f=Ge(u.dataBytes),m=Ge(d);n.push(` ${Zc(u.name).padEnd(o)}${l.padStart(s)}${f.padStart(i)}${m.padStart(a)}`)}}if(r.length>0){e.length>0&&n.push("");let o=r.map(s=>Zc(s.name)).join(", ");n.push(` Skipped (${r.length}): ${o}`),n.push(" These adapters have DBs on disk but only test fixtures, dev skeletons,"),n.push(" or detection probes \u2014 no real chat activity.")}return n}function Kc(t,e,r,n){let o=[],s=dj(t.session.uptime_min),i=n?.lifetime,a=n?.mcpUsage,c=n?.conversation,u=n?.realBytes,d=n?.multiAdapter,l=d?.perAdapter.filter(O=>O.isReal).length??0;if(d&&l>0){let O=d.totalSessions||i?.totalSessions||0,L=i?.firstEventMs??0,A=L>0?Math.max(1,Math.round((Date.now()-L)/864e5)):0,z=A>0?`Across ${A} day${A===1?"":"s"} `:"",w=O>0?`you ran ${Qt(O)} conversation${O===1?"":"s"} `:"you ran ",P;if(l>=2)P=`across ${l} AI tools`;else{let N=d.perAdapter.find(Q=>Q.isReal);P=`in ${N?Zc(N.name):"Claude Code"}`}o.push(`${z}${w}${P}.`),o.push("")}if(c&&c.events>0){o.length>0&&(o.length=0);let O=pj(),L=n?.cwd??process.cwd(),A=n?.now??Date.now(),z=n?.locale??O.locale,w=n?.tz??O.tz;return o.push(...mj({conversation:c,lifetime:i,multiAdapter:d,realBytes:u,cwd:L,locale:z,tz:w,now:A,version:e,latestVersion:r})),o.join(`
|
|
539
539
|
`)}let f=t.savings.kept_out+(t.cache?t.cache.bytes_saved:0),m=t.savings.total_bytes_returned,p=t.savings.total_calls,h=f+m,g=h>0?f/h*100:0,_=Math.round(f/4),x=m>0?Math.max(1,Math.round(h/Math.max(m,1))):0;if(f===0){o.push(`context-mode ${s} ${p} calls`),o.push(""),p===0?o.push("No tool calls yet. Use batch_execute or execute to start saving tokens."):o.push(`${Ge(m)} entered context | 0 tokens saved`),o.push(...Mk(t.projectMemory,{lifetime:i,multiAdapter:d,sessionTokensSaved:0})),o.push(...Uk(d)),o.push(...jk(i)),o.push(...zk(0,i)),o.push("");let O=e?`v${e}`:"context-mode";return o.push(O),e&&r&&r!=="unknown"&&Hk(r,e)&&o.push(`Update available: v${e} -> v${r} | ctx_upgrade`),o.join(`
|
|
540
540
|
`)}o.push(`${Qt(_)} tokens saved \xB7 ${g.toFixed(1)}% reduction \xB7 ${s} \xB7 ~${Bc(_)} saved (Opus)`),o.push(""),o.push(`Without context-mode |${tn(h,h)}| ${Ge(h)}`),o.push(`With context-mode |${tn(m,h)}| ${Ge(m)}`),o.push(""),x>=2?o.push(`${Ge(f)} kept out of your conversation \u2014 ${x}\xD7 longer sessions before compact.`):o.push(`${Ge(f)} kept out of your conversation. Never entered context.`),o.push("");let y=[`${p} calls`];t.cache&&t.cache.hits>0&&y.push(`${t.cache.hits} cache hits (+${Ge(t.cache.bytes_saved)})`),o.push(y.join(" \xB7 "));let S=t.savings.by_tool.filter(O=>O.calls>0);if(S.length>=2){o.push("");let O=S.map(L=>{let A=L.context_kb*1024,z=g<100?A/(1-g/100):A,w=Math.max(0,z-A);return{...L,returnedBytes:A,estimatedSaved:w}}).sort((L,A)=>A.estimatedSaved-L.estimatedSaved);for(let L of O){let A=L.tool.length>22?L.tool.slice(0,19)+"...":L.tool;o.push(` ${A.padEnd(22)} ${String(L.calls).padStart(4)} calls ${Ge(L.estimatedSaved).padStart(8)} saved`)}}if(a&&a.length>0){let O=a.filter(L=>L.median_concurrency!=null&&(L.max_concurrency??1)>1);if(O.length>0){o.push(""),o.push("Parallel I/O \u2713 one call did the work of many \u2014 faster runs, lower bill, same answer.");for(let L of O){let A=L.tool_name.replace(/^mcp__.*?__/,"");o.push(` ${A.padEnd(22)} ${L.calls} batches \xB7 ${L.median_concurrency} typical, ${L.max_concurrency} peak`)}}}o.push(...Mk(t.projectMemory,{lifetime:i,multiAdapter:d,sessionTokensSaved:_})),o.push(...Uk(d)),o.push(...jk(i)),o.push(...zk(_,i)),o.push("");let E=e?`v${e}`:"context-mode";return o.push(E),e&&r&&r!=="unknown"&&r!==e&&o.push(`Update available: v${e} -> v${r} | ctx_upgrade`),o.join(`
|
|
541
|
-
`)}var kt=Lt(Ej(import.meta.url)),
|
|
541
|
+
`)}var kt=Lt(Ej(import.meta.url)),Or=(()=>{for(let t of["../package.json","./package.json"]){let e=je(kt,t);if(Te(e))try{return JSON.parse(su(e,"utf8")).version}catch{}}return"unknown"})();process.env.CONTEXT_MODE_EMBEDDED_PLUGIN_TOOLS!=="1"&&(process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
|
|
542
542
|
`)}),process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
|
|
543
|
-
`)}));var Pi=hc(),Xc=Rb(Pi),Me=new dc({name:"context-mode",version:
|
|
543
|
+
`)}));var Pi=hc(),Xc=Rb(Pi),Me=new dc({name:"context-mode",version:Or}),Rj=[];function $j(t={}){if((t.embedded??process.env.CONTEXT_MODE_EMBEDDED_PLUGIN_TOOLS)==="1")return!1;let r=t.platform??Tr().platform;if(r!=="opencode"&&r!=="kilo")return!1;let n=t.settings??Oj(r);return Ij(n)&&Aj(n)}function Cj(t){let e="",r=!1,n=!1,o=!1;for(let s=0;s<t.length;s++){let i=t[s],a=t[s+1];if(o){i==="*"&&a==="/"&&(o=!1,s++);continue}if(n){e+=i,n=!1;continue}if(i==="\\"){e+=i,n=r;continue}if(i==='"'){r=!r,e+=i;continue}if(!r&&i==="/"&&a==="/"){for(;s<t.length&&t[s]!==`
|
|
544
544
|
`;)s++;s<t.length&&(e+=`
|
|
545
|
-
`);continue}if(!r&&i==="/"&&a==="*"){o=!0,s++;continue}e+=i}return e.replace(/,(\s*[}\]])/g,"$1")}function Oj(t){let e=t==="kilo"?"kilo":"opencode",r=[je(`${e}.json`),je(`${e}.jsonc`),je(`.${e}`,`${e}.json`),je(`.${e}`,`${e}.jsonc`),
|
|
546
|
-
`);process.on("exit",()=>{try{Go(iu)}catch{}});var er=null;function Yo(){let t=bh.getStore();if(t?.sessionId)return{sessionId:t.sessionId};let e=process.env.CLAUDE_SESSION_ID??Mj();if(e)return{sessionId:e}}var Gc;function Mj(t){let e=Date.now();if(!t?.bypassCache&&Gc&&e-Gc.checkedAt<2e3)return Gc.sid;try{let r=t?.projectDir??process.env.CLAUDE_PROJECT_DIR??process.env.CONTEXT_MODE_PROJECT_DIR;if(!r)return;let n=t?.sessionsDir??Je(),o=vi({projectDir:r,sessionsDir:n});if(!
|
|
545
|
+
`);continue}if(!r&&i==="/"&&a==="*"){o=!0,s++;continue}e+=i}return e.replace(/,(\s*[}\]])/g,"$1")}function Oj(t){let e=t==="kilo"?"kilo":"opencode",r=[je(`${e}.json`),je(`${e}.jsonc`),je(`.${e}`,`${e}.json`),je(`.${e}`,`${e}.jsonc`),ye(Jo(),".config",e,`${e}.json`),ye(Jo(),".config",e,`${e}.jsonc`)];for(let n of r)try{if(!Te(n))continue;return JSON.parse(Cj(su(n,"utf8")))}catch{}return null}function Ij(t){let e=t?.plugin;return Array.isArray(e)&&e.some(r=>typeof r=="string"&&r.includes("context-mode"))}function Aj(t){let e=t?.mcp;return!!(e&&typeof e=="object"&&!Array.isArray(e)&&Object.prototype.hasOwnProperty.call(e,"context-mode"))}var Nj=$j(),Dj=Me.registerTool.bind(Me);Me.registerTool=(...t)=>{let[e,r,n]=t;if(!Nj)return Rj.push({name:e,config:r,handler:n}),Dj(...t)};var bh=new Pj;async function E9(t,e){let r=typeof t=="string"?{projectDir:t}:t;return bh.run(r,e)}Me.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});Me.server.setRequestHandler(go,async()=>({prompts:[]}));Me.server.setRequestHandler(mo,async()=>({resources:[]}));Me.server.setRequestHandler(ho,async()=>({resourceTemplates:[]}));var Ri=new si({runtimes:Pi,projectRoot:()=>rr()}),iu=ye(vh(),`cm-fs-preload-${process.pid}.js`);xh(iu,`(function(){var __cm_fs=0;process.on('exit',function(){if(__cm_fs>0)try{process.stderr.write('__CM_FS__:'+__cm_fs+'\\n')}catch(e){}});try{var f=require('fs');var ors=f.readFileSync;f.readFileSync=function(){var r=ors.apply(this,arguments);if(Buffer.isBuffer(r))__cm_fs+=r.length;else if(typeof r==='string')__cm_fs+=Buffer.byteLength(r);return r;};}catch(e){}})();
|
|
546
|
+
`);process.on("exit",()=>{try{Go(iu)}catch{}});var er=null;function Yo(){let t=bh.getStore();if(t?.sessionId)return{sessionId:t.sessionId};let e=process.env.CLAUDE_SESSION_ID??Mj();if(e)return{sessionId:e}}var Gc;function Mj(t){let e=Date.now();if(!t?.bypassCache&&Gc&&e-Gc.checkedAt<2e3)return Gc.sid;try{let r=t?.projectDir??process.env.CLAUDE_PROJECT_DIR??process.env.CONTEXT_MODE_PROJECT_DIR;if(!r)return;let n=t?.sessionsDir??Je(),o=vi({projectDir:r,sessionsDir:n});if(!Te(o))return;let s=tt(),i=new s(o,{readonly:!0,fileMustExist:!0});try{let c=i.prepare("SELECT session_id FROM session_events ORDER BY created_at DESC LIMIT 1").get()?.session_id;return c&&(Gc={sid:c,checkedAt:e}),c}finally{try{i.close()}catch{}}}catch{return}}function jj(t){try{let e=Je();if(!Te(e))return;let r=yj(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=ye(e,n);try{t.index({path:o,source:"session-events",attribution:Yo()}),Go(o)}catch{}}}catch{}}var rn=null,Cr=null;function yh(){return vt()}async function zj(){if(rn)return rn;try{let{getAdapter:t}=await Promise.resolve().then(()=>(Gn(),Dc)),e=Tr();return await t(e.platform)}catch{return null}}function Je(){if(rn)return rn.getSessionDir();try{let e=Tr(),r=mi(e.platform);if(r){let n=ye(Jo(),...r);r.length===1&&r[0]===".claude"?n=yh():r.length===1&&r[0]===".codex"&&(n=wc());let o=ye(n,"context-mode","sessions");return wi(o,{recursive:!0}),o}}catch{}let t=ye(yh(),"context-mode","sessions");return wi(t,{recursive:!0}),t}function rr(){let t=bh.getStore();if(t)return t.projectDir;let e,r;try{let n=Tr().platform;r=n,n==="claude-code"&&(e=ye(Jo(),".claude","projects"))}catch{}return Ak({env:process.env,cwd:process.cwd(),pwd:process.env.PWD,transcriptsRoot:e,transcriptMaxAgeMs:300*1e3,strictPlatform:r})}function Lj(t){return kj(t)?t:je(rr(),t)}function Ti(){return vi({projectDir:rr(),sessionsDir:Je()})}function eu(){let t=ye(Lt(Je()),"content");return wi(t,{recursive:!0}),vk({projectDir:rr(),contentDir:t})}function Yn(){if(!er){let t=eu();er=new vc(t),er.setDenyChecker(e=>{try{let r=rr(),n=th("Read",r);return nh(e,n,process.platform==="win32",r).denied}catch{return!0}});try{let e=Lt(eu());rm(e,14),er.cleanupStaleSources(14);let r=ye(Jo(),".context-mode","content");Te(r)&&rm(r,0)}catch{}tm()}return jj(er),er}var re={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()},Ir=null,Jc=0,Wk=0,Uj=3,Hj=3600*1e3;async function Kk(){return new Promise(t=>{let e=Tj("https://registry.npmjs.org/context-mode/latest",{headers:{Connection:"close"}},r=>{let n="";r.on("data",o=>{n+=o}),r.on("end",()=>{try{let o=JSON.parse(n);t(o.version??"unknown")}catch{t("unknown")}})});e.on("error",()=>t("unknown")),e.setTimeout(5e3,()=>{e.destroy(),t("unknown")}),e.end()})}function Fj(){let t=rn?.name;return t==="Claude Code"?"/ctx-upgrade":t==="OpenClaw"?"npm run install:openclaw":t==="Pi"?"npm run build":"npm update -g context-mode"}function Zj(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}function Bj(){return!Ir||Ir==="unknown"?!1:Zj(Ir,Or)}function qj(){if(!Bj())return!1;let t=Date.now();if(Jc>=Uj){if(t-Wk<Hj)return!1;Jc=0}return Jc===0&&(Wk=t),Jc++,!0}var Gk=!1;function Vj(){if(!Gk){Gk=!0;try{let t=vt(),e=je(t,"plugins","installed_plugins.json");if(!Te(e))return;let r=JSON.parse(su(e,"utf-8")),n=je(t,"plugins","cache"),o=Te(je(kt,"package.json"))?kt:Lt(kt);for(let[s,i]of Object.entries(r.plugins??{}))if(s==="context-mode@context-mode")for(let a of i){let c=a.installPath;if(!c||Te(c)||!je(c).startsWith(n+Sj))continue;try{bj(c).isSymbolicLink()&&Go(c)}catch{}let u=Lt(c);Te(u)||wi(u,{recursive:!0}),Te(o)&&vj(o,c,process.platform==="win32"?"junction":void 0)}}catch{}}}function B(t,e){if(Vj(),qj()&&e.content.length>0){let n=Fj();e.content[0].text=`\u26A0\uFE0F context-mode v${Or} outdated \u2192 v${Ir} available. Upgrade: ${n}
|
|
547
547
|
|
|
548
|
-
`+e.content[0].text}let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return re.calls[t]=(re.calls[t]||0)+1,re.bytesReturned[t]=(re.bytesReturned[t]||0)+r,tu(),setImmediate(()=>Tk(Ti(),t,r)),(t==="ctx_execute"||t==="ctx_execute_file"||t==="ctx_batch_execute")&&setImmediate(()=>Sk({sessionDbPath:Ti(),toolName:t,bytesReturned:r})),e}function tr(t,e="unknown"){re.bytesIndexed+=t,tu(),t>0&&setImmediate(()=>kk({sessionDbPath:Ti(),source:e,bytesAvoided:t}))}var Wj=500,Kj=2,Gj=3e4,Jj=256,_h=0,Yc;function oE(){let t=process.env.CLAUDE_SESSION_ID||`pid-${process.ppid}`;return
|
|
548
|
+
`+e.content[0].text}let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return re.calls[t]=(re.calls[t]||0)+1,re.bytesReturned[t]=(re.bytesReturned[t]||0)+r,tu(),setImmediate(()=>Tk(Ti(),t,r)),(t==="ctx_execute"||t==="ctx_execute_file"||t==="ctx_batch_execute")&&setImmediate(()=>Sk({sessionDbPath:Ti(),toolName:t,bytesReturned:r})),e}function tr(t,e="unknown"){re.bytesIndexed+=t,tu(),t>0&&setImmediate(()=>kk({sessionDbPath:Ti(),source:e,bytesAvoided:t}))}var Wj=500,Kj=2,Gj=3e4,Jj=256,_h=0,Yc;function oE(){let t=process.env.CLAUDE_SESSION_ID||`pid-${process.ppid}`;return ye(Je(),`stats-${t}.json`)}function tu(){let t=Date.now();if(!(t-_h<Wj)){_h=t;try{let e=Object.values(re.bytesReturned).reduce((l,f)=>l+f,0),r=Object.values(re.calls).reduce((l,f)=>l+f,0),n=re.bytesIndexed+re.bytesSandboxed+re.cacheBytesSaved,o=n+e,s=o>0?Math.round((1-e/o)*100):0,i=Math.round(n/4),a=Yc?.tokens??0;if(!Yc||t-Yc.computedAt>Gj)try{a=(ki({sessionsDir:Je()})?.totalEvents??0)*Jj,Yc={tokens:a,computedAt:t}}catch{}let c={schemaVersion:Kj,version:Or,updated_at:t,session_start:re.sessionStart,uptime_ms:t-re.sessionStart,total_calls:r,bytes_returned:e,bytes_indexed:re.bytesIndexed,bytes_sandboxed:re.bytesSandboxed,cache_hits:re.cacheHits,cache_bytes_saved:re.cacheBytesSaved,kept_out:n,total_processed:o,reduction_pct:s,tokens_saved:i,dollars_saved_session:+(i*Wc).toFixed(2),tokens_saved_lifetime:a,dollars_saved_lifetime:+(a*Wc).toFixed(2),by_tool:Object.fromEntries(Object.keys({...re.calls,...re.bytesReturned}).map(l=>[l,{calls:re.calls[l]||0,bytes:re.bytesReturned[l]||0}]))},u=oE(),d=`${u}.tmp`;xh(d,JSON.stringify(c)),_j(d,u)}catch{}}}function Sh(t,e){try{let r=eh(process.env.CLAUDE_PROJECT_DIR),n=rh(t,r);if(n.decision==="deny")return B(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function sE(t,e,r){try{let n=mk(t,e);if(n.length===0)return null;let o=eh(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=rh(s,o);if(i.decision==="deny")return B(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 iE(t,e){try{let r=rr(),n=th("Read",r),o=nh(t,n,process.platform==="win32",r);if(o.denied)return B(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${o.matchedPattern}`}],isError:!0})}catch{}return null}var Yj=Xc.join(", "),Xj=gc()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",Qj="",ez="";function tz(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===Qj){for(e.push(r),n++;n<t.length&&t[n]!==ez;)r++,n++;n<t.length&&n++}else r++,n++;return e}function aE(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of tz(n))o.push(u);if(o.length===0){let u=e.toLowerCase().split(/\s+/).filter(l=>l.length>2),d=t.toLowerCase();for(let l of u){let f=d.indexOf(l);for(;f!==-1;)o.push(f),f=d.indexOf(l,f+1)}}if(o.length===0)return t.slice(0,r)+`
|
|
549
549
|
\u2026`;o.sort((u,d)=>u-d);let s=300,i=[];for(let u of o){let d=Math.max(0,u-s),l=Math.min(t.length,u+s);i.length>0&&d<=i[i.length-1][1]?i[i.length-1][1]=l:i.push([d,l])}let a=[],c=0;for(let[u,d]of i){if(c>=r)break;let l=t.slice(u,Math.min(d,u+(r-c)));a.push((u>0?"\u2026":"")+l+(d<t.length?"\u2026":"")),c+=l.length}return a.join(`
|
|
550
550
|
|
|
551
551
|
`)}function rz(t,e,r,n=80*1024){let o=[],s=0;for(let i of e){if(s>n){o.push(`## ${i}
|
|
@@ -669,7 +669,7 @@ ctx_search is a follow-up tool that queries previously indexed content. To gathe
|
|
|
669
669
|
\u2022 ctx_fetch_and_index(url) \u2014 fetch a URL, index it, then search with ctx_search
|
|
670
670
|
\u2022 ctx_index(content, source) \u2014 manually index text content
|
|
671
671
|
|
|
672
|
-
After indexing, ctx_search becomes available for follow-up queries.`}],isError:!0});let n=t,o=[];if(Array.isArray(n.queries)&&n.queries.length>0?o.push(...n.queries):typeof n.query=="string"&&n.query.length>0&&o.push(n.query),o.length===0)return B("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:s=3,source:i,contentType:a}=t,c=Date.now();if(c-mh>az&&(Jn=0,mh=c),Jn++,Jn>Xk)return B("ctx_search",{content:[{type:"text",text:`BLOCKED: ${Jn} search calls in ${Math.round((c-mh)/1e3)}s. You're flooding context. STOP making individual search calls. Use ctx_batch_execute(commands, queries) for your next research step.`}],isError:!0});let u=Jn>Yk?1:Math.min(s,2),d=40*1024,l=0,f=[],m=null;if(r==="timeline")try{let g=Je(),_=rr(),x=vi({projectDir:_,sessionsDir:g});
|
|
672
|
+
After indexing, ctx_search becomes available for follow-up queries.`}],isError:!0});let n=t,o=[];if(Array.isArray(n.queries)&&n.queries.length>0?o.push(...n.queries):typeof n.query=="string"&&n.query.length>0&&o.push(n.query),o.length===0)return B("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:s=3,source:i,contentType:a}=t,c=Date.now();if(c-mh>az&&(Jn=0,mh=c),Jn++,Jn>Xk)return B("ctx_search",{content:[{type:"text",text:`BLOCKED: ${Jn} search calls in ${Math.round((c-mh)/1e3)}s. You're flooding context. STOP making individual search calls. Use ctx_batch_execute(commands, queries) for your next research step.`}],isError:!0});let u=Jn>Yk?1:Math.min(s,2),d=40*1024,l=0,f=[],m=null;if(r==="timeline")try{let g=Je(),_=rr(),x=vi({projectDir:_,sessionsDir:g});Te(x)&&(m=new Xt({dbPath:x}))}catch{}let p=rn?.getConfigDir()??yh();try{for(let g of o){if(l>d){f.push(`## ${g}
|
|
673
673
|
(output cap reached)
|
|
674
674
|
`);continue}let _;if(r==="timeline"?_=Ok({query:g,limit:u,store:e,sort:r,source:i,contentType:a,sessionDB:m,projectDir:rr(),configDir:p,adapter:rn??void 0}):_=e.searchWithFallback(g,u,i,a),_.length===0){f.push(`## ${g}
|
|
675
675
|
No results found.`);continue}let x=_.map((y,S)=>{let E=y.origin||"current-session",O=y.timestamp?y.timestamp.slice(0,16).replace("T"," "):"",L=`--- [${E}${O?" | "+O:""} | ${y.source}] ---`,A=`### ${y.title}`,z=aE(y.content,g,1500,y.highlighted);return`${L}
|
|
@@ -914,7 +914,7 @@ async function main() {
|
|
|
914
914
|
emit('text', text);
|
|
915
915
|
}
|
|
916
916
|
main();
|
|
917
|
-
`}var pz=1440*60*1e3,Qk=3072;async function fz(t){let e;try{e=new URL(t)}catch{return{kind:"fetch_error",url:t,error:"invalid URL",reason:"exit"}}if(e.protocol!=="http:"&&e.protocol!=="https:")return{kind:"fetch_error",url:t,error:`URL scheme "${e.protocol}" not allowed (only http: and https:)`,reason:"exit"};let r=process.env.CTX_FETCH_STRICT==="1";try{let{lookup:n}=await import("node:dns/promises"),o=await n(e.hostname,{all:!0,verbatim:!0});for(let s of o){let i=ou(s.address);if(i==="block")return{kind:"fetch_error",url:t,error:`URL "${e.hostname}" resolves to ${s.address} \u2014 blocked (link-local / IMDS / multicast / reserved)`,reason:"exit"};if(i==="private"&&r)return{kind:"fetch_error",url:t,error:`URL "${e.hostname}" resolves to private IP ${s.address} \u2014 blocked under CTX_FETCH_STRICT=1`,reason:"exit"}}}catch(n){return{kind:"fetch_error",url:t,error:`DNS lookup failed for "${e.hostname}": ${n instanceof Error?n.message:String(n)}`,reason:"exit"}}return null}function ou(t){let e=t.indexOf("%"),r=e===-1?t:t.slice(0,e),n=r.toLowerCase();if(n.includes(":")){let a=n.match(/^::ffff:([\d.]+)$/);return a?ou(a[1]):n==="::"||n.startsWith("fe8")||n.startsWith("fe9")||n.startsWith("fea")||n.startsWith("feb")||n.startsWith("ff")?"block":n==="::1"||n.startsWith("fc")||n.startsWith("fd")?"private":"public"}if(!r.includes("."))return"block";let o=r.split(".").map(a=>parseInt(a,10));if(o.length!==4||o.some(a=>isNaN(a)||a<0||a>255))return"block";let[s,i]=o;return s===169&&i===254||s===0||s>=224?"block":s===127||s===10||s===172&&i>=16&&i<=31||s===192&&i===168?"private":"public"}async function mz(t,e,r){let n=await fz(t);if(n)return n;if(!r){let s=Yn(),i=nm(e,t),a=s.getSourceMeta(i);if(a){let c=new Date(a.indexedAt+"Z"),u=Date.now()-c.getTime();if(u<pz){let d=Math.floor(u/36e5),l=Math.floor(u/(60*1e3)),f=d>0?`${d}h ago`:l>0?`${l}m ago`:"just now",m=a.chunkCount*1600;return{kind:"cached",label:a.label,chunkCount:a.chunkCount,estimatedBytes:m,ageStr:f}}}}let o=
|
|
917
|
+
`}var pz=1440*60*1e3,Qk=3072;async function fz(t){let e;try{e=new URL(t)}catch{return{kind:"fetch_error",url:t,error:"invalid URL",reason:"exit"}}if(e.protocol!=="http:"&&e.protocol!=="https:")return{kind:"fetch_error",url:t,error:`URL scheme "${e.protocol}" not allowed (only http: and https:)`,reason:"exit"};let r=process.env.CTX_FETCH_STRICT==="1";try{let{lookup:n}=await import("node:dns/promises"),o=await n(e.hostname,{all:!0,verbatim:!0});for(let s of o){let i=ou(s.address);if(i==="block")return{kind:"fetch_error",url:t,error:`URL "${e.hostname}" resolves to ${s.address} \u2014 blocked (link-local / IMDS / multicast / reserved)`,reason:"exit"};if(i==="private"&&r)return{kind:"fetch_error",url:t,error:`URL "${e.hostname}" resolves to private IP ${s.address} \u2014 blocked under CTX_FETCH_STRICT=1`,reason:"exit"}}}catch(n){return{kind:"fetch_error",url:t,error:`DNS lookup failed for "${e.hostname}": ${n instanceof Error?n.message:String(n)}`,reason:"exit"}}return null}function ou(t){let e=t.indexOf("%"),r=e===-1?t:t.slice(0,e),n=r.toLowerCase();if(n.includes(":")){let a=n.match(/^::ffff:([\d.]+)$/);return a?ou(a[1]):n==="::"||n.startsWith("fe8")||n.startsWith("fe9")||n.startsWith("fea")||n.startsWith("feb")||n.startsWith("ff")?"block":n==="::1"||n.startsWith("fc")||n.startsWith("fd")?"private":"public"}if(!r.includes("."))return"block";let o=r.split(".").map(a=>parseInt(a,10));if(o.length!==4||o.some(a=>isNaN(a)||a<0||a>255))return"block";let[s,i]=o;return s===169&&i===254||s===0||s>=224?"block":s===127||s===10||s===172&&i>=16&&i<=31||s===192&&i===168?"private":"public"}async function mz(t,e,r){let n=await fz(t);if(n)return n;if(!r){let s=Yn(),i=nm(e,t),a=s.getSourceMeta(i);if(a){let c=new Date(a.indexedAt+"Z"),u=Date.now()-c.getTime();if(u<pz){let d=Math.floor(u/36e5),l=Math.floor(u/(60*1e3)),f=d>0?`${d}h ago`:l>0?`${l}m ago`:"just now",m=a.chunkCount*1600;return{kind:"cached",label:a.label,chunkCount:a.chunkCount,estimatedBytes:m,ageStr:f}}}}let o=ye(vh(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let s=dz(t,o),i=await Ri.execute({language:"javascript",code:s,timeout:3e4});if(i.exitCode!==0)return{kind:"fetch_error",url:t,error:i.stderr||i.stdout||"unknown error",reason:"exit"};let a=(i.stdout||"").trim(),c;try{c=su(o,"utf-8").trim()}catch{return{kind:"fetch_error",url:t,error:"could not read subprocess output",reason:"read"}}return c.length===0?{kind:"fetch_error",url:t,error:"empty content",reason:"empty"}:{kind:"fetched",url:t,source:e,markdown:c,header:a}}catch(s){return{kind:"fetch_error",url:t,error:s instanceof Error?s.message:String(s),reason:"throw"}}finally{try{Qc(o)}catch{}}}function hz(t){let e=Yn(),r=nm(t.source,t.url),n=Yo(),o;t.header==="__CM_CT__:json"?o=e.indexJSON(t.markdown,r,void 0,n):t.header==="__CM_CT__:text"?o=e.indexPlainText(t.markdown,r,void 0,n):o=e.index({content:t.markdown,source:r,attribution:n}),tr(Buffer.byteLength(t.markdown));let s=t.markdown.length>Qk?t.markdown.slice(0,Qk)+`
|
|
918
918
|
|
|
919
919
|
\u2026[truncated \u2014 use ctx_search() for full content]`:t.markdown;return{label:o.label,totalChunks:o.totalChunks,totalBytes:Buffer.byteLength(t.markdown),preview:s}}Me.registerTool("ctx_fetch_and_index",{title:"Fetch & Index URL(s)",description:`Fetches URL content, converts HTML to markdown, indexes into searchable knowledge base, and returns a ~3KB preview. Full content stays in sandbox \u2014 use ctx_search() for deeper lookups.
|
|
920
920
|
|
|
@@ -951,9 +951,9 @@ THINK IN CODE \u2014 NON-NEGOTIABLE: When commands produce data you need to anal
|
|
|
951
951
|
`),c=Buffer.byteLength(a),u=a.split(`
|
|
952
952
|
`).length;if(i&&s.length===0)return B("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});tr(c);let d=Yn(),l=`batch:${t.map(y=>y.label).join(",").slice(0,80)}`,f=d.index({content:a,source:l,attribution:Yo()}),m=d.getChunksBySource(f.sourceId),p=["## Indexed Sections",""],h=[];for(let y of m){let S=Buffer.byteLength(y.content);p.push(`- ${y.title} (${(S/1024).toFixed(1)}KB)`),h.push(y.title)}let g=rz(d,e,l),_=d.getDistinctiveTerms?d.getDistinctiveTerms(f.sourceId):[],x=[`Executed ${t.length} commands (${u} lines, ${(c/1024).toFixed(1)}KB). Indexed ${f.totalChunks} sections. Searched ${e.length} queries.`,"",...p,"",...g,_.length>0?`
|
|
953
953
|
Searchable terms for follow-up: ${_.join(", ")}`:""].join(`
|
|
954
|
-
`);return B("ctx_batch_execute",{content:[{type:"text",text:x}]})}catch(o){let s=o instanceof Error?o.message:String(o);return B("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${s}`}],isError:!0})}});function eE(){return{prepare:()=>({run:()=>{},get:(...t)=>({cnt:0,compact_count:0,minutes:null,rate:0,avg:0,outcome:"exploratory"}),all:()=>[]})}}Me.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:M.object({})},async()=>{let t;try{let e=rr(),r
|
|
955
|
-
`)}]})});Me.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:M.object({})},async()=>{let t=
|
|
956
|
-
`),c=je(t,".ctx-upgrade-inline.mjs"),{writeFileSync:u}=await import("node:fs");u(c,a),o=
|
|
954
|
+
`);return B("ctx_batch_execute",{content:[{type:"text",text:x}]})}catch(o){let s=o instanceof Error?o.message:String(o);return B("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${s}`}],isError:!0})}});function eE(){return{prepare:()=>({run:()=>{},get:(...t)=>({cnt:0,compact_count:0,minutes:null,rate:0,avg:0,outcome:"exploratory"}),all:()=>[]})}}Me.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:M.object({})},async()=>{let t;try{let e=rr(),r=Rr(e),n=vi({projectDir:e,sessionsDir:Je()});if(Te(n)){let o=tt(),s=new o(n,{readonly:!0});try{let i=new Wo(s),a=i.queryAll(re),c=i.getMcpToolUsage(),u=ki({sessionsDir:Je()}),d;try{d=Vc()}catch{}let l,f;try{let m=process.env.CLAUDE_SESSION_ID;if(m||(m=s.prepare("SELECT session_id FROM session_events WHERE session_id LIKE '________-____-____-____-____________' ORDER BY created_at DESC LIMIT 1").get()?.session_id),m){l=Fk({sessionId:m,sessionsDir:Je(),worktreeHash:r});let p=eu(),h=fh({sessionId:m,sessionsDir:Je(),worktreeHash:r,contentDbPath:p}),g=fh({sessionsDir:Je()}),_=Zk(p),x={...g,contentBytes:g.contentBytes+_,bytesAvoided:g.bytesAvoided+_,totalSavedTokens:Math.floor((g.eventDataBytes+g.bytesAvoided+_+g.snapshotBytes)/4)};f={conversation:h,lifetime:x}}}catch{}t=Kc(a,Or,Ir,{lifetime:u,mcpUsage:c,multiAdapter:d,conversation:l,realBytes:f,cwd:e})}finally{s.close()}}else{let s=new Wo(eE()).queryAll(re),i=ki({sessionsDir:Je()}),a;try{a=Vc()}catch{}t=Kc(s,Or,Ir,{lifetime:i,multiAdapter:a})}}catch{let r=new Wo(eE()).queryAll(re),n;try{n=ki({sessionsDir:Je()})}catch{}let o;try{o=Vc()}catch{}t=Kc(r,Or,Ir,n||o?{lifetime:n,multiAdapter:o}:void 0)}return B("ctx_stats",{content:[{type:"text",text:t}]})});Me.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Runs all checks server-side and returns a plain-text status report with [OK]/[FAIL]/[WARN] prefixes (renderer-safe across MCP clients). No CLI execution needed.",inputSchema:M.object({})},async()=>{let t=["context-mode doctor",""],e=Te(je(kt,"package.json"))?kt:Lt(kt),r=11,n=(Xc.length/r*100).toFixed(0);t.push(`[OK] Runtimes: ${Xc.length}/${r} (${n}%) \u2014 ${Xc.join(", ")}`),gc()?t.push("[OK] Performance: FAST (Bun)"):t.push("[WARN] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");{let s=new si({runtimes:Pi});try{let i=await s.execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(i.exitCode===0&&i.stdout.trim()==="ok")t.push("[OK] Server test: PASS");else{let a=i.stderr?.trim()?` (${i.stderr.trim().slice(0,200)})`:"";t.push(`[FAIL] Server test: FAIL \u2014 exit ${i.exitCode}${a}`)}}catch(i){t.push(`[FAIL] Server test: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{s.cleanupBackgrounded()}}{let s;try{let i=tt();s=new i(":memory:"),s.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),s.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let a=s.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();a&&a.content==="hello world"?t.push("[OK] FTS5 / SQLite: PASS \u2014 native module works"):t.push("[FAIL] FTS5 / SQLite: FAIL \u2014 unexpected result")}catch(i){t.push(`[FAIL] FTS5 / SQLite: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{try{s?.close()}catch{}}}let o=await zj();if(o){for(let i of o.validateHooks(e)){let a=i.status==="pass"?"[OK]":i.status==="warn"?"[WARN]":"[FAIL]",c=i.fix?` \u2014 fix: ${i.fix}`:"";t.push(`${a} ${i.check}: ${i.message}${c}`)}let s=Ik(o,e);s.length===0&&t.push("[OK] Hook scripts: no direct .mjs script paths to verify");for(let i of s){let a=je(e,i);Te(a)?t.push(`[OK] Hook script: PASS \u2014 ${a}`):t.push(`[FAIL] Hook script: FAIL \u2014 not found at ${a}`)}}else t.push("[WARN] Hooks: adapter detection unavailable");return t.push(`[OK] Version: v${Or}`),B("ctx_doctor",{content:[{type:"text",text:t.join(`
|
|
955
|
+
`)}]})});Me.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:M.object({})},async()=>{let t=Te(je(kt,"package.json"))?kt:Lt(kt),e=je(t,"cli.bundle.mjs"),r=je(t,"build","cli.js");try{let i=Je(),a=ye(Lt(i),"insight-cache");Te(a)&&(uE(4747),Qc(a,{recursive:!0,force:!0}))}catch{}let n="";try{let{detectPlatform:i}=await Promise.resolve().then(()=>(Gn(),Dc)),a=Me.server.getClientVersion();n=` --platform ${i(a??void 0).platform}`}catch{}let o;if(Te(e))o=`${Ie(e)} upgrade${n}`;else if(Te(r))o=`${Ie(r)} upgrade${n}`;else{let a=['import{execFileSync}from"node:child_process";','import{cpSync,rmSync,existsSync,mkdtempSync,readFileSync,writeFileSync}from"node:fs";','import{join}from"node:path";','import{tmpdir}from"node:os";',`const P=${JSON.stringify(t)};`,'const T=mkdtempSync(join(tmpdir(),"ctx-upgrade-"));',"try{",'console.log("- [x] Starting inline upgrade (no CLI found)");','execFileSync("git",["clone","--depth","1","https://github.com/mksglu/context-mode.git",T],{stdio:"inherit"});','console.log("- [x] Cloned latest source");','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["install"],{cwd:T,stdio:"inherit",shell:process.platform==="win32"});','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["run","build"],{cwd:T,stdio:"inherit",shell:process.platform==="win32"});','console.log("- [x] Built from source");','const pkg=JSON.parse(readFileSync(join(T,"package.json"),"utf8"));','const items=[...(Array.isArray(pkg.files)?pkg.files:[]),"src","package.json"];',"for(const item of items){const from=join(T,item);const to=join(P,item);if(existsSync(from)){rmSync(to,{recursive:true,force:true});cpSync(from,to,{recursive:true,force:true});}}",'console.log("- [x] Copied package files");','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["install","--production"],{cwd:P,stdio:"inherit",shell:process.platform==="win32"});','console.log("- [x] Installed production dependencies");','console.log("## context-mode upgrade complete");',"}catch(e){",'console.error("- [ ] Upgrade failed:",e.message);',"process.exit(1);","}finally{","try{rmSync(T,{recursive:true,force:true})}catch{}","}"].join(`
|
|
956
|
+
`),c=je(t,".ctx-upgrade-inline.mjs"),{writeFileSync:u}=await import("node:fs");u(c,a),o=Ie(c)}let s=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",o,"```","","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(`
|
|
957
957
|
`);return B("ctx_upgrade",{content:[{type:"text",text:s}]})});Me.registerTool("ctx_purge",{title:"Purge Knowledge Base",description:`DESTRUCTIVE \u2014 permanently delete indexed content. CANNOT be undone.
|
|
958
958
|
|
|
959
959
|
You MUST specify exactly ONE scope:
|
|
@@ -976,7 +976,7 @@ REFUSAL RULES (tool returns an error):
|
|
|
976
976
|
|
|
977
977
|
Use sessionId when the user asks to clear a specific conversation's data.
|
|
978
978
|
Use scope:'project' ONLY when the user explicitly asks to reset everything.
|
|
979
|
-
NEVER call with bare {confirm:true} \u2014 always specify the scope.`,inputSchema:M.object({confirm:M.boolean().describe("MUST be true. Destructive operation; false returns 'purge cancelled'."),sessionId:M.string().optional().describe("UUID of a single session. Pairs with confirm:true to wipe only that session's events + per-session FTS5 chunks. Sibling sessions and the stats file are preserved. MUST NOT be combined with scope:'project'."),scope:M.enum(["session","project"]).optional().describe("Explicit scope selector. 'session' REQUIRES sessionId. 'project' wipes the entire project (FTS5 + every session + stats). Omit only for the deprecated bare-{confirm:true} back-compat path.")})},async({confirm:t,sessionId:e,scope:r})=>{if(e&&r==="project")return B("ctx_purge",{content:[{type:"text",text:"Ambiguous purge: sessionId implies scope:'session', cannot combine with scope:'project'. Use scope:'project' WITHOUT sessionId for the legacy whole-project wipe."}],isError:!0});if(!t)return B("ctx_purge",{content:[{type:"text",text:"Purge cancelled. Pass confirm: true to proceed."}]});let n=r??(e?"session":"project");!r&&!e&&console.warn("[context-mode] ctx_purge: bare {confirm:true} is deprecated. Pass scope:'project' for the whole-project wipe, or scope:'session' + sessionId for a scoped wipe. See issue #520.");let o;try{o=eu()}catch{}if(er){try{er.cleanup()}catch{}er=null}let s=o?Lt(o):void 0,{deleted:i}=bk({projectDir:rr(),sessionsDir:Je(),storePath:o,contentDir:s,legacyContentDir:
|
|
979
|
+
NEVER call with bare {confirm:true} \u2014 always specify the scope.`,inputSchema:M.object({confirm:M.boolean().describe("MUST be true. Destructive operation; false returns 'purge cancelled'."),sessionId:M.string().optional().describe("UUID of a single session. Pairs with confirm:true to wipe only that session's events + per-session FTS5 chunks. Sibling sessions and the stats file are preserved. MUST NOT be combined with scope:'project'."),scope:M.enum(["session","project"]).optional().describe("Explicit scope selector. 'session' REQUIRES sessionId. 'project' wipes the entire project (FTS5 + every session + stats). Omit only for the deprecated bare-{confirm:true} back-compat path.")})},async({confirm:t,sessionId:e,scope:r})=>{if(e&&r==="project")return B("ctx_purge",{content:[{type:"text",text:"Ambiguous purge: sessionId implies scope:'session', cannot combine with scope:'project'. Use scope:'project' WITHOUT sessionId for the legacy whole-project wipe."}],isError:!0});if(!t)return B("ctx_purge",{content:[{type:"text",text:"Purge cancelled. Pass confirm: true to proceed."}]});let n=r??(e?"session":"project");!r&&!e&&console.warn("[context-mode] ctx_purge: bare {confirm:true} is deprecated. Pass scope:'project' for the whole-project wipe, or scope:'session' + sessionId for a scoped wipe. See issue #520.");let o;try{o=eu()}catch{}if(er){try{er.cleanup()}catch{}er=null}let s=o?Lt(o):void 0,{deleted:i}=bk({projectDir:rr(),sessionsDir:Je(),storePath:o,contentDir:s,legacyContentDir:ye(Jo(),".context-mode","content"),contentHash:Pr(rr()),scope:n,sessionId:e});if(n==="project"){re.calls={},re.bytesReturned={},re.bytesIndexed=0,re.bytesSandboxed=0,re.cacheHits=0,re.cacheBytesSaved=0,re.sessionStart=Date.now(),i.push("session stats");try{let c=oE();Te(c)&&Go(c)}catch{}}let a=n==="session"?`Purged session ${e}: ${i.length?i.join(", "):"no matching rows"}. Other sessions and project-wide stats preserved.`:`Purged: ${i.join(", ")}. All session data for this project has been permanently deleted.`;return B("ctx_purge",{content:[{type:"text",text:a}]})});var Ei=5e3;function gz(t,e){return e==="darwin"?[{cmd:"open",args:[t]}]:e==="win32"?[{cmd:"cmd",args:["/c","start","",t]}]:[{cmd:"xdg-open",args:[t]},{cmd:"sensible-browser",args:[t]}]}function tE(t,e=process.platform,r=nE){let n=gz(t,e),o=[];for(let{cmd:s,args:i}of n)try{let a=r(s,i,{stdio:"ignore",timeout:Ei});if(!a.error&&a.status===0)return{ok:!0,method:s};let c=a.error?.message??`status=${a.status===null?"signaled":a.status}`;o.push(`${s}: ${c}`)}catch(a){o.push(`${s}: ${a instanceof Error?a.message:String(a)}`)}return{ok:!1,method:"none",reason:o.join("; ")}}function uE(t,e=process.platform,r=nE){let n={killedPids:[],attemptedPids:[],errors:[]};if(!Number.isInteger(t)||t<1||t>65535)return n.errors.push(`invalid port: ${t}`),n;try{if(e==="win32"){let o=r("netstat",["-ano"],{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:Ei});if(o.error)return n.errors.push(`netstat: ${o.error.message}`),n;if(o.status!==0||typeof o.stdout!="string")return n;let s=`:${t}`,i=new Set;for(let a of o.stdout.split(/\r?\n/)){let c=a.trim();if(!c)continue;let u=c.split(/\s+/);if(u.length<5)continue;let d=u[0],l=u[1],f=u[2],m=u[u.length-1];d==="TCP"&&l.endsWith(s)&&(f!=="0.0.0.0:0"&&f!=="[::]:0"||/^\d+$/.test(m)&&i.add(m))}for(let a of i){n.attemptedPids.push(a);try{let c=r("taskkill",["/F","/PID",a],{stdio:"ignore",timeout:Ei});c.error||c.status!==0?n.errors.push(`taskkill ${a}: ${c.error?.message??`status=${c.status}`}`):n.killedPids.push(a)}catch(c){n.errors.push(`taskkill ${a}: ${c instanceof Error?c.message:String(c)}`)}}}else{let o=r("lsof",["-ti",`:${t}`],{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:Ei});if(o.error)return n.errors.push(`lsof: ${o.error.message}`),n;if(o.status!==0||typeof o.stdout!="string")return n;let s=o.stdout.split(/\r?\n/).filter(i=>/^\d+$/.test(i));for(let i of s){n.attemptedPids.push(i);try{let a=r("kill",[i],{stdio:"ignore",timeout:Ei});a.error||a.status!==0?n.errors.push(`kill ${i}: ${a.error?.message??`status=${a.status}`}`):n.killedPids.push(i)}catch(a){n.errors.push(`kill ${i}: ${a instanceof Error?a.message:String(a)}`)}}}}catch(o){n.errors.push(o instanceof Error?o.message:String(o))}return n}Me.registerTool("ctx_insight",{title:"Open Insight Dashboard",description:"Opens the context-mode Insight dashboard in the browser. Shows personal analytics: session activity, tool usage, error rate, parallel work patterns, project focus, and actionable insights. First run installs dependencies (~30s). Subsequent runs open instantly.",inputSchema:M.object({port:M.coerce.number().int().min(1).max(65535).optional().describe("Port to serve on (default: 4747)"),sessionDir:M.string().optional().describe("Override INSIGHT_SESSION_DIR: directory containing context-mode session .db files"),contentDir:M.string().optional().describe("Override INSIGHT_CONTENT_DIR: directory containing context-mode content/index .db files"),insightSessionDir:M.string().optional().describe("Alias for sessionDir / INSIGHT_SESSION_DIR"),insightContentDir:M.string().optional().describe("Alias for contentDir / INSIGHT_CONTENT_DIR")})},async({port:t,sessionDir:e,contentDir:r,insightSessionDir:n,insightContentDir:o})=>{let s=t||4747,i=e||n,a=r||o,c=Te(je(kt,"package.json"))?kt:Lt(kt),u=je(c,"insight"),d=i?je(i):Je(),l=a?je(a):ye(Lt(d),"content"),f=ye(Lt(d),"insight-cache");if(!Te(ye(u,"server.mjs")))return B("ctx_insight",{content:[{type:"text",text:"Error: Insight source not found in plugin. Try upgrading context-mode."}]});try{let m=[],p=!1;wi(f,{recursive:!0});let h=qk(ye(u,"server.mjs")).mtimeMs,g=Te(ye(f,"server.mjs"))?qk(ye(f,"server.mjs")).mtimeMs:0;if(h>g&&(m.push("Copying source files..."),xj(u,f,{recursive:!0,force:!0}),m.push("Source files copied."),p=!0),!Te(ye(f,"node_modules"))||p){m.push("Installing dependencies (first run, ~30s)...");try{Vk(process.platform==="win32"?"npm.cmd install --production=false":"npm install --production=false",{cwd:f,stdio:"pipe",timeout:3e5})}catch{try{Qc(ye(f,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!Te(ye(f,"node_modules","vite"))||!Te(ye(f,"node_modules","better-sqlite3")))throw Qc(ye(f,"node_modules"),{recursive:!0,force:!0}),new Error("npm install incomplete \u2014 please retry");m.push("Dependencies installed.")}m.push("Building dashboard..."),Vk("npx vite build",{cwd:f,stdio:"pipe",timeout:6e4}),m.push("Build complete.");let x=!1;try{let{request:A}=await import("node:http");await new Promise((z,w)=>{let P=A(`http://127.0.0.1:${s}/api/overview`,{timeout:2e3},N=>{N.resume(),z()});P.on("error",()=>w()),P.on("timeout",()=>{P.destroy(),w()}),P.end()}),x=!0}catch{}if(x&&p){m.push("Killing stale dashboard server (source updated)...");let A=uE(s);if(A.attemptedPids.length>0&&A.killedPids.length===0)return B("ctx_insight",{content:[{type:"text",text:`Could not free port ${s} (kill failed for ${A.attemptedPids.join(", ")}: ${A.errors.join("; ")}). Try ctx_insight({ port: ${s+1} }) or stop the process manually.`}]});if(A.errors.length>0&&A.attemptedPids.length===0)return B("ctx_insight",{content:[{type:"text",text:`Cannot reclaim port ${s}: ${A.errors.join("; ")}. Stop the process manually or pick another port.`}]});await new Promise(z=>setTimeout(z,500)),m.push(`Stale server killed (${A.killedPids.length} pid${A.killedPids.length===1?"":"s"}).`)}else if(x){m.push("Dashboard already running.");let A=`http://localhost:${s}`,z=tE(A),w=z.ok?"":` (auto-open failed: ${z.reason}; navigate manually)`;return B("ctx_insight",{content:[{type:"text",text:`Dashboard already running at ${A}${w}`}]})}if(Cr&&Cr.pid&&!Cr.killed)try{Cr.kill("SIGTERM")}catch{}let{spawn:y}=await import("node:child_process"),S=y("node",[ye(f,"server.mjs")],{cwd:f,env:{...process.env,PORT:String(s),INSIGHT_SESSION_DIR:d,INSIGHT_CONTENT_DIR:l,INSIGHT_PARENT_PID:String(process.pid)},detached:!0,stdio:"ignore"});S.on("error",()=>{}),S.unref(),Cr=S,await new Promise(A=>setTimeout(A,1500));try{let{request:A}=await import("node:http");await new Promise((z,w)=>{let P=A(`http://127.0.0.1:${s}/api/overview`,{timeout:3e3},N=>{z(),N.resume()});P.on("error",w),P.on("timeout",()=>{P.destroy(),w(new Error("timeout"))}),P.end()})}catch{return B("ctx_insight",{content:[{type:"text",text:`Port ${s} appears to be in use. Either a previous dashboard is still running, or another service is using this port.
|
|
980
980
|
|
|
981
981
|
To fix:
|
|
982
982
|
- Kill the existing process: ${process.platform==="win32"?`netstat -ano | findstr :${s}`:`lsof -ti:${s} | xargs kill`}
|
|
@@ -984,6 +984,6 @@ To fix:
|
|
|
984
984
|
`)+`
|
|
985
985
|
|
|
986
986
|
Open: ${E}
|
|
987
|
-
PID: ${S.pid} \xB7 Stop: ${process.platform==="win32"?`taskkill /PID ${S.pid} /F`:`kill ${S.pid}`}`}]})}catch(m){let p=m instanceof Error?m.message:String(m);return B("ctx_insight",{content:[{type:"text",text:`Insight setup failed: ${p}`}]})}});async function yz(){let t=tm();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=process.platform==="win32"?vh():"/tmp",r=
|
|
987
|
+
PID: ${S.pid} \xB7 Stop: ${process.platform==="win32"?`taskkill /PID ${S.pid} /F`:`kill ${S.pid}`}`}]})}catch(m){let p=m instanceof Error?m.message:String(m);return B("ctx_insight",{content:[{type:"text",text:`Insight setup failed: ${p}`}]})}});async function yz(){let t=tm();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=process.platform==="win32"?vh():"/tmp",r=ye(e,`context-mode-mcp-ready-${process.pid}`),n=()=>{Ri.cleanupBackgrounded(),er&&er.close();try{Go(iu)}catch{}try{Go(r)}catch{}if(Cr&&Cr.pid&&!Cr.killed)try{Cr.kill("SIGTERM")}catch{}},o=async()=>{try{_h=0,tu()}catch{}n(),process.exit(0)};process.on("exit",n),process.on("SIGINT",()=>{o()}),process.on("SIGTERM",()=>{o()}),hk({onShutdown:()=>o()});let s=new fc;await Me.connect(s);try{xh(r,String(process.pid))}catch{}try{let{detectPlatform:i,getAdapter:a}=await Promise.resolve().then(()=>(Gn(),Dc)),c=Me.server.getClientVersion(),u=i(c??void 0);rn=await a(u.platform),c&&console.error(`MCP client: ${c.name} v${c.version} \u2192 ${u.platform}`)}catch{}try{let i=Pk(Ti());if(i){for(let[a,c]of Object.entries(i.calls))re.calls[a]=c;for(let[a,c]of Object.entries(i.bytesReturned))re.bytesReturned[a]=c;i.sessionStart>0&&(re.sessionStart=i.sessionStart)}}catch{}Kk().then(i=>{i!=="unknown"&&(Ir=i)}),setInterval(()=>{Kk().then(i=>{i!=="unknown"&&(Ir=i)})},3600*1e3).unref(),setInterval(()=>tu(),6e4).unref(),process.stdin.isTTY&&(console.error(`Context Mode MCP server v${Or} running on stdio`),console.error(`Detected runtimes:
|
|
988
988
|
${Pb(Pi)}`),gc()||(console.error(`
|
|
989
|
-
Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash")))}process.env.CONTEXT_MODE_EMBEDDED_PLUGIN_TOOLS!=="1"&&yz().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{Rj as REGISTERED_CTX_TOOLS,gz as browserOpenArgv,sz as buildBatchNodeOptionsPrefix,dz as buildFetchCode,ou as classifyIp,Yo as currentAttribution,aE as extractSnippet,rz as formatBatchQueryResults,uE as killProcessOnPort,tE as openBrowserSync,tz as positionsFromHighlight,Mj as resolveSessionIdFromSessionDB,iz as runBatchCommands,Me as server,$j as shouldSuppressMcpToolsForNativePluginHost,
|
|
989
|
+
Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash")))}process.env.CONTEXT_MODE_EMBEDDED_PLUGIN_TOOLS!=="1"&&yz().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{Rj as REGISTERED_CTX_TOOLS,gz as browserOpenArgv,sz as buildBatchNodeOptionsPrefix,dz as buildFetchCode,ou as classifyIp,Yo as currentAttribution,aE as extractSnippet,rz as formatBatchQueryResults,uE as killProcessOnPort,tE as openBrowserSync,tz as positionsFromHighlight,Mj as resolveSessionIdFromSessionDB,iz as runBatchCommands,Me as server,$j as shouldSuppressMcpToolsForNativePluginHost,E9 as withProjectDirOverride};
|