context-mode 1.0.53 → 1.0.56

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.
Files changed (66) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/.openclaw-plugin/openclaw.plugin.json +1 -1
  4. package/.openclaw-plugin/package.json +1 -1
  5. package/README.md +103 -32
  6. package/build/adapters/antigravity/index.d.ts +1 -3
  7. package/build/adapters/antigravity/index.js +0 -30
  8. package/build/adapters/claude-code/hooks.d.ts +18 -0
  9. package/build/adapters/claude-code/hooks.js +23 -0
  10. package/build/adapters/claude-code/index.d.ts +1 -3
  11. package/build/adapters/claude-code/index.js +48 -35
  12. package/build/adapters/client-map.js +1 -0
  13. package/build/adapters/codex/index.d.ts +1 -3
  14. package/build/adapters/codex/index.js +1 -31
  15. package/build/adapters/cursor/index.d.ts +1 -3
  16. package/build/adapters/cursor/index.js +0 -11
  17. package/build/adapters/detect.d.ts +1 -0
  18. package/build/adapters/detect.js +18 -2
  19. package/build/adapters/gemini-cli/index.d.ts +1 -3
  20. package/build/adapters/gemini-cli/index.js +0 -30
  21. package/build/adapters/kiro/index.d.ts +1 -3
  22. package/build/adapters/kiro/index.js +0 -30
  23. package/build/adapters/openclaw/index.d.ts +1 -3
  24. package/build/adapters/openclaw/index.js +0 -38
  25. package/build/adapters/opencode/index.d.ts +5 -4
  26. package/build/adapters/opencode/index.js +37 -41
  27. package/build/adapters/types.d.ts +1 -14
  28. package/build/adapters/vscode-copilot/index.d.ts +1 -3
  29. package/build/adapters/vscode-copilot/index.js +0 -32
  30. package/build/adapters/zed/index.d.ts +1 -3
  31. package/build/adapters/zed/index.js +0 -30
  32. package/build/cli.js +12 -28
  33. package/build/executor.d.ts +0 -1
  34. package/build/executor.js +28 -16
  35. package/build/openclaw-plugin.js +12 -34
  36. package/build/opencode-plugin.d.ts +1 -0
  37. package/build/opencode-plugin.js +5 -9
  38. package/build/runtime.js +29 -11
  39. package/build/server.d.ts +2 -0
  40. package/build/server.js +69 -61
  41. package/build/store.d.ts +4 -3
  42. package/build/store.js +101 -34
  43. package/build/truncate.d.ts +4 -17
  44. package/build/truncate.js +4 -52
  45. package/cli.bundle.mjs +184 -157
  46. package/configs/codex/AGENTS.md +19 -0
  47. package/configs/kilo/AGENTS.md +58 -0
  48. package/configs/kilo/kilo.json +10 -0
  49. package/hooks/core/tool-naming.mjs +1 -0
  50. package/hooks/ensure-deps.mjs +80 -2
  51. package/hooks/pretooluse.mjs +25 -20
  52. package/hooks/routing-block.mjs +10 -1
  53. package/hooks/session-snapshot.bundle.mjs +13 -13
  54. package/hooks/sessionstart.mjs +25 -1
  55. package/openclaw.plugin.json +1 -1
  56. package/package.json +1 -1
  57. package/server.bundle.mjs +159 -129
  58. package/skills/context-mode-ops/SKILL.md +111 -0
  59. package/skills/context-mode-ops/agent-teams.md +198 -0
  60. package/skills/context-mode-ops/communication.md +224 -0
  61. package/skills/context-mode-ops/release.md +199 -0
  62. package/skills/context-mode-ops/review-pr.md +269 -0
  63. package/skills/context-mode-ops/tdd.md +329 -0
  64. package/skills/context-mode-ops/triage-issue.md +218 -0
  65. package/skills/context-mode-ops/validation.md +238 -0
  66. package/start.mjs +5 -52
package/server.bundle.mjs CHANGED
@@ -1,88 +1,63 @@
1
1
  #!/usr/bin/env node
2
- var qv=Object.create;var Za=Object.defineProperty;var Fv=Object.getOwnPropertyDescriptor;var Bv=Object.getOwnPropertyNames;var Vv=Object.getPrototypeOf,Kv=Object.prototype.hasOwnProperty;var we=(t,e)=>()=>(t&&(e=t(t=0)),e);var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ve=(t,e)=>{for(var r in e)Za(t,r,{get:e[r],enumerable:!0})},Jv=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Bv(e))!Kv.call(t,o)&&o!==r&&Za(t,o,{get:()=>e[o],enumerable:!(n=Fv(e,o))||n.enumerable});return t};var ff=(t,e,r)=>(r=t!=null?qv(Vv(t)):{},Jv(e||!t||!t.__esModule?Za(r,"default",{value:t,enumerable:!0}):r,t));var Do=T(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.regexpCode=ee.getEsmExportName=ee.getProperty=ee.safeStringify=ee.stringify=ee.strConcat=ee.addCodeArg=ee.str=ee._=ee.nil=ee._Code=ee.Name=ee.IDENTIFIER=ee._CodeOrName=void 0;var Mo=class{};ee._CodeOrName=Mo;ee.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Jr=class extends Mo{constructor(e){if(super(),!ee.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};ee.Name=Jr;var dt=class extends Mo{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Jr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ee._Code=dt;ee.nil=new dt("");function cg(t,...e){let r=[t[0]],n=0;for(;n<e.length;)wl(r,e[n]),r.push(t[++n]);return new dt(r)}ee._=cg;var bl=new dt("+");function ug(t,...e){let r=[Lo(t[0])],n=0;for(;n<e.length;)r.push(bl),wl(r,e[n]),r.push(bl,Lo(t[++n]));return BE(r),new dt(r)}ee.str=ug;function wl(t,e){e instanceof dt?t.push(...e._items):e instanceof Jr?t.push(e):t.push(JE(e))}ee.addCodeArg=wl;function BE(t){let e=1;for(;e<t.length-1;){if(t[e]===bl){let r=VE(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function VE(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Jr||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof Jr))return`"${t}${e.slice(1)}`}function KE(t,e){return e.emptyStr()?t:t.emptyStr()?e:ug`${t}${e}`}ee.strConcat=KE;function JE(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Lo(Array.isArray(t)?t.join(","):t)}function GE(t){return new dt(Lo(t))}ee.stringify=GE;function Lo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ee.safeStringify=Lo;function WE(t){return typeof t=="string"&&ee.IDENTIFIER.test(t)?new dt(`.${t}`):cg`[${t}]`}ee.getProperty=WE;function YE(t){if(typeof t=="string"&&ee.IDENTIFIER.test(t))return new dt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ee.getEsmExportName=YE;function XE(t){return new dt(t.toString())}ee.regexpCode=XE});var $l=T(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.ValueScope=Xe.ValueScopeName=Xe.Scope=Xe.varKinds=Xe.UsedValueState=void 0;var Ye=Do(),El=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},$i;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})($i||(Xe.UsedValueState=$i={}));Xe.varKinds={const:new Ye.Name("const"),let:new Ye.Name("let"),var:new Ye.Name("var")};var Pi=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ye.Name?e:this.name(e)}name(e){return new Ye.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Xe.Scope=Pi;var Ri=class extends Ye.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ye._)`.${new Ye.Name(r)}[${n}]`}};Xe.ValueScopeName=Ri;var QE=(0,Ye._)`\n`,Tl=class extends Pi{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?QE:Ye.nil}}get(){return this._scope}name(e){return new Ri(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ye._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=Ye.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,$i.Started);let l=r(u);if(l){let d=this.opts.es5?Xe.varKinds.var:Xe.varKinds.const;s=(0,Ye._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Ye._)`${s}${l}${this.opts._n}`;else throw new El(u);c.set(u,$i.Completed)})}return s}};Xe.ValueScope=Tl});var q=T(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.or=F.and=F.not=F.CodeGen=F.operators=F.varKinds=F.ValueScopeName=F.ValueScope=F.Scope=F.Name=F.regexpCode=F.stringify=F.getProperty=F.nil=F.strConcat=F.str=F._=void 0;var Y=Do(),vt=$l(),lr=Do();Object.defineProperty(F,"_",{enumerable:!0,get:function(){return lr._}});Object.defineProperty(F,"str",{enumerable:!0,get:function(){return lr.str}});Object.defineProperty(F,"strConcat",{enumerable:!0,get:function(){return lr.strConcat}});Object.defineProperty(F,"nil",{enumerable:!0,get:function(){return lr.nil}});Object.defineProperty(F,"getProperty",{enumerable:!0,get:function(){return lr.getProperty}});Object.defineProperty(F,"stringify",{enumerable:!0,get:function(){return lr.stringify}});Object.defineProperty(F,"regexpCode",{enumerable:!0,get:function(){return lr.regexpCode}});Object.defineProperty(F,"Name",{enumerable:!0,get:function(){return lr.Name}});var zi=$l();Object.defineProperty(F,"Scope",{enumerable:!0,get:function(){return zi.Scope}});Object.defineProperty(F,"ValueScope",{enumerable:!0,get:function(){return zi.ValueScope}});Object.defineProperty(F,"ValueScopeName",{enumerable:!0,get:function(){return zi.ValueScopeName}});Object.defineProperty(F,"varKinds",{enumerable:!0,get:function(){return zi.varKinds}});F.operators={GT:new Y._Code(">"),GTE:new Y._Code(">="),LT:new Y._Code("<"),LTE:new Y._Code("<="),EQ:new Y._Code("==="),NEQ:new Y._Code("!=="),NOT:new Y._Code("!"),OR:new Y._Code("||"),AND:new Y._Code("&&"),ADD:new Y._Code("+")};var Bt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Pl=class extends Bt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?vt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=An(this.rhs,e,r)),this}get names(){return this.rhs instanceof Y._CodeOrName?this.rhs.names:{}}},Oi=class extends Bt{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Y.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=An(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Y.Name?{}:{...this.lhs.names};return Ii(e,this.rhs)}},Rl=class extends Oi{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Ol=class extends Bt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Cl=class extends Bt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Il=class extends Bt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},zl=class extends Bt{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=An(this.code,e,r),this}get names(){return this.code instanceof Y._CodeOrName?this.code.names:{}}},Zo=class extends Bt{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,o=n.length;for(;o--;){let s=n[o];s.optimizeNames(e,r)||(eT(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Yr(e,r.names),{})}},Vt=class extends Zo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Nl=class extends Zo{},Nn=class extends Vt{};Nn.kind="else";var Gr=class t extends Vt{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Nn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(lg(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=An(this.condition,e,r),this}get names(){let e=super.names;return Ii(e,this.condition),this.else&&Yr(e,this.else.names),e}};Gr.kind="if";var Wr=class extends Vt{};Wr.kind="for";var Al=class extends Wr{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=An(this.iteration,e,r),this}get names(){return Yr(super.names,this.iteration.names)}},jl=class extends Wr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?vt.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Ii(super.names,this.from);return Ii(e,this.to)}},Ci=class extends Wr{constructor(e,r,n,o){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=o}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=An(this.iterable,e,r),this}get names(){return Yr(super.names,this.iterable.names)}},Uo=class extends Vt{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};Uo.kind="func";var Ho=class extends Zo{render(e){return"return "+super.render(e)}};Ho.kind="return";var Ml=class extends Vt{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,o;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(o=this.finally)===null||o===void 0||o.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Yr(e,this.catch.names),this.finally&&Yr(e,this.finally.names),e}},qo=class extends Vt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};qo.kind="catch";var Fo=class extends Vt{render(e){return"finally"+super.render(e)}};Fo.kind="finally";var Ll=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
- `:""},this._extScope=e,this._scope=new vt.Scope({parent:e}),this._nodes=[new Nl]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,o){let s=this._scope.toName(r);return n!==void 0&&o&&(this._constants[s.str]=n),this._leafNode(new Pl(e,s,n)),s}const(e,r,n){return this._def(vt.varKinds.const,e,r,n)}let(e,r,n){return this._def(vt.varKinds.let,e,r,n)}var(e,r,n){return this._def(vt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Oi(e,r,n))}add(e,r){return this._leafNode(new Rl(e,F.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Y.nil&&this._leafNode(new zl(e)),this}object(...e){let r=["{"];for(let[n,o]of e)r.length>1&&r.push(","),r.push(n),(n!==o||this.opts.es5)&&(r.push(":"),(0,Y.addCodeArg)(r,o));return r.push("}"),new Y._Code(r)}if(e,r,n){if(this._blockNode(new Gr(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Gr(e))}else(){return this._elseNode(new Nn)}endIf(){return this._endBlockNode(Gr,Nn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Al(e),r)}forRange(e,r,n,o,s=this.opts.es5?vt.varKinds.var:vt.varKinds.let){let i=this._scope.toName(e);return this._for(new jl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=vt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof Y.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Y._)`${i}.length`,a=>{this.var(s,(0,Y._)`${i}[${a}]`),n(s)})}return this._for(new Ci("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?vt.varKinds.var:vt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Y._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Ci("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Wr)}label(e){return this._leafNode(new Ol(e))}break(e){return this._leafNode(new Cl(e))}return(e){let r=new Ho;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Ho)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Ml;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new qo(s),r(s)}return n&&(this._currNode=o.finally=new Fo,this.code(n)),this._endBlockNode(qo,Fo)}throw(e){return this._leafNode(new Il(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Y.nil,n,o){return this._blockNode(new Uo(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Uo)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Gr))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};F.CodeGen=Ll;function Yr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Ii(t,e){return e instanceof Y._CodeOrName?Yr(t,e.names):t}function An(t,e,r){if(t instanceof Y.Name)return n(t);if(!o(t))return t;return new Y._Code(t._items.reduce((s,i)=>(i instanceof Y.Name&&(i=n(i)),i instanceof Y._Code?s.push(...i._items):s.push(i),s),[]));function n(s){let i=r[s.str];return i===void 0||e[s.str]!==1?s:(delete e[s.str],i)}function o(s){return s instanceof Y._Code&&s._items.some(i=>i instanceof Y.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function eT(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function lg(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Y._)`!${Dl(t)}`}F.not=lg;var tT=dg(F.operators.AND);function rT(...t){return t.reduce(tT)}F.and=rT;var nT=dg(F.operators.OR);function oT(...t){return t.reduce(nT)}F.or=oT;function dg(t){return(e,r)=>e===Y.nil?r:r===Y.nil?e:(0,Y._)`${Dl(e)} ${t} ${Dl(r)}`}function Dl(t){return t instanceof Y.Name?t:(0,Y._)`(${t})`}});var X=T(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.checkStrictMode=B.getErrorPath=B.Type=B.useFunc=B.setEvaluated=B.evaluatedPropsToName=B.mergeEvaluated=B.eachItem=B.unescapeJsonPointer=B.escapeJsonPointer=B.escapeFragment=B.unescapeFragment=B.schemaRefOrVal=B.schemaHasRulesButRef=B.schemaHasRules=B.checkUnknownRules=B.alwaysValidSchema=B.toHash=void 0;var oe=q(),sT=Do();function iT(t){let e={};for(let r of t)e[r]=!0;return e}B.toHash=iT;function aT(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(mg(t,e),!hg(e,t.self.RULES.all))}B.alwaysValidSchema=aT;function mg(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let o=n.RULES.keywords;for(let s in e)o[s]||yg(t,`unknown keyword: "${s}"`)}B.checkUnknownRules=mg;function hg(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}B.schemaHasRules=hg;function cT(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}B.schemaHasRulesButRef=cT;function uT({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,oe._)`${r}`}return(0,oe._)`${t}${e}${(0,oe.getProperty)(n)}`}B.schemaRefOrVal=uT;function lT(t){return gg(decodeURIComponent(t))}B.unescapeFragment=lT;function dT(t){return encodeURIComponent(Ul(t))}B.escapeFragment=dT;function Ul(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}B.escapeJsonPointer=Ul;function gg(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}B.unescapeJsonPointer=gg;function pT(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}B.eachItem=pT;function pg({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof oe.Name?(s instanceof oe.Name?t(o,s,i):e(o,s,i),i):s instanceof oe.Name?(e(o,i,s),s):r(s,i);return a===oe.Name&&!(c instanceof oe.Name)?n(o,c):c}}B.mergeEvaluated={props:pg({mergeNames:(t,e,r)=>t.if((0,oe._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,oe._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,oe._)`${r} || {}`).code((0,oe._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,oe._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,oe._)`${r} || {}`),Hl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:_g}),items:pg({mergeNames:(t,e,r)=>t.if((0,oe._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,oe._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,oe._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,oe._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function _g(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,oe._)`{}`);return e!==void 0&&Hl(t,r,e),r}B.evaluatedPropsToName=_g;function Hl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,oe._)`${e}${(0,oe.getProperty)(n)}`,!0))}B.setEvaluated=Hl;var fg={};function fT(t,e){return t.scopeValue("func",{ref:e,code:fg[e.code]||(fg[e.code]=new sT._Code(e.code))})}B.useFunc=fT;var Zl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Zl||(B.Type=Zl={}));function mT(t,e,r){if(t instanceof oe.Name){let n=e===Zl.Num;return r?n?(0,oe._)`"[" + ${t} + "]"`:(0,oe._)`"['" + ${t} + "']"`:n?(0,oe._)`"/" + ${t}`:(0,oe._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,oe.getProperty)(t).toString():"/"+Ul(t)}B.getErrorPath=mT;function yg(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}B.checkStrictMode=yg});var Kt=T(ql=>{"use strict";Object.defineProperty(ql,"__esModule",{value:!0});var Me=q(),hT={data:new Me.Name("data"),valCxt:new Me.Name("valCxt"),instancePath:new Me.Name("instancePath"),parentData:new Me.Name("parentData"),parentDataProperty:new Me.Name("parentDataProperty"),rootData:new Me.Name("rootData"),dynamicAnchors:new Me.Name("dynamicAnchors"),vErrors:new Me.Name("vErrors"),errors:new Me.Name("errors"),this:new Me.Name("this"),self:new Me.Name("self"),scope:new Me.Name("scope"),json:new Me.Name("json"),jsonPos:new Me.Name("jsonPos"),jsonLen:new Me.Name("jsonLen"),jsonPart:new Me.Name("jsonPart")};ql.default=hT});var Bo=T(Le=>{"use strict";Object.defineProperty(Le,"__esModule",{value:!0});Le.extendErrors=Le.resetErrorsCount=Le.reportExtraError=Le.reportError=Le.keyword$DataError=Le.keywordError=void 0;var Q=q(),Ni=X(),qe=Kt();Le.keywordError={message:({keyword:t})=>(0,Q.str)`must pass "${t}" keyword validation`};Le.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Q.str)`"${t}" keyword must be ${e} ($data)`:(0,Q.str)`"${t}" keyword is invalid ($data)`};function gT(t,e=Le.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=Sg(t,e,r);n??(i||a)?xg(s,c):vg(o,(0,Q._)`[${c}]`)}Le.reportError=gT;function _T(t,e=Le.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Sg(t,e,r);xg(o,a),s||i||vg(n,qe.default.vErrors)}Le.reportExtraError=_T;function yT(t,e){t.assign(qe.default.errors,e),t.if((0,Q._)`${qe.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Q._)`${qe.default.vErrors}.length`,e),()=>t.assign(qe.default.vErrors,null)))}Le.resetErrorsCount=yT;function xT({gen:t,keyword:e,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let i=t.name("err");t.forRange("i",o,qe.default.errors,a=>{t.const(i,(0,Q._)`${qe.default.vErrors}[${a}]`),t.if((0,Q._)`${i}.instancePath === undefined`,()=>t.assign((0,Q._)`${i}.instancePath`,(0,Q.strConcat)(qe.default.instancePath,s.errorPath))),t.assign((0,Q._)`${i}.schemaPath`,(0,Q.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,Q._)`${i}.schema`,r),t.assign((0,Q._)`${i}.data`,n))})}Le.extendErrors=xT;function xg(t,e){let r=t.const("err",e);t.if((0,Q._)`${qe.default.vErrors} === null`,()=>t.assign(qe.default.vErrors,(0,Q._)`[${r}]`),(0,Q._)`${qe.default.vErrors}.push(${r})`),t.code((0,Q._)`${qe.default.errors}++`)}function vg(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,Q._)`new ${t.ValidationError}(${e})`):(r.assign((0,Q._)`${n}.errors`,e),r.return(!1))}var Xr={keyword:new Q.Name("keyword"),schemaPath:new Q.Name("schemaPath"),params:new Q.Name("params"),propertyName:new Q.Name("propertyName"),message:new Q.Name("message"),schema:new Q.Name("schema"),parentSchema:new Q.Name("parentSchema")};function Sg(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Q._)`{}`:vT(t,e,r)}function vT(t,e,r={}){let{gen:n,it:o}=t,s=[ST(o,r),kT(t,r)];return bT(t,e,s),n.object(...s)}function ST({errorPath:t},{instancePath:e}){let r=e?(0,Q.str)`${t}${(0,Ni.getErrorPath)(e,Ni.Type.Str)}`:t;return[qe.default.instancePath,(0,Q.strConcat)(qe.default.instancePath,r)]}function kT({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,Q.str)`${e}/${t}`;return r&&(o=(0,Q.str)`${o}${(0,Ni.getErrorPath)(r,Ni.Type.Str)}`),[Xr.schemaPath,o]}function bT(t,{params:e,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;n.push([Xr.keyword,o],[Xr.params,typeof e=="function"?e(t):e||(0,Q._)`{}`]),c.messages&&n.push([Xr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Xr.schema,i],[Xr.parentSchema,(0,Q._)`${l}${d}`],[qe.default.data,s]),u&&n.push([Xr.propertyName,u])}});var bg=T(jn=>{"use strict";Object.defineProperty(jn,"__esModule",{value:!0});jn.boolOrEmptySchema=jn.topBoolOrEmptySchema=void 0;var wT=Bo(),ET=q(),TT=Kt(),$T={message:"boolean schema is false"};function PT(t){let{gen:e,schema:r,validateName:n}=t;r===!1?kg(t,!1):typeof r=="object"&&r.$async===!0?e.return(TT.default.data):(e.assign((0,ET._)`${n}.errors`,null),e.return(!0))}jn.topBoolOrEmptySchema=PT;function RT(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),kg(t)):r.var(e,!0)}jn.boolOrEmptySchema=RT;function kg(t,e){let{gen:r,data:n}=t,o={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,wT.reportError)(o,$T,void 0,e)}});var Fl=T(Mn=>{"use strict";Object.defineProperty(Mn,"__esModule",{value:!0});Mn.getRules=Mn.isJSONType=void 0;var OT=["string","number","integer","boolean","null","object","array"],CT=new Set(OT);function IT(t){return typeof t=="string"&&CT.has(t)}Mn.isJSONType=IT;function zT(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}Mn.getRules=zT});var Bl=T(dr=>{"use strict";Object.defineProperty(dr,"__esModule",{value:!0});dr.shouldUseRule=dr.shouldUseGroup=dr.schemaHasRulesForType=void 0;function NT({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&wg(t,n)}dr.schemaHasRulesForType=NT;function wg(t,e){return e.rules.some(r=>Eg(t,r))}dr.shouldUseGroup=wg;function Eg(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}dr.shouldUseRule=Eg});var Vo=T(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.reportTypeError=De.checkDataTypes=De.checkDataType=De.coerceAndCheckDataType=De.getJSONTypes=De.getSchemaTypes=De.DataType=void 0;var AT=Fl(),jT=Bl(),MT=Bo(),U=q(),Tg=X(),Ln;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Ln||(De.DataType=Ln={}));function LT(t){let e=$g(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}De.getSchemaTypes=LT;function $g(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(AT.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}De.getJSONTypes=$g;function DT(t,e){let{gen:r,data:n,opts:o}=t,s=ZT(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,jT.schemaHasRulesForType)(t,e[0]));if(i){let a=Kl(e,n,o.strictNumbers,Ln.Wrong);r.if(a,()=>{s.length?UT(t,e,s):Jl(t)})}return i}De.coerceAndCheckDataType=DT;var Pg=new Set(["string","number","integer","boolean","null"]);function ZT(t,e){return e?t.filter(r=>Pg.has(r)||e==="array"&&r==="array"):[]}function UT(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,U._)`typeof ${o}`),a=n.let("coerced",(0,U._)`undefined`);s.coerceTypes==="array"&&n.if((0,U._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,U._)`${o}[0]`).assign(i,(0,U._)`typeof ${o}`).if(Kl(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,U._)`${a} !== undefined`);for(let u of r)(Pg.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Jl(t),n.endIf(),n.if((0,U._)`${a} !== undefined`,()=>{n.assign(o,a),HT(t,a)});function c(u){switch(u){case"string":n.elseIf((0,U._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,U._)`"" + ${o}`).elseIf((0,U._)`${o} === null`).assign(a,(0,U._)`""`);return;case"number":n.elseIf((0,U._)`${i} == "boolean" || ${o} === null
4
- || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,U._)`+${o}`);return;case"integer":n.elseIf((0,U._)`${i} === "boolean" || ${o} === null
5
- || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,U._)`+${o}`);return;case"boolean":n.elseIf((0,U._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,U._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,U._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,U._)`${i} === "string" || ${i} === "number"
6
- || ${i} === "boolean" || ${o} === null`).assign(a,(0,U._)`[${o}]`)}}}function HT({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,U._)`${e} !== undefined`,()=>t.assign((0,U._)`${e}[${r}]`,n))}function Vl(t,e,r,n=Ln.Correct){let o=n===Ln.Correct?U.operators.EQ:U.operators.NEQ,s;switch(t){case"null":return(0,U._)`${e} ${o} null`;case"array":s=(0,U._)`Array.isArray(${e})`;break;case"object":s=(0,U._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,U._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,U._)`typeof ${e} ${o} ${t}`}return n===Ln.Correct?s:(0,U.not)(s);function i(a=U.nil){return(0,U.and)((0,U._)`typeof ${e} == "number"`,a,r?(0,U._)`isFinite(${e})`:U.nil)}}De.checkDataType=Vl;function Kl(t,e,r,n){if(t.length===1)return Vl(t[0],e,r,n);let o,s=(0,Tg.toHash)(t);if(s.array&&s.object){let i=(0,U._)`typeof ${e} != "object"`;o=s.null?i:(0,U._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=U.nil;s.number&&delete s.integer;for(let i in s)o=(0,U.and)(o,Vl(i,e,r,n));return o}De.checkDataTypes=Kl;var qT={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,U._)`{type: ${t}}`:(0,U._)`{type: ${e}}`};function Jl(t){let e=FT(t);(0,MT.reportError)(e,qT)}De.reportTypeError=Jl;function FT(t){let{gen:e,data:r,schema:n}=t,o=(0,Tg.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Og=T(Ai=>{"use strict";Object.defineProperty(Ai,"__esModule",{value:!0});Ai.assignDefaults=void 0;var Dn=q(),BT=X();function VT(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Rg(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Rg(t,s,o.default))}Ai.assignDefaults=VT;function Rg(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Dn._)`${s}${(0,Dn.getProperty)(e)}`;if(o){(0,BT.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Dn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Dn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Dn._)`${a} = ${(0,Dn.stringify)(r)}`)}});var pt=T(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});ne.validateUnion=ne.validateArray=ne.usePattern=ne.callValidateCode=ne.schemaProperties=ne.allSchemaProperties=ne.noPropertyInData=ne.propertyInData=ne.isOwnProperty=ne.hasPropFunc=ne.reportMissingProp=ne.checkMissingProp=ne.checkReportMissingProp=void 0;var pe=q(),Gl=X(),pr=Kt(),KT=X();function JT(t,e){let{gen:r,data:n,it:o}=t;r.if(Yl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,pe._)`${e}`},!0),t.error()})}ne.checkReportMissingProp=JT;function GT({gen:t,data:e,it:{opts:r}},n,o){return(0,pe.or)(...n.map(s=>(0,pe.and)(Yl(t,e,s,r.ownProperties),(0,pe._)`${o} = ${s}`)))}ne.checkMissingProp=GT;function WT(t,e){t.setParams({missingProperty:e},!0),t.error()}ne.reportMissingProp=WT;function Cg(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,pe._)`Object.prototype.hasOwnProperty`})}ne.hasPropFunc=Cg;function Wl(t,e,r){return(0,pe._)`${Cg(t)}.call(${e}, ${r})`}ne.isOwnProperty=Wl;function YT(t,e,r,n){let o=(0,pe._)`${e}${(0,pe.getProperty)(r)} !== undefined`;return n?(0,pe._)`${o} && ${Wl(t,e,r)}`:o}ne.propertyInData=YT;function Yl(t,e,r,n){let o=(0,pe._)`${e}${(0,pe.getProperty)(r)} === undefined`;return n?(0,pe.or)(o,(0,pe.not)(Wl(t,e,r))):o}ne.noPropertyInData=Yl;function Ig(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ne.allSchemaProperties=Ig;function XT(t,e){return Ig(e).filter(r=>!(0,Gl.alwaysValidSchema)(t,e[r]))}ne.schemaProperties=XT;function QT({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,pe._)`${t}, ${e}, ${n}${o}`:e,d=[[pr.default.instancePath,(0,pe.strConcat)(pr.default.instancePath,s)],[pr.default.parentData,i.parentData],[pr.default.parentDataProperty,i.parentDataProperty],[pr.default.rootData,pr.default.rootData]];i.opts.dynamicRef&&d.push([pr.default.dynamicAnchors,pr.default.dynamicAnchors]);let m=(0,pe._)`${l}, ${r.object(...d)}`;return c!==pe.nil?(0,pe._)`${a}.call(${c}, ${m})`:(0,pe._)`${a}(${m})`}ne.callValidateCode=QT;var e$=(0,pe._)`new RegExp`;function t$({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,pe._)`${o.code==="new RegExp"?e$:(0,KT.useFunc)(t,o)}(${r}, ${n})`})}ne.usePattern=t$;function r$(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,pe._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Gl.Type.Num},s),e.if((0,pe.not)(s),a)})}}ne.validateArray=r$;function n$(t){let{gen:e,schema:r,keyword:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Gl.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,pe._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,pe.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}ne.validateUnion=n$});var Ag=T(It=>{"use strict";Object.defineProperty(It,"__esModule",{value:!0});It.validateKeywordUsage=It.validSchemaType=It.funcKeywordCode=It.macroKeywordCode=void 0;var Fe=q(),Qr=Kt(),o$=pt(),s$=Bo();function i$(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Ng(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Fe.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}It.macroKeywordCode=i$;function a$(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;u$(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Ng(n,o,u),d=n.let("valid");t.block$data(d,m),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function m(){if(e.errors===!1)h(),e.modifying&&zg(t),g(()=>t.error());else{let y=e.async?f():p();e.modifying&&zg(t),g(()=>c$(t,y))}}function f(){let y=n.let("ruleErrs",null);return n.try(()=>h((0,Fe._)`await `),v=>n.assign(d,!1).if((0,Fe._)`${v} instanceof ${c.ValidationError}`,()=>n.assign(y,(0,Fe._)`${v}.errors`),()=>n.throw(v))),y}function p(){let y=(0,Fe._)`${l}.errors`;return n.assign(y,null),h(Fe.nil),y}function h(y=e.async?(0,Fe._)`await `:Fe.nil){let v=c.opts.passContext?Qr.default.this:Qr.default.self,S=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Fe._)`${y}${(0,o$.callValidateCode)(t,l,v,S)}`,e.modifying)}function g(y){var v;n.if((0,Fe.not)((v=e.valid)!==null&&v!==void 0?v:d),y)}}It.funcKeywordCode=a$;function zg(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Fe._)`${n.parentData}[${n.parentDataProperty}]`))}function c$(t,e){let{gen:r}=t;r.if((0,Fe._)`Array.isArray(${e})`,()=>{r.assign(Qr.default.vErrors,(0,Fe._)`${Qr.default.vErrors} === null ? ${e} : ${Qr.default.vErrors}.concat(${e})`).assign(Qr.default.errors,(0,Fe._)`${Qr.default.vErrors}.length`),(0,s$.extendErrors)(t)},()=>t.error())}function u$({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Ng(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Fe.stringify)(r)})}function l$(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}It.validSchemaType=l$;function d$({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}It.validateKeywordUsage=d$});var Mg=T(fr=>{"use strict";Object.defineProperty(fr,"__esModule",{value:!0});fr.extendSubschemaMode=fr.extendSubschemaData=fr.getSubschema=void 0;var zt=q(),jg=X();function p$(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,zt._)`${t.schemaPath}${(0,zt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,zt._)`${t.schemaPath}${(0,zt.getProperty)(e)}${(0,zt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,jg.escapeFragment)(r)}`}}if(n!==void 0){if(o===void 0||s===void 0||i===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:i,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}fr.getSubschema=p$;function f$(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,m=a.let("data",(0,zt._)`${e.data}${(0,zt.getProperty)(r)}`,!0);c(m),t.errorPath=(0,zt.str)`${u}${(0,jg.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,zt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof zt.Name?o:a.let("data",o,!0);c(u),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}fr.extendSubschemaData=f$;function m$(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:s}){n!==void 0&&(t.compositeRule=n),o!==void 0&&(t.createErrors=o),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=r}fr.extendSubschemaMode=m$});var Xl=T((q1,Lg)=>{"use strict";Lg.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,o,s;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!t(e[o],r[o]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(s=Object.keys(e),n=s.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[o]))return!1;for(o=n;o--!==0;){var i=s[o];if(!t(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}});var Zg=T((F1,Dg)=>{"use strict";var mr=Dg.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};ji(e,n,o,t,"",t)};mr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};mr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};mr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};mr.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function ji(t,e,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in mr.arrayKeywords)for(var m=0;m<d.length;m++)ji(t,e,r,d[m],o+"/"+l+"/"+m,s,o,l,n,m)}else if(l in mr.propsKeywords){if(d&&typeof d=="object")for(var f in d)ji(t,e,r,d[f],o+"/"+l+"/"+h$(f),s,o,l,n,f)}else(l in mr.keywords||t.allKeys&&!(l in mr.skipKeywords))&&ji(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function h$(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Ko=T(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.getSchemaRefs=Qe.resolveUrl=Qe.normalizeId=Qe._getFullPath=Qe.getFullPath=Qe.inlineRef=void 0;var g$=X(),_$=Xl(),y$=Zg(),x$=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function v$(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Ql(t):e?Ug(t)<=e:!1}Qe.inlineRef=v$;var S$=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Ql(t){for(let e in t){if(S$.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Ql)||typeof r=="object"&&Ql(r))return!0}return!1}function Ug(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!x$.has(r)&&(typeof t[r]=="object"&&(0,g$.eachItem)(t[r],n=>e+=Ug(n)),e===1/0))return 1/0}return e}function Hg(t,e="",r){r!==!1&&(e=Zn(e));let n=t.parse(e);return qg(t,n)}Qe.getFullPath=Hg;function qg(t,e){return t.serialize(e).split("#")[0]+"#"}Qe._getFullPath=qg;var k$=/#\/?$/;function Zn(t){return t?t.replace(k$,""):""}Qe.normalizeId=Zn;function b$(t,e,r){return r=Zn(r),t.resolve(e,r)}Qe.resolveUrl=b$;var w$=/^[a-z_][-a-z0-9._]*$/i;function E$(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Zn(t[r]||e),s={"":o},i=Hg(n,o,!1),a={},c=new Set;return y$(t,{allKeys:!0},(d,m,f,p)=>{if(p===void 0)return;let h=i+m,g=s[p];typeof d[r]=="string"&&(g=y.call(this,d[r])),v.call(this,d.$anchor),v.call(this,d.$dynamicAnchor),s[m]=g;function y(S){let w=this.opts.uriResolver.resolve;if(S=Zn(g?w(g,S):S),c.has(S))throw l(S);c.add(S);let R=this.refs[S];return typeof R=="string"&&(R=this.refs[R]),typeof R=="object"?u(d,R.schema,S):S!==Zn(h)&&(S[0]==="#"?(u(d,a[S],S),a[S]=d):this.refs[S]=h),S}function v(S){if(typeof S=="string"){if(!w$.test(S))throw new Error(`invalid anchor "${S}"`);y.call(this,`#${S}`)}}}),a;function u(d,m,f){if(m!==void 0&&!_$(d,m))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Qe.getSchemaRefs=E$});var Wo=T(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.getData=hr.KeywordCxt=hr.validateFunctionCode=void 0;var Jg=bg(),Fg=Vo(),td=Bl(),Mi=Vo(),T$=Og(),Go=Ag(),ed=Mg(),z=q(),L=Kt(),$$=Ko(),Jt=X(),Jo=Bo();function P$(t){if(Yg(t)&&(Xg(t),Wg(t))){C$(t);return}Gg(t,()=>(0,Jg.topBoolOrEmptySchema)(t))}hr.validateFunctionCode=P$;function Gg({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,z._)`${L.default.data}, ${L.default.valCxt}`,n.$async,()=>{t.code((0,z._)`"use strict"; ${Bg(r,o)}`),O$(t,o),t.code(s)}):t.func(e,(0,z._)`${L.default.data}, ${R$(o)}`,n.$async,()=>t.code(Bg(r,o)).code(s))}function R$(t){return(0,z._)`{${L.default.instancePath}="", ${L.default.parentData}, ${L.default.parentDataProperty}, ${L.default.rootData}=${L.default.data}${t.dynamicRef?(0,z._)`, ${L.default.dynamicAnchors}={}`:z.nil}}={}`}function O$(t,e){t.if(L.default.valCxt,()=>{t.var(L.default.instancePath,(0,z._)`${L.default.valCxt}.${L.default.instancePath}`),t.var(L.default.parentData,(0,z._)`${L.default.valCxt}.${L.default.parentData}`),t.var(L.default.parentDataProperty,(0,z._)`${L.default.valCxt}.${L.default.parentDataProperty}`),t.var(L.default.rootData,(0,z._)`${L.default.valCxt}.${L.default.rootData}`),e.dynamicRef&&t.var(L.default.dynamicAnchors,(0,z._)`${L.default.valCxt}.${L.default.dynamicAnchors}`)},()=>{t.var(L.default.instancePath,(0,z._)`""`),t.var(L.default.parentData,(0,z._)`undefined`),t.var(L.default.parentDataProperty,(0,z._)`undefined`),t.var(L.default.rootData,L.default.data),e.dynamicRef&&t.var(L.default.dynamicAnchors,(0,z._)`{}`)})}function C$(t){let{schema:e,opts:r,gen:n}=t;Gg(t,()=>{r.$comment&&e.$comment&&e_(t),j$(t),n.let(L.default.vErrors,null),n.let(L.default.errors,0),r.unevaluated&&I$(t),Qg(t),D$(t)})}function I$(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,z._)`${r}.evaluated`),e.if((0,z._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,z._)`${t.evaluated}.props`,(0,z._)`undefined`)),e.if((0,z._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,z._)`${t.evaluated}.items`,(0,z._)`undefined`))}function Bg(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,z._)`/*# sourceURL=${r} */`:z.nil}function z$(t,e){if(Yg(t)&&(Xg(t),Wg(t))){N$(t,e);return}(0,Jg.boolOrEmptySchema)(t,e)}function Wg({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function Yg(t){return typeof t.schema!="boolean"}function N$(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&e_(t),M$(t),L$(t);let s=n.const("_errs",L.default.errors);Qg(t,s),n.var(e,(0,z._)`${s} === ${L.default.errors}`)}function Xg(t){(0,Jt.checkUnknownRules)(t),A$(t)}function Qg(t,e){if(t.opts.jtd)return Vg(t,[],!1,e);let r=(0,Fg.getSchemaTypes)(t.schema),n=(0,Fg.coerceAndCheckDataType)(t,r);Vg(t,r,!n,e)}function A$(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Jt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function j$(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Jt.checkStrictMode)(t,"default is ignored in the schema root")}function M$(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,$$.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function L$(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function e_({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,z._)`${L.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,z.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,z._)`${L.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function D$(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,z._)`${L.default.errors} === 0`,()=>e.return(L.default.data),()=>e.throw((0,z._)`new ${o}(${L.default.vErrors})`)):(e.assign((0,z._)`${n}.errors`,L.default.vErrors),s.unevaluated&&Z$(t),e.return((0,z._)`${L.default.errors} === 0`))}function Z$({gen:t,evaluated:e,props:r,items:n}){r instanceof z.Name&&t.assign((0,z._)`${e}.props`,r),n instanceof z.Name&&t.assign((0,z._)`${e}.items`,n)}function Vg(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Jt.schemaHasRulesButRef)(s,l))){o.block(()=>r_(t,"$ref",l.all.$ref.definition));return}c.jtd||U$(t,e),o.block(()=>{for(let m of l.rules)d(m);d(l.post)});function d(m){(0,td.shouldUseGroup)(s,m)&&(m.type?(o.if((0,Mi.checkDataType)(m.type,i,c.strictNumbers)),Kg(t,m),e.length===1&&e[0]===m.type&&r&&(o.else(),(0,Mi.reportTypeError)(t)),o.endIf()):Kg(t,m),a||o.if((0,z._)`${L.default.errors} === ${n||0}`))}}function Kg(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,T$.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,td.shouldUseRule)(n,s)&&r_(t,s.keyword,s.definition,e.type)})}function U$(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(H$(t,e),t.opts.allowUnionTypes||q$(t,e),F$(t,t.dataTypes))}function H$(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{t_(t.dataTypes,r)||rd(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),V$(t,e)}}function q$(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&rd(t,"use allowUnionTypes to allow union type keyword")}function F$(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,td.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>B$(e,i))&&rd(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function B$(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function t_(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function V$(t,e){let r=[];for(let n of t.dataTypes)t_(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function rd(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Jt.checkStrictMode)(t,e,t.opts.strictTypes)}var Li=class{constructor(e,r,n){if((0,Go.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Jt.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",n_(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Go.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",L.default.errors))}result(e,r,n){this.failResult((0,z.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,z.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,z._)`${r} !== undefined && (${(0,z.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?Jo.reportExtraError:Jo.reportError)(this,this.def.error,r)}$dataError(){(0,Jo.reportError)(this,this.def.$dataError||Jo.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Jo.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=z.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=z.nil,r=z.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,z.or)((0,z._)`${o} === undefined`,r)),e!==z.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==z.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,z.or)(i(),a());function i(){if(n.length){if(!(r instanceof z.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,z._)`${(0,Mi.checkDataTypes)(c,r,s.opts.strictNumbers,Mi.DataType.Wrong)}`}return z.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,z._)`!${c}(${r})`}return z.nil}}subschema(e,r){let n=(0,ed.getSubschema)(this.it,e);(0,ed.extendSubschemaData)(n,this.it,e),(0,ed.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return z$(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Jt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Jt.mergeEvaluated.items(o,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(e,z.Name)),!0}};hr.KeywordCxt=Li;function r_(t,e,r,n){let o=new Li(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Go.funcKeywordCode)(o,r):"macro"in r?(0,Go.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Go.funcKeywordCode)(o,r)}var K$=/^\/(?:[^~]|~0|~1)*$/,J$=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function n_(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return L.default.rootData;if(t[0]==="/"){if(!K$.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=L.default.rootData}else{let u=J$.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,z._)`${s}${(0,z.getProperty)((0,Jt.unescapeJsonPointer)(u))}`,i=(0,z._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}hr.getData=n_});var Di=T(od=>{"use strict";Object.defineProperty(od,"__esModule",{value:!0});var nd=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};od.default=nd});var Yo=T(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});var sd=Ko(),id=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,sd.resolveUrl)(e,r,n),this.missingSchema=(0,sd.normalizeId)((0,sd.getFullPath)(e,this.missingRef))}};ad.default=id});var Ui=T(ft=>{"use strict";Object.defineProperty(ft,"__esModule",{value:!0});ft.resolveSchema=ft.getCompilingSchema=ft.resolveRef=ft.compileSchema=ft.SchemaEnv=void 0;var St=q(),G$=Di(),en=Kt(),kt=Ko(),o_=X(),W$=Wo(),Un=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,kt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};ft.SchemaEnv=Un;function ud(t){let e=s_.call(this,t);if(e)return e;let r=(0,kt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new St.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:G$.default,code:(0,St._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:en.default.data,parentData:en.default.parentData,parentDataProperty:en.default.parentDataProperty,dataNames:[en.default.data],dataPathArr:[St.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,St.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:St.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,St._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,W$.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(en.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let f=new Function(`${en.default.self}`,`${en.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:f}),f.errors=null,f.schema=t.schema,f.schemaEnv=t,t.$async&&(f.$async=!0),this.opts.code.source===!0&&(f.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;f.evaluated={props:p instanceof St.Name?void 0:p,items:h instanceof St.Name?void 0:h,dynamicProps:p instanceof St.Name,dynamicItems:h instanceof St.Name},f.source&&(f.source.evaluated=(0,St.stringify)(f.evaluated))}return t.validate=f,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}ft.compileSchema=ud;function Y$(t,e,r){var n;r=(0,kt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=eP.call(this,t,r);if(s===void 0){let i=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;i&&(s=new Un({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=X$.call(this,s)}ft.resolveRef=Y$;function X$(t){return(0,kt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:ud.call(this,t)}function s_(t){for(let e of this._compilations)if(Q$(e,t))return e}ft.getCompilingSchema=s_;function Q$(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function eP(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Zi.call(this,t,e)}function Zi(t,e){let r=this.opts.uriResolver.parse(e),n=(0,kt._getFullPath)(this.opts.uriResolver,r),o=(0,kt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return cd.call(this,r,t);let s=(0,kt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Zi.call(this,t,i);return typeof a?.schema!="object"?void 0:cd.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||ud.call(this,i),s===(0,kt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,kt.resolveUrl)(this.opts.uriResolver,o,u)),new Un({schema:a,schemaId:c,root:t,baseId:o})}return cd.call(this,r,i)}}ft.resolveSchema=Zi;var tP=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function cd(t,{baseId:e,schema:r,root:n}){var o;if(((o=t.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,o_.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!tP.has(a)&&u&&(e=(0,kt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,o_.schemaHasRulesButRef)(r,this.RULES)){let a=(0,kt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Zi.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Un({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var i_=T((W1,rP)=>{rP.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var dd=T((Y1,l_)=>{"use strict";var nP=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),c_=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function ld(t){let e="",r=0,n=0;for(n=0;n<t.length;n++)if(r=t[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n<t.length;n++){if(r=t[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var oP=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function a_(t){return t.length=0,!0}function sP(t,e,r){if(t.length){let n=ld(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function iP(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=sP;for(let c=0;c<t.length;c++){let u=t[c];if(!(u==="["||u==="]"))if(u===":"){if(s===!0&&(i=!0),!a(o,n,r))break;if(++e>7){r.error=!0;break}c>0&&t[c-1]===":"&&(s=!0),n.push(":");continue}else if(u==="%"){if(!a(o,n,r))break;a=a_}else{o.push(u);continue}}return o.length&&(a===a_?r.zone=o.join(""):i?n.push(o.join("")):n.push(ld(o))),r.address=n.join(""),r}function u_(t){if(aP(t,":")<2)return{host:t,isIPV6:!1};let e=iP(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function aP(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function cP(t){let e=t,r=[],n=-1,o=0;for(;o=e.length;){if(o===1){if(e===".")break;if(e==="/"){r.push("/");break}else{r.push(e);break}}else if(o===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){r.push("/");break}}else if(o===3&&e==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),r.length!==0&&r.pop();continue}}if((n=e.indexOf("/",1))===-1){r.push(e);break}else r.push(e.slice(0,n)),e=e.slice(n)}return r.join("")}function uP(t,e){let r=e!==!0?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function lP(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!c_(r)){let n=u_(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=t.host}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}l_.exports={nonSimpleDomain:oP,recomposeAuthority:lP,normalizeComponentEncoding:uP,removeDotSegments:cP,isIPv4:c_,isUUID:nP,normalizeIPv6:u_,stringArrayToHexStripped:ld}});var h_=T((X1,m_)=>{"use strict";var{isUUID:dP}=dd(),pP=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,fP=["http","https","ws","wss","urn","urn:uuid"];function mP(t){return fP.indexOf(t)!==-1}function pd(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function d_(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function p_(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function hP(t){return t.secure=pd(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function gP(t){if((t.port===(pd(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function _P(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(pP);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let o=`${n}:${e.nid||t.nid}`,s=fd(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function yP(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),o=`${r}:${e.nid||n}`,s=fd(o);s&&(t=s.serialize(t,e));let i=t,a=t.nss;return i.path=`${n||e.nid}:${a}`,e.skipEscape=!0,i}function xP(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!dP(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function vP(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var f_={scheme:"http",domainHost:!0,parse:d_,serialize:p_},SP={scheme:"https",domainHost:f_.domainHost,parse:d_,serialize:p_},Hi={scheme:"ws",domainHost:!0,parse:hP,serialize:gP},kP={scheme:"wss",domainHost:Hi.domainHost,parse:Hi.parse,serialize:Hi.serialize},bP={scheme:"urn",parse:_P,serialize:yP,skipNormalize:!0},wP={scheme:"urn:uuid",parse:xP,serialize:vP,skipNormalize:!0},qi={http:f_,https:SP,ws:Hi,wss:kP,urn:bP,"urn:uuid":wP};Object.setPrototypeOf(qi,null);function fd(t){return t&&(qi[t]||qi[t.toLowerCase()])||void 0}m_.exports={wsIsSecure:pd,SCHEMES:qi,isValidSchemeName:mP,getSchemeHandler:fd}});var y_=T((Q1,Bi)=>{"use strict";var{normalizeIPv6:EP,removeDotSegments:Xo,recomposeAuthority:TP,normalizeComponentEncoding:Fi,isIPv4:$P,nonSimpleDomain:PP}=dd(),{SCHEMES:RP,getSchemeHandler:g_}=h_();function OP(t,e){return typeof t=="string"?t=Nt(Gt(t,e),e):typeof t=="object"&&(t=Gt(Nt(t,e),e)),t}function CP(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=__(Gt(t,n),Gt(e,n),n,!0);return n.skipEscape=!0,Nt(o,n)}function __(t,e,r,n){let o={};return n||(t=Gt(Nt(t,r),r),e=Gt(Nt(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Xo(e.path||""),o.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Xo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Xo(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?o.path="/"+e.path:t.path?o.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:o.path=e.path,o.path=Xo(o.path)),o.query=e.query):(o.path=t.path,e.query!==void 0?o.query=e.query:o.query=t.query),o.userinfo=t.userinfo,o.host=t.host,o.port=t.port),o.scheme=t.scheme),o.fragment=e.fragment,o}function IP(t,e,r){return typeof t=="string"?(t=unescape(t),t=Nt(Fi(Gt(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Nt(Fi(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Nt(Fi(Gt(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Nt(Fi(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Nt(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),o=[],s=g_(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let i=TP(r);if(i!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(i),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(a=Xo(a)),i===void 0&&a[0]==="/"&&a[1]==="/"&&(a="/%2F"+a.slice(2)),o.push(a)}return r.query!==void 0&&o.push("?",r.query),r.fragment!==void 0&&o.push("#",r.fragment),o.join("")}var zP=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Gt(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match(zP);if(s){if(n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]),n.host)if($P(n.host)===!1){let c=EP(n.host);n.host=c.host.toLowerCase(),o=c.isIPV6}else o=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let i=g_(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&PP(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(a){n.error=n.error||"Host's domain name can not be converted to ASCII: "+a}(!i||i&&!i.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),i&&i.parse&&i.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var md={SCHEMES:RP,normalize:OP,resolve:CP,resolveComponent:__,equal:IP,serialize:Nt,parse:Gt};Bi.exports=md;Bi.exports.default=md;Bi.exports.fastUri=md});var v_=T(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var x_=y_();x_.code='require("ajv/dist/runtime/uri").default';hd.default=x_});var P_=T(ze=>{"use strict";Object.defineProperty(ze,"__esModule",{value:!0});ze.CodeGen=ze.Name=ze.nil=ze.stringify=ze.str=ze._=ze.KeywordCxt=void 0;var NP=Wo();Object.defineProperty(ze,"KeywordCxt",{enumerable:!0,get:function(){return NP.KeywordCxt}});var Hn=q();Object.defineProperty(ze,"_",{enumerable:!0,get:function(){return Hn._}});Object.defineProperty(ze,"str",{enumerable:!0,get:function(){return Hn.str}});Object.defineProperty(ze,"stringify",{enumerable:!0,get:function(){return Hn.stringify}});Object.defineProperty(ze,"nil",{enumerable:!0,get:function(){return Hn.nil}});Object.defineProperty(ze,"Name",{enumerable:!0,get:function(){return Hn.Name}});Object.defineProperty(ze,"CodeGen",{enumerable:!0,get:function(){return Hn.CodeGen}});var AP=Di(),E_=Yo(),jP=Fl(),Qo=Ui(),MP=q(),es=Ko(),Vi=Vo(),_d=X(),S_=i_(),LP=v_(),T_=(t,e)=>new RegExp(t,e);T_.code="new RegExp";var DP=["removeAdditional","useDefaults","coerceTypes"],ZP=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),UP={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},HP={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},k_=200;function qP(t){var e,r,n,o,s,i,a,c,u,l,d,m,f,p,h,g,y,v,S,w,R,ae,ce,rt,Dt;let me=t.strict,Qt=(e=t.code)===null||e===void 0?void 0:e.optimize,Ze=Qt===!0||Qt===void 0?1:Qt||0,Ps=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:T_,Da=(o=t.uriResolver)!==null&&o!==void 0?o:LP.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:me)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:me)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:me)!==null&&l!==void 0?l:"log",strictTuples:(m=(d=t.strictTuples)!==null&&d!==void 0?d:me)!==null&&m!==void 0?m:"log",strictRequired:(p=(f=t.strictRequired)!==null&&f!==void 0?f:me)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:Ze,regExp:Ps}:{optimize:Ze,regExp:Ps},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:k_,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:k_,meta:(y=t.meta)!==null&&y!==void 0?y:!0,messages:(v=t.messages)!==null&&v!==void 0?v:!0,inlineRefs:(S=t.inlineRefs)!==null&&S!==void 0?S:!0,schemaId:(w=t.schemaId)!==null&&w!==void 0?w:"$id",addUsedSchema:(R=t.addUsedSchema)!==null&&R!==void 0?R:!0,validateSchema:(ae=t.validateSchema)!==null&&ae!==void 0?ae:!0,validateFormats:(ce=t.validateFormats)!==null&&ce!==void 0?ce:!0,unicodeRegExp:(rt=t.unicodeRegExp)!==null&&rt!==void 0?rt:!0,int32range:(Dt=t.int32range)!==null&&Dt!==void 0?Dt:!0,uriResolver:Da}}var ts=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...qP(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new MP.ValueScope({scope:{},prefixes:ZP,es5:r,lines:n}),this.logger=GP(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,jP.getRules)(),b_.call(this,UP,e,"NOT SUPPORTED"),b_.call(this,HP,e,"DEPRECATED","warn"),this._metaOpts=KP.call(this),e.formats&&BP.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&VP.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),FP.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=S_;n==="id"&&(o={...S_},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let m=this._addSchema(l,d);return m.validate||i.call(this,m)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof E_.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),i.call(this,l)}}function a({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,o=this.opts.validateSchema){if(Array.isArray(e)){for(let i of e)this.addSchema(i,void 0,n,o);return this}let s;if(typeof e=="object"){let{schemaId:i}=this.opts;if(s=e[i],s!==void 0&&typeof s!="string")throw new Error(`schema ${i} must be string`)}return r=(0,es.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,o,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let o=this.validate(n,e);if(!o&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return o}getSchema(e){let r;for(;typeof(r=w_.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Qo.SchemaEnv({schema:{},schemaId:n});if(r=Qo.resolveSchema.call(this,o,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=w_.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,es.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(YP.call(this,n,r),!r)return(0,_d.eachItem)(n,s=>gd.call(this,s)),this;QP.call(this,r);let o={...r,type:(0,Vi.getJSONTypes)(r.type),schemaType:(0,Vi.getJSONTypes)(r.schemaType)};return(0,_d.eachItem)(n,o.type.length===0?s=>gd.call(this,s,o):s=>o.type.forEach(i=>gd.call(this,s,o,i))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let o=n.rules.findIndex(s=>s.keyword===e);o>=0&&n.rules.splice(o,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(o=>`${n}${o.instancePath} ${o.message}`).reduce((o,s)=>o+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let o of r){let s=o.split("/").slice(1),i=e;for(let a of s)i=i[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:u}=c.definition,l=i[a];u&&l&&(i[a]=$_(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let o=e[n];(!r||r.test(n))&&(typeof o=="string"?delete e[n]:o&&!o.meta&&(this._cache.delete(o.schema),delete e[n]))}}_addSchema(e,r,n,o=this.opts.validateSchema,s=this.opts.addUsedSchema){let i,{schemaId:a}=this.opts;if(typeof e=="object")i=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,es.normalizeId)(i||n);let u=es.getSchemaRefs.call(this,e,n);return c=new Qo.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),o&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):Qo.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{Qo.compileSchema.call(this,e)}finally{this.opts=r}}};ts.ValidationError=AP.default;ts.MissingRefError=E_.default;ze.default=ts;function b_(t,e,r,n="error"){for(let o in t){let s=o;s in e&&this.logger[n](`${r}: option ${o}. ${t[s]}`)}}function w_(t){return t=(0,es.normalizeId)(t),this.schemas[t]||this.refs[t]}function FP(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function BP(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function VP(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function KP(){let t={...this.opts};for(let e of DP)delete t[e];return t}var JP={log(){},warn(){},error(){}};function GP(t){if(t===!1)return JP;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var WP=/^[a-z_$][a-z0-9_$:-]*$/i;function YP(t,e){let{RULES:r}=this;if((0,_d.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!WP.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function gd(t,e,r){var n;let o=e?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(i||(i={type:r,rules:[]},s.rules.push(i)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,Vi.getJSONTypes)(e.type),schemaType:(0,Vi.getJSONTypes)(e.schemaType)}};e.before?XP.call(this,i,a,e.before):i.rules.push(a),s.all[t]=a,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function XP(t,e,r){let n=t.rules.findIndex(o=>o.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function QP(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=$_(e)),t.validateSchema=this.compile(e,!0))}var e0={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function $_(t){return{anyOf:[t,e0]}}});var R_=T(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var t0={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};yd.default=t0});var z_=T(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.callRef=tn.getValidate=void 0;var r0=Yo(),O_=pt(),et=q(),qn=Kt(),C_=Ui(),Ki=X(),n0={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:c}=n,{root:u}=s;if((r==="#"||r==="#/")&&o===u.baseId)return d();let l=C_.resolveRef.call(c,u,o,r);if(l===void 0)throw new r0.default(n.opts.uriResolver,o,r);if(l instanceof C_.SchemaEnv)return m(l);return f(l);function d(){if(s===u)return Ji(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Ji(t,(0,et._)`${p}.validate`,u,u.$async)}function m(p){let h=I_(t,p);Ji(t,h,p,p.$async)}function f(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,et.stringify)(p)}:{ref:p}),g=e.name("valid"),y=t.subschema({schema:p,dataTypes:[],schemaPath:et.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(y),t.ok(g)}}};function I_(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,et._)`${r.scopeValue("wrapper",{ref:e})}.validate`}tn.getValidate=I_;function Ji(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?qn.default.this:et.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,et._)`await ${(0,O_.callValidateCode)(t,e,u)}`),f(e),i||o.assign(p,!0)},h=>{o.if((0,et._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),m(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,O_.callValidateCode)(t,e,u),()=>f(e),()=>m(e))}function m(p){let h=(0,et._)`${p}.errors`;o.assign(qn.default.vErrors,(0,et._)`${qn.default.vErrors} === null ? ${h} : ${qn.default.vErrors}.concat(${h})`),o.assign(qn.default.errors,(0,et._)`${qn.default.vErrors}.length`)}function f(p){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=Ki.mergeEvaluated.props(o,g.props,s.props));else{let y=o.var("props",(0,et._)`${p}.evaluated.props`);s.props=Ki.mergeEvaluated.props(o,y,s.props,et.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Ki.mergeEvaluated.items(o,g.items,s.items));else{let y=o.var("items",(0,et._)`${p}.evaluated.items`);s.items=Ki.mergeEvaluated.items(o,y,s.items,et.Name)}}}tn.callRef=Ji;tn.default=n0});var N_=T(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var o0=R_(),s0=z_(),i0=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",o0.default,s0.default];xd.default=i0});var A_=T(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var Gi=q(),gr=Gi.operators,Wi={maximum:{okStr:"<=",ok:gr.LTE,fail:gr.GT},minimum:{okStr:">=",ok:gr.GTE,fail:gr.LT},exclusiveMaximum:{okStr:"<",ok:gr.LT,fail:gr.GTE},exclusiveMinimum:{okStr:">",ok:gr.GT,fail:gr.LTE}},a0={message:({keyword:t,schemaCode:e})=>(0,Gi.str)`must be ${Wi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Gi._)`{comparison: ${Wi[t].okStr}, limit: ${e}}`},c0={keyword:Object.keys(Wi),type:"number",schemaType:"number",$data:!0,error:a0,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Gi._)`${r} ${Wi[e].fail} ${n} || isNaN(${r})`)}};vd.default=c0});var j_=T(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var rs=q(),u0={message:({schemaCode:t})=>(0,rs.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,rs._)`{multipleOf: ${t}}`},l0={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:u0,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,rs._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,rs._)`${i} !== parseInt(${i})`;t.fail$data((0,rs._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Sd.default=l0});var L_=T(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});function M_(t){let e=t.length,r=0,n=0,o;for(;n<e;)r++,o=t.charCodeAt(n++),o>=55296&&o<=56319&&n<e&&(o=t.charCodeAt(n),(o&64512)===56320&&n++);return r}kd.default=M_;M_.code='require("ajv/dist/runtime/ucs2length").default'});var D_=T(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var rn=q(),d0=X(),p0=L_(),f0={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,rn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,rn._)`{limit: ${t}}`},m0={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:f0,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?rn.operators.GT:rn.operators.LT,i=o.opts.unicode===!1?(0,rn._)`${r}.length`:(0,rn._)`${(0,d0.useFunc)(t.gen,p0.default)}(${r})`;t.fail$data((0,rn._)`${i} ${s} ${n}`)}};bd.default=m0});var Z_=T(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var h0=pt(),g0=X(),Fn=q(),_0={message:({schemaCode:t})=>(0,Fn.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Fn._)`{pattern: ${t}}`},y0={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:_0,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=i.opts.code,u=c.code==="new RegExp"?(0,Fn._)`new RegExp`:(0,g0.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Fn._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Fn._)`!${l}`)}else{let c=(0,h0.usePattern)(t,o);t.fail$data((0,Fn._)`!${c}.test(${r})`)}}};wd.default=y0});var U_=T(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var ns=q(),x0={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,ns.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,ns._)`{limit: ${t}}`},v0={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:x0,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?ns.operators.GT:ns.operators.LT;t.fail$data((0,ns._)`Object.keys(${r}).length ${o} ${n}`)}};Ed.default=v0});var H_=T(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var os=pt(),ss=q(),S0=X(),k0={message:({params:{missingProperty:t}})=>(0,ss.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,ss._)`{missingProperty: ${t}}`},b0={keyword:"required",type:"object",schemaType:"array",$data:!0,error:k0,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors?u():l(),a.strictRequired){let f=t.parentSchema.properties,{definedProperties:p}=t.it;for(let h of r)if(f?.[h]===void 0&&!p.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,y=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,S0.checkStrictMode)(i,y,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(ss.nil,d);else for(let f of r)(0,os.checkReportMissingProp)(t,f)}function l(){let f=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>m(f,p)),t.ok(p)}else e.if((0,os.checkMissingProp)(t,r,f)),(0,os.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,os.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function m(f,p){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(p,(0,os.propertyInData)(e,o,f,a.ownProperties)),e.if((0,ss.not)(p),()=>{t.error(),e.break()})},ss.nil)}}};Td.default=b0});var q_=T($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var is=q(),w0={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,is.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,is._)`{limit: ${t}}`},E0={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:w0,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?is.operators.GT:is.operators.LT;t.fail$data((0,is._)`${r}.length ${o} ${n}`)}};$d.default=E0});var Yi=T(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var F_=Xl();F_.code='require("ajv/dist/runtime/equal").default';Pd.default=F_});var B_=T(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var Rd=Vo(),Ne=q(),T0=X(),$0=Yi(),P0={message:({params:{i:t,j:e}})=>(0,Ne.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ne._)`{i: ${t}, j: ${e}}`},R0={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:P0,code(t){let{gen:e,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=t;if(!n&&!o)return;let c=e.let("valid"),u=s.items?(0,Rd.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ne._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,Ne._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,Ne._)`${p} > 1`,()=>(d()?m:f)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function m(p,h){let g=e.name("item"),y=(0,Rd.checkDataTypes)(u,g,a.opts.strictNumbers,Rd.DataType.Wrong),v=e.const("indices",(0,Ne._)`{}`);e.for((0,Ne._)`;${p}--;`,()=>{e.let(g,(0,Ne._)`${r}[${p}]`),e.if(y,(0,Ne._)`continue`),u.length>1&&e.if((0,Ne._)`typeof ${g} == "string"`,(0,Ne._)`${g} += "_"`),e.if((0,Ne._)`typeof ${v}[${g}] == "number"`,()=>{e.assign(h,(0,Ne._)`${v}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ne._)`${v}[${g}] = ${p}`)})}function f(p,h){let g=(0,T0.useFunc)(e,$0.default),y=e.name("outer");e.label(y).for((0,Ne._)`;${p}--;`,()=>e.for((0,Ne._)`${h} = ${p}; ${h}--;`,()=>e.if((0,Ne._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(y)})))}}};Od.default=R0});var V_=T(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var Cd=q(),O0=X(),C0=Yi(),I0={message:"must be equal to constant",params:({schemaCode:t})=>(0,Cd._)`{allowedValue: ${t}}`},z0={keyword:"const",$data:!0,error:I0,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,Cd._)`!${(0,O0.useFunc)(e,C0.default)}(${r}, ${o})`):t.fail((0,Cd._)`${s} !== ${r}`)}};Id.default=z0});var K_=T(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var as=q(),N0=X(),A0=Yi(),j0={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,as._)`{allowedValues: ${t}}`},M0={keyword:"enum",schemaType:"array",$data:!0,error:j0,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t;if(!n&&o.length===0)throw new Error("enum must have non-empty array");let a=o.length>=i.opts.loopEnum,c,u=()=>c??(c=(0,N0.useFunc)(e,A0.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let f=e.const("vSchema",s);l=(0,as.or)(...o.map((p,h)=>m(f,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,f=>e.if((0,as._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function m(f,p){let h=o[p];return typeof h=="object"&&h!==null?(0,as._)`${u()}(${r}, ${f}[${p}])`:(0,as._)`${r} === ${h}`}}};zd.default=M0});var J_=T(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var L0=A_(),D0=j_(),Z0=D_(),U0=Z_(),H0=U_(),q0=H_(),F0=q_(),B0=B_(),V0=V_(),K0=K_(),J0=[L0.default,D0.default,Z0.default,U0.default,H0.default,q0.default,F0.default,B0.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},V0.default,K0.default];Nd.default=J0});var jd=T(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});cs.validateAdditionalItems=void 0;var nn=q(),Ad=X(),G0={message:({params:{len:t}})=>(0,nn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,nn._)`{limit: ${t}}`},W0={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:G0,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Ad.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}G_(t,n)}};function G_(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,nn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,nn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,Ad.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,nn._)`${a} <= ${e.length}`);r.if((0,nn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:Ad.Type.Num},u),i.allErrors||r.if((0,nn.not)(u),()=>r.break())})}}cs.validateAdditionalItems=G_;cs.default=W0});var Md=T(us=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});us.validateTuple=void 0;var W_=q(),Xi=X(),Y0=pt(),X0={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Y_(t,"additionalItems",e);r.items=!0,!(0,Xi.alwaysValidSchema)(r,e)&&t.ok((0,Y0.validateArray)(t))}};function Y_(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;l(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Xi.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,W_._)`${s}.length`);r.forEach((d,m)=>{(0,Xi.alwaysValidSchema)(a,d)||(n.if((0,W_._)`${u} > ${m}`,()=>t.subschema({keyword:i,schemaProp:m,dataProp:m},c)),t.ok(c))});function l(d){let{opts:m,errSchemaPath:f}=a,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(m.strictTuples&&!h){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,Xi.checkStrictMode)(a,g,m.strictTuples)}}}us.validateTuple=Y_;us.default=X0});var X_=T(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});var Q0=Md(),eR={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,Q0.validateTuple)(t,"items")};Ld.default=eR});var ey=T(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var Q_=q(),tR=X(),rR=pt(),nR=jd(),oR={message:({params:{len:t}})=>(0,Q_.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Q_._)`{limit: ${t}}`},sR={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:oR,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,tR.alwaysValidSchema)(n,e)&&(o?(0,nR.validateAdditionalItems)(t,o):t.ok((0,rR.validateArray)(t)))}};Dd.default=sR});var ty=T(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});var mt=q(),Qi=X(),iR={message:({params:{min:t,max:e}})=>e===void 0?(0,mt.str)`must contain at least ${t} valid item(s)`:(0,mt.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,mt._)`{minContains: ${t}}`:(0,mt._)`{minContains: ${t}, maxContains: ${e}}`},aR={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:iR,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,i,a,{minContains:c,maxContains:u}=n;s.opts.next?(i=c===void 0?1:c,a=u):i=1;let l=e.const("len",(0,mt._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Qi.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Qi.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Qi.alwaysValidSchema)(s,r)){let h=(0,mt._)`${l} >= ${i}`;a!==void 0&&(h=(0,mt._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?f(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,mt._)`${o}.length > 0`,m)):(e.let(d,!1),m()),t.result(d,()=>t.reset());function m(){let h=e.name("_valid"),g=e.let("count",0);f(h,()=>e.if(h,()=>p(g)))}function f(h,g){e.forRange("i",0,l,y=>{t.subschema({keyword:"contains",dataProp:y,dataPropType:Qi.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,mt._)`${h}++`),a===void 0?e.if((0,mt._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,mt._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,mt._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Zd.default=aR});var oy=T(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.validateSchemaDeps=At.validatePropertyDeps=At.error=void 0;var Ud=q(),cR=X(),ls=pt();At.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Ud.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Ud._)`{property: ${t},
2
+ var Vv=Object.create;var $a=Object.defineProperty;var Kv=Object.getOwnPropertyDescriptor;var Jv=Object.getOwnPropertyNames;var Wv=Object.getPrototypeOf,Gv=Object.prototype.hasOwnProperty;var we=(t,e)=>()=>(t&&(e=t(t=0)),e);var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ve=(t,e)=>{for(var r in e)$a(t,r,{get:e[r],enumerable:!0})},Yv=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Jv(e))!Gv.call(t,o)&&o!==r&&$a(t,o,{get:()=>e[o],enumerable:!(n=Kv(e,o))||n.enumerable});return t};var ef=(t,e,r)=>(r=t!=null?Vv(Wv(t)):{},Yv(e||!t||!t.__esModule?$a(r,"default",{value:t,enumerable:!0}):r,t));var Ao=T(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.regexpCode=ee.getEsmExportName=ee.getProperty=ee.safeStringify=ee.stringify=ee.strConcat=ee.addCodeArg=ee.str=ee._=ee.nil=ee._Code=ee.Name=ee.IDENTIFIER=ee._CodeOrName=void 0;var zo=class{};ee._CodeOrName=zo;ee.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var qr=class extends zo{constructor(e){if(super(),!ee.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};ee.Name=qr;var lt=class extends zo{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 qr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ee._Code=lt;ee.nil=new lt("");function Yh(t,...e){let r=[t[0]],n=0;for(;n<e.length;)ul(r,e[n]),r.push(t[++n]);return new lt(r)}ee._=Yh;var cl=new lt("+");function Xh(t,...e){let r=[No(t[0])],n=0;for(;n<e.length;)r.push(cl),ul(r,e[n]),r.push(cl,No(t[++n]));return JE(r),new lt(r)}ee.str=Xh;function ul(t,e){e instanceof lt?t.push(...e._items):e instanceof qr?t.push(e):t.push(YE(e))}ee.addCodeArg=ul;function JE(t){let e=1;for(;e<t.length-1;){if(t[e]===cl){let r=WE(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function WE(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof qr||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 qr))return`"${t}${e.slice(1)}`}function GE(t,e){return e.emptyStr()?t:t.emptyStr()?e:Xh`${t}${e}`}ee.strConcat=GE;function YE(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:No(Array.isArray(t)?t.join(","):t)}function XE(t){return new lt(No(t))}ee.stringify=XE;function No(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ee.safeStringify=No;function QE(t){return typeof t=="string"&&ee.IDENTIFIER.test(t)?new lt(`.${t}`):Yh`[${t}]`}ee.getProperty=QE;function eT(t){if(typeof t=="string"&&ee.IDENTIFIER.test(t))return new lt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ee.getEsmExportName=eT;function tT(t){return new lt(t.toString())}ee.regexpCode=tT});var pl=T(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.ValueScope=Xe.ValueScopeName=Xe.Scope=Xe.varKinds=Xe.UsedValueState=void 0;var Ye=Ao(),ll=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},vi;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(vi||(Xe.UsedValueState=vi={}));Xe.varKinds={const:new Ye.Name("const"),let:new Ye.Name("let"),var:new Ye.Name("var")};var ki=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ye.Name?e:this.name(e)}name(e){return new Ye.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Xe.Scope=ki;var Si=class extends Ye.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ye._)`.${new Ye.Name(r)}[${n}]`}};Xe.ValueScopeName=Si;var rT=(0,Ye._)`\n`,dl=class extends ki{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?rT:Ye.nil}}get(){return this._scope}name(e){return new Si(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ye._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=Ye.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,vi.Started);let l=r(u);if(l){let d=this.opts.es5?Xe.varKinds.var:Xe.varKinds.const;s=(0,Ye._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Ye._)`${s}${l}${this.opts._n}`;else throw new ll(u);c.set(u,vi.Completed)})}return s}};Xe.ValueScope=dl});var F=T(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.or=B.and=B.not=B.CodeGen=B.operators=B.varKinds=B.ValueScopeName=B.ValueScope=B.Scope=B.Name=B.regexpCode=B.stringify=B.getProperty=B.nil=B.strConcat=B.str=B._=void 0;var Y=Ao(),xt=pl(),ar=Ao();Object.defineProperty(B,"_",{enumerable:!0,get:function(){return ar._}});Object.defineProperty(B,"str",{enumerable:!0,get:function(){return ar.str}});Object.defineProperty(B,"strConcat",{enumerable:!0,get:function(){return ar.strConcat}});Object.defineProperty(B,"nil",{enumerable:!0,get:function(){return ar.nil}});Object.defineProperty(B,"getProperty",{enumerable:!0,get:function(){return ar.getProperty}});Object.defineProperty(B,"stringify",{enumerable:!0,get:function(){return ar.stringify}});Object.defineProperty(B,"regexpCode",{enumerable:!0,get:function(){return ar.regexpCode}});Object.defineProperty(B,"Name",{enumerable:!0,get:function(){return ar.Name}});var Ti=pl();Object.defineProperty(B,"Scope",{enumerable:!0,get:function(){return Ti.Scope}});Object.defineProperty(B,"ValueScope",{enumerable:!0,get:function(){return Ti.ValueScope}});Object.defineProperty(B,"ValueScopeName",{enumerable:!0,get:function(){return Ti.ValueScopeName}});Object.defineProperty(B,"varKinds",{enumerable:!0,get:function(){return Ti.varKinds}});B.operators={GT:new Y._Code(">"),GTE:new Y._Code(">="),LT:new Y._Code("<"),LTE:new Y._Code("<="),EQ:new Y._Code("==="),NEQ:new Y._Code("!=="),NOT:new Y._Code("!"),OR:new Y._Code("||"),AND:new Y._Code("&&"),ADD:new Y._Code("+")};var Bt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},fl=class extends Bt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?xt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=In(this.rhs,e,r)),this}get names(){return this.rhs instanceof Y._CodeOrName?this.rhs.names:{}}},bi=class extends Bt{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Y.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=In(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Y.Name?{}:{...this.lhs.names};return Ei(e,this.rhs)}},ml=class extends bi{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},hl=class extends Bt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},gl=class extends Bt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},_l=class extends Bt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},yl=class extends Bt{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=In(this.code,e,r),this}get names(){return this.code instanceof Y._CodeOrName?this.code.names:{}}},jo=class extends Bt{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,o=n.length;for(;o--;){let s=n[o];s.optimizeNames(e,r)||(nT(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Vr(e,r.names),{})}},Vt=class extends jo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},xl=class extends jo{},Cn=class extends Vt{};Cn.kind="else";var Fr=class t extends Vt{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Cn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Qh(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=In(this.condition,e,r),this}get names(){let e=super.names;return Ei(e,this.condition),this.else&&Vr(e,this.else.names),e}};Fr.kind="if";var Br=class extends Vt{};Br.kind="for";var vl=class extends Br{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=In(this.iteration,e,r),this}get names(){return Vr(super.names,this.iteration.names)}},kl=class extends Br{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?xt.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Ei(super.names,this.from);return Ei(e,this.to)}},wi=class extends Br{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=In(this.iterable,e,r),this}get names(){return Vr(super.names,this.iterable.names)}},Mo=class extends Vt{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};Mo.kind="func";var Do=class extends jo{render(e){return"return "+super.render(e)}};Do.kind="return";var Sl=class extends Vt{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,o;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(o=this.finally)===null||o===void 0||o.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Vr(e,this.catch.names),this.finally&&Vr(e,this.finally.names),e}},Lo=class extends Vt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Lo.kind="catch";var Zo=class extends Vt{render(e){return"finally"+super.render(e)}};Zo.kind="finally";var bl=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
+ `:""},this._extScope=e,this._scope=new xt.Scope({parent:e}),this._nodes=[new xl]}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 fl(e,s,n)),s}const(e,r,n){return this._def(xt.varKinds.const,e,r,n)}let(e,r,n){return this._def(xt.varKinds.let,e,r,n)}var(e,r,n){return this._def(xt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new bi(e,r,n))}add(e,r){return this._leafNode(new ml(e,B.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Y.nil&&this._leafNode(new yl(e)),this}object(...e){let r=["{"];for(let[n,o]of e)r.length>1&&r.push(","),r.push(n),(n!==o||this.opts.es5)&&(r.push(":"),(0,Y.addCodeArg)(r,o));return r.push("}"),new Y._Code(r)}if(e,r,n){if(this._blockNode(new Fr(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 Fr(e))}else(){return this._elseNode(new Cn)}endIf(){return this._endBlockNode(Fr,Cn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new vl(e),r)}forRange(e,r,n,o,s=this.opts.es5?xt.varKinds.var:xt.varKinds.let){let i=this._scope.toName(e);return this._for(new kl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=xt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof Y.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Y._)`${i}.length`,a=>{this.var(s,(0,Y._)`${i}[${a}]`),n(s)})}return this._for(new wi("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?xt.varKinds.var:xt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Y._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new wi("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Br)}label(e){return this._leafNode(new hl(e))}break(e){return this._leafNode(new gl(e))}return(e){let r=new Do;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Do)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Sl;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Lo(s),r(s)}return n&&(this._currNode=o.finally=new Zo,this.code(n)),this._endBlockNode(Lo,Zo)}throw(e){return this._leafNode(new _l(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Y.nil,n,o){return this._blockNode(new Mo(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Mo)}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 Fr))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};B.CodeGen=bl;function Vr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Ei(t,e){return e instanceof Y._CodeOrName?Vr(t,e.names):t}function In(t,e,r){if(t instanceof Y.Name)return n(t);if(!o(t))return t;return new Y._Code(t._items.reduce((s,i)=>(i instanceof Y.Name&&(i=n(i)),i instanceof Y._Code?s.push(...i._items):s.push(i),s),[]));function n(s){let i=r[s.str];return i===void 0||e[s.str]!==1?s:(delete e[s.str],i)}function o(s){return s instanceof Y._Code&&s._items.some(i=>i instanceof Y.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function nT(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Qh(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Y._)`!${wl(t)}`}B.not=Qh;var oT=eg(B.operators.AND);function sT(...t){return t.reduce(oT)}B.and=sT;var iT=eg(B.operators.OR);function aT(...t){return t.reduce(iT)}B.or=aT;function eg(t){return(e,r)=>e===Y.nil?r:r===Y.nil?e:(0,Y._)`${wl(e)} ${t} ${wl(r)}`}function wl(t){return t instanceof Y.Name?t:(0,Y._)`(${t})`}});var X=T(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.checkStrictMode=V.getErrorPath=V.Type=V.useFunc=V.setEvaluated=V.evaluatedPropsToName=V.mergeEvaluated=V.eachItem=V.unescapeJsonPointer=V.escapeJsonPointer=V.escapeFragment=V.unescapeFragment=V.schemaRefOrVal=V.schemaHasRulesButRef=V.schemaHasRules=V.checkUnknownRules=V.alwaysValidSchema=V.toHash=void 0;var oe=F(),cT=Ao();function uT(t){let e={};for(let r of t)e[r]=!0;return e}V.toHash=uT;function lT(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(ng(t,e),!og(e,t.self.RULES.all))}V.alwaysValidSchema=lT;function ng(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let o=n.RULES.keywords;for(let s in e)o[s]||ag(t,`unknown keyword: "${s}"`)}V.checkUnknownRules=ng;function og(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}V.schemaHasRules=og;function dT(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}V.schemaHasRulesButRef=dT;function pT({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,oe._)`${r}`}return(0,oe._)`${t}${e}${(0,oe.getProperty)(n)}`}V.schemaRefOrVal=pT;function fT(t){return sg(decodeURIComponent(t))}V.unescapeFragment=fT;function mT(t){return encodeURIComponent(Tl(t))}V.escapeFragment=mT;function Tl(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}V.escapeJsonPointer=Tl;function sg(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}V.unescapeJsonPointer=sg;function hT(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}V.eachItem=hT;function tg({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof oe.Name?(s instanceof oe.Name?t(o,s,i):e(o,s,i),i):s instanceof oe.Name?(e(o,i,s),s):r(s,i);return a===oe.Name&&!(c instanceof oe.Name)?n(o,c):c}}V.mergeEvaluated={props:tg({mergeNames:(t,e,r)=>t.if((0,oe._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,oe._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,oe._)`${r} || {}`).code((0,oe._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,oe._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,oe._)`${r} || {}`),$l(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:ig}),items:tg({mergeNames:(t,e,r)=>t.if((0,oe._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,oe._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,oe._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,oe._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function ig(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,oe._)`{}`);return e!==void 0&&$l(t,r,e),r}V.evaluatedPropsToName=ig;function $l(t,e,r){Object.keys(r).forEach(n=>t.assign((0,oe._)`${e}${(0,oe.getProperty)(n)}`,!0))}V.setEvaluated=$l;var rg={};function gT(t,e){return t.scopeValue("func",{ref:e,code:rg[e.code]||(rg[e.code]=new cT._Code(e.code))})}V.useFunc=gT;var El;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(El||(V.Type=El={}));function _T(t,e,r){if(t instanceof oe.Name){let n=e===El.Num;return r?n?(0,oe._)`"[" + ${t} + "]"`:(0,oe._)`"['" + ${t} + "']"`:n?(0,oe._)`"/" + ${t}`:(0,oe._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,oe.getProperty)(t).toString():"/"+Tl(t)}V.getErrorPath=_T;function ag(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}V.checkStrictMode=ag});var Kt=T(Pl=>{"use strict";Object.defineProperty(Pl,"__esModule",{value:!0});var Me=F(),yT={data:new Me.Name("data"),valCxt:new Me.Name("valCxt"),instancePath:new Me.Name("instancePath"),parentData:new Me.Name("parentData"),parentDataProperty:new Me.Name("parentDataProperty"),rootData:new Me.Name("rootData"),dynamicAnchors:new Me.Name("dynamicAnchors"),vErrors:new Me.Name("vErrors"),errors:new Me.Name("errors"),this:new Me.Name("this"),self:new Me.Name("self"),scope:new Me.Name("scope"),json:new Me.Name("json"),jsonPos:new Me.Name("jsonPos"),jsonLen:new Me.Name("jsonLen"),jsonPart:new Me.Name("jsonPart")};Pl.default=yT});var Uo=T(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.extendErrors=De.resetErrorsCount=De.reportExtraError=De.reportError=De.keyword$DataError=De.keywordError=void 0;var Q=F(),$i=X(),qe=Kt();De.keywordError={message:({keyword:t})=>(0,Q.str)`must pass "${t}" keyword validation`};De.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Q.str)`"${t}" keyword must be ${e} ($data)`:(0,Q.str)`"${t}" keyword is invalid ($data)`};function xT(t,e=De.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=lg(t,e,r);n??(i||a)?cg(s,c):ug(o,(0,Q._)`[${c}]`)}De.reportError=xT;function vT(t,e=De.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=lg(t,e,r);cg(o,a),s||i||ug(n,qe.default.vErrors)}De.reportExtraError=vT;function kT(t,e){t.assign(qe.default.errors,e),t.if((0,Q._)`${qe.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Q._)`${qe.default.vErrors}.length`,e),()=>t.assign(qe.default.vErrors,null)))}De.resetErrorsCount=kT;function ST({gen:t,keyword:e,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let i=t.name("err");t.forRange("i",o,qe.default.errors,a=>{t.const(i,(0,Q._)`${qe.default.vErrors}[${a}]`),t.if((0,Q._)`${i}.instancePath === undefined`,()=>t.assign((0,Q._)`${i}.instancePath`,(0,Q.strConcat)(qe.default.instancePath,s.errorPath))),t.assign((0,Q._)`${i}.schemaPath`,(0,Q.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,Q._)`${i}.schema`,r),t.assign((0,Q._)`${i}.data`,n))})}De.extendErrors=ST;function cg(t,e){let r=t.const("err",e);t.if((0,Q._)`${qe.default.vErrors} === null`,()=>t.assign(qe.default.vErrors,(0,Q._)`[${r}]`),(0,Q._)`${qe.default.vErrors}.push(${r})`),t.code((0,Q._)`${qe.default.errors}++`)}function ug(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,Q._)`new ${t.ValidationError}(${e})`):(r.assign((0,Q._)`${n}.errors`,e),r.return(!1))}var Kr={keyword:new Q.Name("keyword"),schemaPath:new Q.Name("schemaPath"),params:new Q.Name("params"),propertyName:new Q.Name("propertyName"),message:new Q.Name("message"),schema:new Q.Name("schema"),parentSchema:new Q.Name("parentSchema")};function lg(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Q._)`{}`:bT(t,e,r)}function bT(t,e,r={}){let{gen:n,it:o}=t,s=[wT(o,r),ET(t,r)];return TT(t,e,s),n.object(...s)}function wT({errorPath:t},{instancePath:e}){let r=e?(0,Q.str)`${t}${(0,$i.getErrorPath)(e,$i.Type.Str)}`:t;return[qe.default.instancePath,(0,Q.strConcat)(qe.default.instancePath,r)]}function ET({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,Q.str)`${e}/${t}`;return r&&(o=(0,Q.str)`${o}${(0,$i.getErrorPath)(r,$i.Type.Str)}`),[Kr.schemaPath,o]}function TT(t,{params:e,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;n.push([Kr.keyword,o],[Kr.params,typeof e=="function"?e(t):e||(0,Q._)`{}`]),c.messages&&n.push([Kr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Kr.schema,i],[Kr.parentSchema,(0,Q._)`${l}${d}`],[qe.default.data,s]),u&&n.push([Kr.propertyName,u])}});var pg=T(zn=>{"use strict";Object.defineProperty(zn,"__esModule",{value:!0});zn.boolOrEmptySchema=zn.topBoolOrEmptySchema=void 0;var $T=Uo(),PT=F(),RT=Kt(),OT={message:"boolean schema is false"};function CT(t){let{gen:e,schema:r,validateName:n}=t;r===!1?dg(t,!1):typeof r=="object"&&r.$async===!0?e.return(RT.default.data):(e.assign((0,PT._)`${n}.errors`,null),e.return(!0))}zn.topBoolOrEmptySchema=CT;function IT(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),dg(t)):r.var(e,!0)}zn.boolOrEmptySchema=IT;function dg(t,e){let{gen:r,data:n}=t,o={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,$T.reportError)(o,OT,void 0,e)}});var Rl=T(Nn=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.getRules=Nn.isJSONType=void 0;var zT=["string","number","integer","boolean","null","object","array"],NT=new Set(zT);function AT(t){return typeof t=="string"&&NT.has(t)}Nn.isJSONType=AT;function jT(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}Nn.getRules=jT});var Ol=T(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.shouldUseRule=cr.shouldUseGroup=cr.schemaHasRulesForType=void 0;function MT({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&fg(t,n)}cr.schemaHasRulesForType=MT;function fg(t,e){return e.rules.some(r=>mg(t,r))}cr.shouldUseGroup=fg;function mg(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))}cr.shouldUseRule=mg});var Ho=T(Le=>{"use strict";Object.defineProperty(Le,"__esModule",{value:!0});Le.reportTypeError=Le.checkDataTypes=Le.checkDataType=Le.coerceAndCheckDataType=Le.getJSONTypes=Le.getSchemaTypes=Le.DataType=void 0;var DT=Rl(),LT=Ol(),ZT=Uo(),H=F(),hg=X(),An;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(An||(Le.DataType=An={}));function UT(t){let e=gg(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Le.getSchemaTypes=UT;function gg(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(DT.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Le.getJSONTypes=gg;function HT(t,e){let{gen:r,data:n,opts:o}=t,s=qT(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,LT.schemaHasRulesForType)(t,e[0]));if(i){let a=Il(e,n,o.strictNumbers,An.Wrong);r.if(a,()=>{s.length?FT(t,e,s):zl(t)})}return i}Le.coerceAndCheckDataType=HT;var _g=new Set(["string","number","integer","boolean","null"]);function qT(t,e){return e?t.filter(r=>_g.has(r)||e==="array"&&r==="array"):[]}function FT(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,H._)`typeof ${o}`),a=n.let("coerced",(0,H._)`undefined`);s.coerceTypes==="array"&&n.if((0,H._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,H._)`${o}[0]`).assign(i,(0,H._)`typeof ${o}`).if(Il(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,H._)`${a} !== undefined`);for(let u of r)(_g.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),zl(t),n.endIf(),n.if((0,H._)`${a} !== undefined`,()=>{n.assign(o,a),BT(t,a)});function c(u){switch(u){case"string":n.elseIf((0,H._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,H._)`"" + ${o}`).elseIf((0,H._)`${o} === null`).assign(a,(0,H._)`""`);return;case"number":n.elseIf((0,H._)`${i} == "boolean" || ${o} === null
4
+ || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,H._)`+${o}`);return;case"integer":n.elseIf((0,H._)`${i} === "boolean" || ${o} === null
5
+ || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,H._)`+${o}`);return;case"boolean":n.elseIf((0,H._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,H._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,H._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,H._)`${i} === "string" || ${i} === "number"
6
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,H._)`[${o}]`)}}}function BT({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,H._)`${e} !== undefined`,()=>t.assign((0,H._)`${e}[${r}]`,n))}function Cl(t,e,r,n=An.Correct){let o=n===An.Correct?H.operators.EQ:H.operators.NEQ,s;switch(t){case"null":return(0,H._)`${e} ${o} null`;case"array":s=(0,H._)`Array.isArray(${e})`;break;case"object":s=(0,H._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,H._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,H._)`typeof ${e} ${o} ${t}`}return n===An.Correct?s:(0,H.not)(s);function i(a=H.nil){return(0,H.and)((0,H._)`typeof ${e} == "number"`,a,r?(0,H._)`isFinite(${e})`:H.nil)}}Le.checkDataType=Cl;function Il(t,e,r,n){if(t.length===1)return Cl(t[0],e,r,n);let o,s=(0,hg.toHash)(t);if(s.array&&s.object){let i=(0,H._)`typeof ${e} != "object"`;o=s.null?i:(0,H._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=H.nil;s.number&&delete s.integer;for(let i in s)o=(0,H.and)(o,Cl(i,e,r,n));return o}Le.checkDataTypes=Il;var VT={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,H._)`{type: ${t}}`:(0,H._)`{type: ${e}}`};function zl(t){let e=KT(t);(0,ZT.reportError)(e,VT)}Le.reportTypeError=zl;function KT(t){let{gen:e,data:r,schema:n}=t,o=(0,hg.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var xg=T(Pi=>{"use strict";Object.defineProperty(Pi,"__esModule",{value:!0});Pi.assignDefaults=void 0;var jn=F(),JT=X();function WT(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)yg(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>yg(t,s,o.default))}Pi.assignDefaults=WT;function yg(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,jn._)`${s}${(0,jn.getProperty)(e)}`;if(o){(0,JT.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,jn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,jn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,jn._)`${a} = ${(0,jn.stringify)(r)}`)}});var dt=T(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});ne.validateUnion=ne.validateArray=ne.usePattern=ne.callValidateCode=ne.schemaProperties=ne.allSchemaProperties=ne.noPropertyInData=ne.propertyInData=ne.isOwnProperty=ne.hasPropFunc=ne.reportMissingProp=ne.checkMissingProp=ne.checkReportMissingProp=void 0;var de=F(),Nl=X(),ur=Kt(),GT=X();function YT(t,e){let{gen:r,data:n,it:o}=t;r.if(jl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,de._)`${e}`},!0),t.error()})}ne.checkReportMissingProp=YT;function XT({gen:t,data:e,it:{opts:r}},n,o){return(0,de.or)(...n.map(s=>(0,de.and)(jl(t,e,s,r.ownProperties),(0,de._)`${o} = ${s}`)))}ne.checkMissingProp=XT;function QT(t,e){t.setParams({missingProperty:e},!0),t.error()}ne.reportMissingProp=QT;function vg(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,de._)`Object.prototype.hasOwnProperty`})}ne.hasPropFunc=vg;function Al(t,e,r){return(0,de._)`${vg(t)}.call(${e}, ${r})`}ne.isOwnProperty=Al;function e$(t,e,r,n){let o=(0,de._)`${e}${(0,de.getProperty)(r)} !== undefined`;return n?(0,de._)`${o} && ${Al(t,e,r)}`:o}ne.propertyInData=e$;function jl(t,e,r,n){let o=(0,de._)`${e}${(0,de.getProperty)(r)} === undefined`;return n?(0,de.or)(o,(0,de.not)(Al(t,e,r))):o}ne.noPropertyInData=jl;function kg(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ne.allSchemaProperties=kg;function t$(t,e){return kg(e).filter(r=>!(0,Nl.alwaysValidSchema)(t,e[r]))}ne.schemaProperties=t$;function r$({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,de._)`${t}, ${e}, ${n}${o}`:e,d=[[ur.default.instancePath,(0,de.strConcat)(ur.default.instancePath,s)],[ur.default.parentData,i.parentData],[ur.default.parentDataProperty,i.parentDataProperty],[ur.default.rootData,ur.default.rootData]];i.opts.dynamicRef&&d.push([ur.default.dynamicAnchors,ur.default.dynamicAnchors]);let f=(0,de._)`${l}, ${r.object(...d)}`;return c!==de.nil?(0,de._)`${a}.call(${c}, ${f})`:(0,de._)`${a}(${f})`}ne.callValidateCode=r$;var n$=(0,de._)`new RegExp`;function o$({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,de._)`${o.code==="new RegExp"?n$:(0,GT.useFunc)(t,o)}(${r}, ${n})`})}ne.usePattern=o$;function s$(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,de._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Nl.Type.Num},s),e.if((0,de.not)(s),a)})}}ne.validateArray=s$;function i$(t){let{gen:e,schema:r,keyword:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Nl.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,de._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,de.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}ne.validateUnion=i$});var wg=T(It=>{"use strict";Object.defineProperty(It,"__esModule",{value:!0});It.validateKeywordUsage=It.validSchemaType=It.funcKeywordCode=It.macroKeywordCode=void 0;var Fe=F(),Jr=Kt(),a$=dt(),c$=Uo();function u$(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=bg(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Fe.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}It.macroKeywordCode=u$;function l$(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;p$(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=bg(n,o,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&Sg(t),g(()=>t.error());else{let v=e.async?m():p();e.modifying&&Sg(t),g(()=>d$(t,v))}}function m(){let v=n.let("ruleErrs",null);return n.try(()=>h((0,Fe._)`await `),y=>n.assign(d,!1).if((0,Fe._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(v,(0,Fe._)`${y}.errors`),()=>n.throw(y))),v}function p(){let v=(0,Fe._)`${l}.errors`;return n.assign(v,null),h(Fe.nil),v}function h(v=e.async?(0,Fe._)`await `:Fe.nil){let y=c.opts.passContext?Jr.default.this:Jr.default.self,k=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Fe._)`${v}${(0,a$.callValidateCode)(t,l,y,k)}`,e.modifying)}function g(v){var y;n.if((0,Fe.not)((y=e.valid)!==null&&y!==void 0?y:d),v)}}It.funcKeywordCode=l$;function Sg(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Fe._)`${n.parentData}[${n.parentDataProperty}]`))}function d$(t,e){let{gen:r}=t;r.if((0,Fe._)`Array.isArray(${e})`,()=>{r.assign(Jr.default.vErrors,(0,Fe._)`${Jr.default.vErrors} === null ? ${e} : ${Jr.default.vErrors}.concat(${e})`).assign(Jr.default.errors,(0,Fe._)`${Jr.default.vErrors}.length`),(0,c$.extendErrors)(t)},()=>t.error())}function p$({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function bg(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Fe.stringify)(r)})}function f$(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}It.validSchemaType=f$;function m$({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}It.validateKeywordUsage=m$});var Tg=T(lr=>{"use strict";Object.defineProperty(lr,"__esModule",{value:!0});lr.extendSubschemaMode=lr.extendSubschemaData=lr.getSubschema=void 0;var zt=F(),Eg=X();function h$(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,zt._)`${t.schemaPath}${(0,zt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,zt._)`${t.schemaPath}${(0,zt.getProperty)(e)}${(0,zt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Eg.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')}lr.getSubschema=h$;function g$(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=a.let("data",(0,zt._)`${e.data}${(0,zt.getProperty)(r)}`,!0);c(f),t.errorPath=(0,zt.str)`${u}${(0,Eg.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,zt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof zt.Name?o:a.let("data",o,!0);c(u),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}lr.extendSubschemaData=g$;function _$(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:s}){n!==void 0&&(t.compositeRule=n),o!==void 0&&(t.createErrors=o),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=r}lr.extendSubschemaMode=_$});var Ml=T((Q1,$g)=>{"use strict";$g.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 Rg=T((eM,Pg)=>{"use strict";var dr=Pg.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(){};Ri(e,n,o,t,"",t)};dr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};dr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};dr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};dr.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 Ri(t,e,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in dr.arrayKeywords)for(var f=0;f<d.length;f++)Ri(t,e,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in dr.propsKeywords){if(d&&typeof d=="object")for(var m in d)Ri(t,e,r,d[m],o+"/"+l+"/"+y$(m),s,o,l,n,m)}else(l in dr.keywords||t.allKeys&&!(l in dr.skipKeywords))&&Ri(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function y$(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var qo=T(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.getSchemaRefs=Qe.resolveUrl=Qe.normalizeId=Qe._getFullPath=Qe.getFullPath=Qe.inlineRef=void 0;var x$=X(),v$=Ml(),k$=Rg(),S$=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function b$(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Dl(t):e?Og(t)<=e:!1}Qe.inlineRef=b$;var w$=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Dl(t){for(let e in t){if(w$.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Dl)||typeof r=="object"&&Dl(r))return!0}return!1}function Og(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!S$.has(r)&&(typeof t[r]=="object"&&(0,x$.eachItem)(t[r],n=>e+=Og(n)),e===1/0))return 1/0}return e}function Cg(t,e="",r){r!==!1&&(e=Mn(e));let n=t.parse(e);return Ig(t,n)}Qe.getFullPath=Cg;function Ig(t,e){return t.serialize(e).split("#")[0]+"#"}Qe._getFullPath=Ig;var E$=/#\/?$/;function Mn(t){return t?t.replace(E$,""):""}Qe.normalizeId=Mn;function T$(t,e,r){return r=Mn(r),t.resolve(e,r)}Qe.resolveUrl=T$;var $$=/^[a-z_][-a-z0-9._]*$/i;function P$(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Mn(t[r]||e),s={"":o},i=Cg(n,o,!1),a={},c=new Set;return k$(t,{allKeys:!0},(d,f,m,p)=>{if(p===void 0)return;let h=i+f,g=s[p];typeof d[r]=="string"&&(g=v.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),s[f]=g;function v(k){let E=this.opts.uriResolver.resolve;if(k=Mn(g?E(g,k):k),c.has(k))throw l(k);c.add(k);let C=this.refs[k];return typeof C=="string"&&(C=this.refs[C]),typeof C=="object"?u(d,C.schema,k):k!==Mn(h)&&(k[0]==="#"?(u(d,a[k],k),a[k]=d):this.refs[k]=h),k}function y(k){if(typeof k=="string"){if(!$$.test(k))throw new Error(`invalid anchor "${k}"`);v.call(this,`#${k}`)}}}),a;function u(d,f,m){if(f!==void 0&&!v$(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Qe.getSchemaRefs=P$});var Vo=T(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.getData=pr.KeywordCxt=pr.validateFunctionCode=void 0;var Mg=pg(),zg=Ho(),Zl=Ol(),Oi=Ho(),R$=xg(),Bo=wg(),Ll=Tg(),z=F(),D=Kt(),O$=qo(),Jt=X(),Fo=Uo();function C$(t){if(Zg(t)&&(Ug(t),Lg(t))){N$(t);return}Dg(t,()=>(0,Mg.topBoolOrEmptySchema)(t))}pr.validateFunctionCode=C$;function Dg({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,z._)`${D.default.data}, ${D.default.valCxt}`,n.$async,()=>{t.code((0,z._)`"use strict"; ${Ng(r,o)}`),z$(t,o),t.code(s)}):t.func(e,(0,z._)`${D.default.data}, ${I$(o)}`,n.$async,()=>t.code(Ng(r,o)).code(s))}function I$(t){return(0,z._)`{${D.default.instancePath}="", ${D.default.parentData}, ${D.default.parentDataProperty}, ${D.default.rootData}=${D.default.data}${t.dynamicRef?(0,z._)`, ${D.default.dynamicAnchors}={}`:z.nil}}={}`}function z$(t,e){t.if(D.default.valCxt,()=>{t.var(D.default.instancePath,(0,z._)`${D.default.valCxt}.${D.default.instancePath}`),t.var(D.default.parentData,(0,z._)`${D.default.valCxt}.${D.default.parentData}`),t.var(D.default.parentDataProperty,(0,z._)`${D.default.valCxt}.${D.default.parentDataProperty}`),t.var(D.default.rootData,(0,z._)`${D.default.valCxt}.${D.default.rootData}`),e.dynamicRef&&t.var(D.default.dynamicAnchors,(0,z._)`${D.default.valCxt}.${D.default.dynamicAnchors}`)},()=>{t.var(D.default.instancePath,(0,z._)`""`),t.var(D.default.parentData,(0,z._)`undefined`),t.var(D.default.parentDataProperty,(0,z._)`undefined`),t.var(D.default.rootData,D.default.data),e.dynamicRef&&t.var(D.default.dynamicAnchors,(0,z._)`{}`)})}function N$(t){let{schema:e,opts:r,gen:n}=t;Dg(t,()=>{r.$comment&&e.$comment&&qg(t),L$(t),n.let(D.default.vErrors,null),n.let(D.default.errors,0),r.unevaluated&&A$(t),Hg(t),H$(t)})}function A$(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,z._)`${r}.evaluated`),e.if((0,z._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,z._)`${t.evaluated}.props`,(0,z._)`undefined`)),e.if((0,z._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,z._)`${t.evaluated}.items`,(0,z._)`undefined`))}function Ng(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,z._)`/*# sourceURL=${r} */`:z.nil}function j$(t,e){if(Zg(t)&&(Ug(t),Lg(t))){M$(t,e);return}(0,Mg.boolOrEmptySchema)(t,e)}function Lg({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 Zg(t){return typeof t.schema!="boolean"}function M$(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&qg(t),Z$(t),U$(t);let s=n.const("_errs",D.default.errors);Hg(t,s),n.var(e,(0,z._)`${s} === ${D.default.errors}`)}function Ug(t){(0,Jt.checkUnknownRules)(t),D$(t)}function Hg(t,e){if(t.opts.jtd)return Ag(t,[],!1,e);let r=(0,zg.getSchemaTypes)(t.schema),n=(0,zg.coerceAndCheckDataType)(t,r);Ag(t,r,!n,e)}function D$(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Jt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function L$(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Jt.checkStrictMode)(t,"default is ignored in the schema root")}function Z$(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,O$.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function U$(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function qg({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,z._)`${D.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,z.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,z._)`${D.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function H$(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,z._)`${D.default.errors} === 0`,()=>e.return(D.default.data),()=>e.throw((0,z._)`new ${o}(${D.default.vErrors})`)):(e.assign((0,z._)`${n}.errors`,D.default.vErrors),s.unevaluated&&q$(t),e.return((0,z._)`${D.default.errors} === 0`))}function q$({gen:t,evaluated:e,props:r,items:n}){r instanceof z.Name&&t.assign((0,z._)`${e}.props`,r),n instanceof z.Name&&t.assign((0,z._)`${e}.items`,n)}function Ag(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Jt.schemaHasRulesButRef)(s,l))){o.block(()=>Bg(t,"$ref",l.all.$ref.definition));return}c.jtd||F$(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Zl.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Oi.checkDataType)(f.type,i,c.strictNumbers)),jg(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,Oi.reportTypeError)(t)),o.endIf()):jg(t,f),a||o.if((0,z._)`${D.default.errors} === ${n||0}`))}}function jg(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,R$.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Zl.shouldUseRule)(n,s)&&Bg(t,s.keyword,s.definition,e.type)})}function F$(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(B$(t,e),t.opts.allowUnionTypes||V$(t,e),K$(t,t.dataTypes))}function B$(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Fg(t.dataTypes,r)||Ul(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),W$(t,e)}}function V$(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Ul(t,"use allowUnionTypes to allow union type keyword")}function K$(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Zl.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>J$(e,i))&&Ul(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function J$(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Fg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function W$(t,e){let r=[];for(let n of t.dataTypes)Fg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Ul(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Jt.checkStrictMode)(t,e,t.opts.strictTypes)}var Ci=class{constructor(e,r,n){if((0,Bo.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Jt.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",Vg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Bo.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",D.default.errors))}result(e,r,n){this.failResult((0,z.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,z.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,z._)`${r} !== undefined && (${(0,z.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?Fo.reportExtraError:Fo.reportError)(this,this.def.error,r)}$dataError(){(0,Fo.reportError)(this,this.def.$dataError||Fo.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Fo.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=z.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=z.nil,r=z.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,z.or)((0,z._)`${o} === undefined`,r)),e!==z.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==z.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,z.or)(i(),a());function i(){if(n.length){if(!(r instanceof z.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,z._)`${(0,Oi.checkDataTypes)(c,r,s.opts.strictNumbers,Oi.DataType.Wrong)}`}return z.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,z._)`!${c}(${r})`}return z.nil}}subschema(e,r){let n=(0,Ll.getSubschema)(this.it,e);(0,Ll.extendSubschemaData)(n,this.it,e),(0,Ll.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return j$(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Jt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Jt.mergeEvaluated.items(o,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(e,z.Name)),!0}};pr.KeywordCxt=Ci;function Bg(t,e,r,n){let o=new Ci(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Bo.funcKeywordCode)(o,r):"macro"in r?(0,Bo.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Bo.funcKeywordCode)(o,r)}var G$=/^\/(?:[^~]|~0|~1)*$/,Y$=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Vg(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return D.default.rootData;if(t[0]==="/"){if(!G$.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=D.default.rootData}else{let u=Y$.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,z._)`${s}${(0,z.getProperty)((0,Jt.unescapeJsonPointer)(u))}`,i=(0,z._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}pr.getData=Vg});var Ii=T(ql=>{"use strict";Object.defineProperty(ql,"__esModule",{value:!0});var Hl=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};ql.default=Hl});var Ko=T(Vl=>{"use strict";Object.defineProperty(Vl,"__esModule",{value:!0});var Fl=qo(),Bl=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Fl.resolveUrl)(e,r,n),this.missingSchema=(0,Fl.normalizeId)((0,Fl.getFullPath)(e,this.missingRef))}};Vl.default=Bl});var Ni=T(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.resolveSchema=pt.getCompilingSchema=pt.resolveRef=pt.compileSchema=pt.SchemaEnv=void 0;var vt=F(),X$=Ii(),Wr=Kt(),kt=qo(),Kg=X(),Q$=Vo(),Dn=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,kt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};pt.SchemaEnv=Dn;function Jl(t){let e=Jg.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 vt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:X$.default,code:(0,vt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Wr.default.data,parentData:Wr.default.parentData,parentDataProperty:Wr.default.parentDataProperty,dataNames:[Wr.default.data],dataPathArr:[vt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,vt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:vt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,vt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,Q$.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Wr.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${Wr.default.self}`,`${Wr.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof vt.Name?void 0:p,items:h instanceof vt.Name?void 0:h,dynamicProps:p instanceof vt.Name,dynamicItems:h instanceof vt.Name},m.source&&(m.source.evaluated=(0,vt.stringify)(m.evaluated))}return t.validate=m,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}pt.compileSchema=Jl;function e0(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=n0.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 Dn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=t0.call(this,s)}pt.resolveRef=e0;function t0(t){return(0,kt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Jl.call(this,t)}function Jg(t){for(let e of this._compilations)if(r0(e,t))return e}pt.getCompilingSchema=Jg;function r0(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function n0(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||zi.call(this,t,e)}function zi(t,e){let r=this.opts.uriResolver.parse(e),n=(0,kt._getFullPath)(this.opts.uriResolver,r),o=(0,kt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Kl.call(this,r,t);let s=(0,kt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=zi.call(this,t,i);return typeof a?.schema!="object"?void 0:Kl.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Jl.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 Dn({schema:a,schemaId:c,root:t,baseId:o})}return Kl.call(this,r,i)}}pt.resolveSchema=zi;var o0=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Kl(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,Kg.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!o0.has(a)&&u&&(e=(0,kt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,Kg.schemaHasRulesButRef)(r,this.RULES)){let a=(0,kt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=zi.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Dn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var Wg=T((iM,s0)=>{s0.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 Gl=T((aM,Qg)=>{"use strict";var i0=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Yg=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 Wl(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 a0=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Gg(t){return t.length=0,!0}function c0(t,e,r){if(t.length){let n=Wl(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function u0(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=c0;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=Gg}else{o.push(u);continue}}return o.length&&(a===Gg?r.zone=o.join(""):i?n.push(o.join("")):n.push(Wl(o))),r.address=n.join(""),r}function Xg(t){if(l0(t,":")<2)return{host:t,isIPV6:!1};let e=u0(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 l0(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function d0(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 p0(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 f0(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!Yg(r)){let n=Xg(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}Qg.exports={nonSimpleDomain:a0,recomposeAuthority:f0,normalizeComponentEncoding:p0,removeDotSegments:d0,isIPv4:Yg,isUUID:i0,normalizeIPv6:Xg,stringArrayToHexStripped:Wl}});var o_=T((cM,n_)=>{"use strict";var{isUUID:m0}=Gl(),h0=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,g0=["http","https","ws","wss","urn","urn:uuid"];function _0(t){return g0.indexOf(t)!==-1}function Yl(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 e_(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function t_(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 y0(t){return t.secure=Yl(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function x0(t){if((t.port===(Yl(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 v0(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(h0);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=Xl(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function k0(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=Xl(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 S0(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!m0(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function b0(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var r_={scheme:"http",domainHost:!0,parse:e_,serialize:t_},w0={scheme:"https",domainHost:r_.domainHost,parse:e_,serialize:t_},Ai={scheme:"ws",domainHost:!0,parse:y0,serialize:x0},E0={scheme:"wss",domainHost:Ai.domainHost,parse:Ai.parse,serialize:Ai.serialize},T0={scheme:"urn",parse:v0,serialize:k0,skipNormalize:!0},$0={scheme:"urn:uuid",parse:S0,serialize:b0,skipNormalize:!0},ji={http:r_,https:w0,ws:Ai,wss:E0,urn:T0,"urn:uuid":$0};Object.setPrototypeOf(ji,null);function Xl(t){return t&&(ji[t]||ji[t.toLowerCase()])||void 0}n_.exports={wsIsSecure:Yl,SCHEMES:ji,isValidSchemeName:_0,getSchemeHandler:Xl}});var a_=T((uM,Di)=>{"use strict";var{normalizeIPv6:P0,removeDotSegments:Jo,recomposeAuthority:R0,normalizeComponentEncoding:Mi,isIPv4:O0,nonSimpleDomain:C0}=Gl(),{SCHEMES:I0,getSchemeHandler:s_}=o_();function z0(t,e){return typeof t=="string"?t=Nt(Wt(t,e),e):typeof t=="object"&&(t=Wt(Nt(t,e),e)),t}function N0(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=i_(Wt(t,n),Wt(e,n),n,!0);return n.skipEscape=!0,Nt(o,n)}function i_(t,e,r,n){let o={};return n||(t=Wt(Nt(t,r),r),e=Wt(Nt(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Jo(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=Jo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Jo(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=Jo(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 A0(t,e,r){return typeof t=="string"?(t=unescape(t),t=Nt(Mi(Wt(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Nt(Mi(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Nt(Mi(Wt(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Nt(Mi(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Nt(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),o=[],s=s_(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=R0(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=Jo(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 j0=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Wt(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match(j0);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(O0(n.host)===!1){let c=P0(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=s_(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&C0(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 Ql={SCHEMES:I0,normalize:z0,resolve:N0,resolveComponent:i_,equal:A0,serialize:Nt,parse:Wt};Di.exports=Ql;Di.exports.default=Ql;Di.exports.fastUri=Ql});var u_=T(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});var c_=a_();c_.code='require("ajv/dist/runtime/uri").default';ed.default=c_});var __=T(ze=>{"use strict";Object.defineProperty(ze,"__esModule",{value:!0});ze.CodeGen=ze.Name=ze.nil=ze.stringify=ze.str=ze._=ze.KeywordCxt=void 0;var M0=Vo();Object.defineProperty(ze,"KeywordCxt",{enumerable:!0,get:function(){return M0.KeywordCxt}});var Ln=F();Object.defineProperty(ze,"_",{enumerable:!0,get:function(){return Ln._}});Object.defineProperty(ze,"str",{enumerable:!0,get:function(){return Ln.str}});Object.defineProperty(ze,"stringify",{enumerable:!0,get:function(){return Ln.stringify}});Object.defineProperty(ze,"nil",{enumerable:!0,get:function(){return Ln.nil}});Object.defineProperty(ze,"Name",{enumerable:!0,get:function(){return Ln.Name}});Object.defineProperty(ze,"CodeGen",{enumerable:!0,get:function(){return Ln.CodeGen}});var D0=Ii(),m_=Ko(),L0=Rl(),Wo=Ni(),Z0=F(),Go=qo(),Li=Ho(),rd=X(),l_=Wg(),U0=u_(),h_=(t,e)=>new RegExp(t,e);h_.code="new RegExp";var H0=["removeAdditional","useDefaults","coerceTypes"],q0=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),F0={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},B0={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},d_=200;function V0(t){var e,r,n,o,s,i,a,c,u,l,d,f,m,p,h,g,v,y,k,E,C,ke,be,ot,no;let Se=t.strict,Gt=(e=t.code)===null||e===void 0?void 0:e.optimize,Ze=Gt===!0||Gt===void 0?1:Gt||0,Ss=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:h_,Ta=(o=t.uriResolver)!==null&&o!==void 0?o:U0.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:Se)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:Se)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:Se)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:Se)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:Se)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:Ze,regExp:Ss}:{optimize:Ze,regExp:Ss},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:d_,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:d_,meta:(v=t.meta)!==null&&v!==void 0?v:!0,messages:(y=t.messages)!==null&&y!==void 0?y:!0,inlineRefs:(k=t.inlineRefs)!==null&&k!==void 0?k:!0,schemaId:(E=t.schemaId)!==null&&E!==void 0?E:"$id",addUsedSchema:(C=t.addUsedSchema)!==null&&C!==void 0?C:!0,validateSchema:(ke=t.validateSchema)!==null&&ke!==void 0?ke:!0,validateFormats:(be=t.validateFormats)!==null&&be!==void 0?be:!0,unicodeRegExp:(ot=t.unicodeRegExp)!==null&&ot!==void 0?ot:!0,int32range:(no=t.int32range)!==null&&no!==void 0?no:!0,uriResolver:Ta}}var Yo=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...V0(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new Z0.ValueScope({scope:{},prefixes:q0,es5:r,lines:n}),this.logger=X0(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,L0.getRules)(),p_.call(this,F0,e,"NOT SUPPORTED"),p_.call(this,B0,e,"DEPRECATED","warn"),this._metaOpts=G0.call(this),e.formats&&J0.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&W0.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),K0.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=l_;n==="id"&&(o={...l_},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||i.call(this,f)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof m_.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),i.call(this,l)}}function a({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,o=this.opts.validateSchema){if(Array.isArray(e)){for(let i of e)this.addSchema(i,void 0,n,o);return this}let s;if(typeof e=="object"){let{schemaId:i}=this.opts;if(s=e[i],s!==void 0&&typeof s!="string")throw new Error(`schema ${i} must be string`)}return r=(0,Go.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,o,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let o=this.validate(n,e);if(!o&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return o}getSchema(e){let r;for(;typeof(r=f_.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Wo.SchemaEnv({schema:{},schemaId:n});if(r=Wo.resolveSchema.call(this,o,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=f_.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,Go.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(eP.call(this,n,r),!r)return(0,rd.eachItem)(n,s=>td.call(this,s)),this;rP.call(this,r);let o={...r,type:(0,Li.getJSONTypes)(r.type),schemaType:(0,Li.getJSONTypes)(r.schemaType)};return(0,rd.eachItem)(n,o.type.length===0?s=>td.call(this,s,o):s=>o.type.forEach(i=>td.call(this,s,o,i))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let o=n.rules.findIndex(s=>s.keyword===e);o>=0&&n.rules.splice(o,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(o=>`${n}${o.instancePath} ${o.message}`).reduce((o,s)=>o+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let o of r){let s=o.split("/").slice(1),i=e;for(let a of s)i=i[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:u}=c.definition,l=i[a];u&&l&&(i[a]=g_(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let o=e[n];(!r||r.test(n))&&(typeof o=="string"?delete e[n]:o&&!o.meta&&(this._cache.delete(o.schema),delete e[n]))}}_addSchema(e,r,n,o=this.opts.validateSchema,s=this.opts.addUsedSchema){let i,{schemaId:a}=this.opts;if(typeof e=="object")i=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,Go.normalizeId)(i||n);let u=Go.getSchemaRefs.call(this,e,n);return c=new Wo.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),o&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):Wo.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{Wo.compileSchema.call(this,e)}finally{this.opts=r}}};Yo.ValidationError=D0.default;Yo.MissingRefError=m_.default;ze.default=Yo;function p_(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 f_(t){return t=(0,Go.normalizeId)(t),this.schemas[t]||this.refs[t]}function K0(){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 J0(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function W0(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 G0(){let t={...this.opts};for(let e of H0)delete t[e];return t}var Y0={log(){},warn(){},error(){}};function X0(t){if(t===!1)return Y0;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 Q0=/^[a-z_$][a-z0-9_$:-]*$/i;function eP(t,e){let{RULES:r}=this;if((0,rd.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Q0.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 td(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,Li.getJSONTypes)(e.type),schemaType:(0,Li.getJSONTypes)(e.schemaType)}};e.before?tP.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 tP(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 rP(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=g_(e)),t.validateSchema=this.compile(e,!0))}var nP={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function g_(t){return{anyOf:[t,nP]}}});var y_=T(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});var oP={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};nd.default=oP});var S_=T(Gr=>{"use strict";Object.defineProperty(Gr,"__esModule",{value:!0});Gr.callRef=Gr.getValidate=void 0;var sP=Ko(),x_=dt(),et=F(),Zn=Kt(),v_=Ni(),Zi=X(),iP={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:c}=n,{root:u}=s;if((r==="#"||r==="#/")&&o===u.baseId)return d();let l=v_.resolveRef.call(c,u,o,r);if(l===void 0)throw new sP.default(n.opts.uriResolver,o,r);if(l instanceof v_.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return Ui(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Ui(t,(0,et._)`${p}.validate`,u,u.$async)}function f(p){let h=k_(t,p);Ui(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,et.stringify)(p)}:{ref:p}),g=e.name("valid"),v=t.subschema({schema:p,dataTypes:[],schemaPath:et.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(v),t.ok(g)}}};function k_(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,et._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Gr.getValidate=k_;function Ui(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Zn.default.this:et.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,et._)`await ${(0,x_.callValidateCode)(t,e,u)}`),m(e),i||o.assign(p,!0)},h=>{o.if((0,et._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),f(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,x_.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,et._)`${p}.errors`;o.assign(Zn.default.vErrors,(0,et._)`${Zn.default.vErrors} === null ? ${h} : ${Zn.default.vErrors}.concat(${h})`),o.assign(Zn.default.errors,(0,et._)`${Zn.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=Zi.mergeEvaluated.props(o,g.props,s.props));else{let v=o.var("props",(0,et._)`${p}.evaluated.props`);s.props=Zi.mergeEvaluated.props(o,v,s.props,et.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Zi.mergeEvaluated.items(o,g.items,s.items));else{let v=o.var("items",(0,et._)`${p}.evaluated.items`);s.items=Zi.mergeEvaluated.items(o,v,s.items,et.Name)}}}Gr.callRef=Ui;Gr.default=iP});var b_=T(od=>{"use strict";Object.defineProperty(od,"__esModule",{value:!0});var aP=y_(),cP=S_(),uP=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",aP.default,cP.default];od.default=uP});var w_=T(sd=>{"use strict";Object.defineProperty(sd,"__esModule",{value:!0});var Hi=F(),fr=Hi.operators,qi={maximum:{okStr:"<=",ok:fr.LTE,fail:fr.GT},minimum:{okStr:">=",ok:fr.GTE,fail:fr.LT},exclusiveMaximum:{okStr:"<",ok:fr.LT,fail:fr.GTE},exclusiveMinimum:{okStr:">",ok:fr.GT,fail:fr.LTE}},lP={message:({keyword:t,schemaCode:e})=>(0,Hi.str)`must be ${qi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Hi._)`{comparison: ${qi[t].okStr}, limit: ${e}}`},dP={keyword:Object.keys(qi),type:"number",schemaType:"number",$data:!0,error:lP,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Hi._)`${r} ${qi[e].fail} ${n} || isNaN(${r})`)}};sd.default=dP});var E_=T(id=>{"use strict";Object.defineProperty(id,"__esModule",{value:!0});var Xo=F(),pP={message:({schemaCode:t})=>(0,Xo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Xo._)`{multipleOf: ${t}}`},fP={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:pP,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Xo._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Xo._)`${i} !== parseInt(${i})`;t.fail$data((0,Xo._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};id.default=fP});var $_=T(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});function T_(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}ad.default=T_;T_.code='require("ajv/dist/runtime/ucs2length").default'});var P_=T(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});var Yr=F(),mP=X(),hP=$_(),gP={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Yr.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Yr._)`{limit: ${t}}`},_P={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:gP,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?Yr.operators.GT:Yr.operators.LT,i=o.opts.unicode===!1?(0,Yr._)`${r}.length`:(0,Yr._)`${(0,mP.useFunc)(t.gen,hP.default)}(${r})`;t.fail$data((0,Yr._)`${i} ${s} ${n}`)}};cd.default=_P});var R_=T(ud=>{"use strict";Object.defineProperty(ud,"__esModule",{value:!0});var yP=dt(),xP=X(),Un=F(),vP={message:({schemaCode:t})=>(0,Un.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Un._)`{pattern: ${t}}`},kP={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:vP,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=i.opts.code,u=c.code==="new RegExp"?(0,Un._)`new RegExp`:(0,xP.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Un._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Un._)`!${l}`)}else{let c=(0,yP.usePattern)(t,o);t.fail$data((0,Un._)`!${c}.test(${r})`)}}};ud.default=kP});var O_=T(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});var Qo=F(),SP={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Qo.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Qo._)`{limit: ${t}}`},bP={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:SP,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Qo.operators.GT:Qo.operators.LT;t.fail$data((0,Qo._)`Object.keys(${r}).length ${o} ${n}`)}};ld.default=bP});var C_=T(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});var es=dt(),ts=F(),wP=X(),EP={message:({params:{missingProperty:t}})=>(0,ts.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,ts._)`{missingProperty: ${t}}`},TP={keyword:"required",type:"object",schemaType:"array",$data:!0,error:EP,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors?u():l(),a.strictRequired){let m=t.parentSchema.properties,{definedProperties:p}=t.it;for(let h of r)if(m?.[h]===void 0&&!p.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,v=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,wP.checkStrictMode)(i,v,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(ts.nil,d);else for(let m of r)(0,es.checkReportMissingProp)(t,m)}function l(){let m=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>f(m,p)),t.ok(p)}else e.if((0,es.checkMissingProp)(t,r,m)),(0,es.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,es.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,es.propertyInData)(e,o,m,a.ownProperties)),e.if((0,ts.not)(p),()=>{t.error(),e.break()})},ts.nil)}}};dd.default=TP});var I_=T(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});var rs=F(),$P={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,rs.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,rs._)`{limit: ${t}}`},PP={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:$P,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?rs.operators.GT:rs.operators.LT;t.fail$data((0,rs._)`${r}.length ${o} ${n}`)}};pd.default=PP});var Fi=T(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});var z_=Ml();z_.code='require("ajv/dist/runtime/equal").default';fd.default=z_});var N_=T(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var md=Ho(),Ne=F(),RP=X(),OP=Fi(),CP={message:({params:{i:t,j:e}})=>(0,Ne.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ne._)`{i: ${t}, j: ${e}}`},IP={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:CP,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,md.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ne._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,Ne._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,Ne._)`${p} > 1`,()=>(d()?f:m)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,h){let g=e.name("item"),v=(0,md.checkDataTypes)(u,g,a.opts.strictNumbers,md.DataType.Wrong),y=e.const("indices",(0,Ne._)`{}`);e.for((0,Ne._)`;${p}--;`,()=>{e.let(g,(0,Ne._)`${r}[${p}]`),e.if(v,(0,Ne._)`continue`),u.length>1&&e.if((0,Ne._)`typeof ${g} == "string"`,(0,Ne._)`${g} += "_"`),e.if((0,Ne._)`typeof ${y}[${g}] == "number"`,()=>{e.assign(h,(0,Ne._)`${y}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ne._)`${y}[${g}] = ${p}`)})}function m(p,h){let g=(0,RP.useFunc)(e,OP.default),v=e.name("outer");e.label(v).for((0,Ne._)`;${p}--;`,()=>e.for((0,Ne._)`${h} = ${p}; ${h}--;`,()=>e.if((0,Ne._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(v)})))}}};hd.default=IP});var A_=T(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var gd=F(),zP=X(),NP=Fi(),AP={message:"must be equal to constant",params:({schemaCode:t})=>(0,gd._)`{allowedValue: ${t}}`},jP={keyword:"const",$data:!0,error:AP,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,gd._)`!${(0,zP.useFunc)(e,NP.default)}(${r}, ${o})`):t.fail((0,gd._)`${s} !== ${r}`)}};_d.default=jP});var j_=T(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var ns=F(),MP=X(),DP=Fi(),LP={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,ns._)`{allowedValues: ${t}}`},ZP={keyword:"enum",schemaType:"array",$data:!0,error:LP,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,MP.useFunc)(e,DP.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let m=e.const("vSchema",s);l=(0,ns.or)(...o.map((p,h)=>f(m,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,m=>e.if((0,ns._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,ns._)`${u()}(${r}, ${m}[${p}])`:(0,ns._)`${r} === ${h}`}}};yd.default=ZP});var M_=T(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var UP=w_(),HP=E_(),qP=P_(),FP=R_(),BP=O_(),VP=C_(),KP=I_(),JP=N_(),WP=A_(),GP=j_(),YP=[UP.default,HP.default,qP.default,FP.default,BP.default,VP.default,KP.default,JP.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},WP.default,GP.default];xd.default=YP});var kd=T(os=>{"use strict";Object.defineProperty(os,"__esModule",{value:!0});os.validateAdditionalItems=void 0;var Xr=F(),vd=X(),XP={message:({params:{len:t}})=>(0,Xr.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Xr._)`{limit: ${t}}`},QP={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:XP,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,vd.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}D_(t,n)}};function D_(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Xr._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Xr._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,vd.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Xr._)`${a} <= ${e.length}`);r.if((0,Xr.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:vd.Type.Num},u),i.allErrors||r.if((0,Xr.not)(u),()=>r.break())})}}os.validateAdditionalItems=D_;os.default=QP});var Sd=T(ss=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});ss.validateTuple=void 0;var L_=F(),Bi=X(),eR=dt(),tR={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Z_(t,"additionalItems",e);r.items=!0,!(0,Bi.alwaysValidSchema)(r,e)&&t.ok((0,eR.validateArray)(t))}};function Z_(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;l(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Bi.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,L_._)`${s}.length`);r.forEach((d,f)=>{(0,Bi.alwaysValidSchema)(a,d)||(n.if((0,L_._)`${u} > ${f}`,()=>t.subschema({keyword:i,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:m}=a,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,Bi.checkStrictMode)(a,g,f.strictTuples)}}}ss.validateTuple=Z_;ss.default=tR});var U_=T(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var rR=Sd(),nR={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,rR.validateTuple)(t,"items")};bd.default=nR});var q_=T(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var H_=F(),oR=X(),sR=dt(),iR=kd(),aR={message:({params:{len:t}})=>(0,H_.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,H_._)`{limit: ${t}}`},cR={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:aR,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,oR.alwaysValidSchema)(n,e)&&(o?(0,iR.validateAdditionalItems)(t,o):t.ok((0,sR.validateArray)(t)))}};wd.default=cR});var F_=T(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var ft=F(),Vi=X(),uR={message:({params:{min:t,max:e}})=>e===void 0?(0,ft.str)`must contain at least ${t} valid item(s)`:(0,ft.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ft._)`{minContains: ${t}}`:(0,ft._)`{minContains: ${t}, maxContains: ${e}}`},lR={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:uR,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,i,a,{minContains:c,maxContains:u}=n;s.opts.next?(i=c===void 0?1:c,a=u):i=1;let l=e.const("len",(0,ft._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Vi.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Vi.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Vi.alwaysValidSchema)(s,r)){let h=(0,ft._)`${l} >= ${i}`;a!==void 0&&(h=(0,ft._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?m(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,ft._)`${o}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),g=e.let("count",0);m(h,()=>e.if(h,()=>p(g)))}function m(h,g){e.forRange("i",0,l,v=>{t.subschema({keyword:"contains",dataProp:v,dataPropType:Vi.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,ft._)`${h}++`),a===void 0?e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,ft._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Ed.default=lR});var K_=T(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.validateSchemaDeps=At.validatePropertyDeps=At.error=void 0;var Td=F(),dR=X(),is=dt();At.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Td.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Td._)`{property: ${t},
7
7
  missingProperty: ${n},
8
8
  depsCount: ${e},
9
- deps: ${r}}`};var uR={keyword:"dependencies",type:"object",schemaType:"object",error:At.error,code(t){let[e,r]=lR(t);ry(t,e),ny(t,r)}};function lR({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let o=Array.isArray(t[n])?e:r;o[n]=t[n]}return[e,r]}function ry(t,e=t.schema){let{gen:r,data:n,it:o}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let i in e){let a=e[i];if(a.length===0)continue;let c=(0,ls.propertyInData)(r,n,i,o.opts.ownProperties);t.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let u of a)(0,ls.checkReportMissingProp)(t,u)}):(r.if((0,Ud._)`${c} && (${(0,ls.checkMissingProp)(t,a,s)})`),(0,ls.reportMissingProp)(t,s),r.else())}}At.validatePropertyDeps=ry;function ny(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,cR.alwaysValidSchema)(s,e[a])||(r.if((0,ls.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}At.validateSchemaDeps=ny;At.default=uR});var iy=T(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});var sy=q(),dR=X(),pR={message:"property name must be valid",params:({params:t})=>(0,sy._)`{propertyName: ${t.propertyName}}`},fR={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:pR,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,dR.alwaysValidSchema)(o,r))return;let s=e.name("valid");e.forIn("key",n,i=>{t.setParams({propertyName:i}),t.subschema({keyword:"propertyNames",data:i,dataTypes:["string"],propertyName:i,compositeRule:!0},s),e.if((0,sy.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Hd.default=fR});var Fd=T(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var ea=pt(),bt=q(),mR=Kt(),ta=X(),hR={message:"must NOT have additional properties",params:({params:t})=>(0,bt._)`{additionalProperty: ${t.additionalProperty}}`},gR={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:hR,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,ta.alwaysValidSchema)(i,r))return;let u=(0,ea.allSchemaProperties)(n.properties),l=(0,ea.allSchemaProperties)(n.patternProperties);d(),t.ok((0,bt._)`${s} === ${mR.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?p(g):e.if(m(g),()=>p(g))})}function m(g){let y;if(u.length>8){let v=(0,ta.schemaRefOrVal)(i,n.properties,"properties");y=(0,ea.isOwnProperty)(e,v,g)}else u.length?y=(0,bt.or)(...u.map(v=>(0,bt._)`${g} === ${v}`)):y=bt.nil;return l.length&&(y=(0,bt.or)(y,...l.map(v=>(0,bt._)`${(0,ea.usePattern)(t,v)}.test(${g})`))),(0,bt.not)(y)}function f(g){e.code((0,bt._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){f(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,ta.alwaysValidSchema)(i,r)){let y=e.name("valid");c.removeAdditional==="failing"?(h(g,y,!1),e.if((0,bt.not)(y),()=>{t.reset(),f(g)})):(h(g,y),a||e.if((0,bt.not)(y),()=>e.break()))}}function h(g,y,v){let S={keyword:"additionalProperties",dataProp:g,dataPropType:ta.Type.Str};v===!1&&Object.assign(S,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(S,y)}}};qd.default=gR});var uy=T(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var _R=Wo(),ay=pt(),Bd=X(),cy=Fd(),yR={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&cy.default.code(new _R.KeywordCxt(s,cy.default,"additionalProperties"));let i=(0,ay.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Bd.mergeEvaluated.props(e,(0,Bd.toHash)(i),s.props));let a=i.filter(d=>!(0,Bd.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)u(d)?l(d):(e.if((0,ay.propertyInData)(e,o,d,s.opts.ownProperties)),l(d),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Vd.default=yR});var fy=T(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});var ly=pt(),ra=q(),dy=X(),py=X(),xR={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:o,it:s}=t,{opts:i}=s,a=(0,ly.allSchemaProperties)(r),c=a.filter(h=>(0,dy.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof ra.Name)&&(s.props=(0,py.evaluatedPropsToName)(e,s.props));let{props:d}=s;m();function m(){for(let h of a)u&&f(h),s.allErrors?p(h):(e.var(l,!0),p(h),e.if(l))}function f(h){for(let g in u)new RegExp(h).test(g)&&(0,dy.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,ra._)`${(0,ly.usePattern)(t,h)}.test(${g})`,()=>{let y=c.includes(h);y||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:py.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,ra._)`${d}[${g}]`,!0):!y&&!s.allErrors&&e.if((0,ra.not)(l),()=>e.break())})})}}};Kd.default=xR});var my=T(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});var vR=X(),SR={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,vR.alwaysValidSchema)(n,r)){t.fail();return}let o=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),t.failResult(o,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};Jd.default=SR});var hy=T(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});var kR=pt(),bR={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:kR.validateUnion,error:{message:"must match a schema in anyOf"}};Gd.default=bR});var gy=T(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});var na=q(),wR=X(),ER={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,na._)`{passingSchemas: ${t.passing}}`},TR={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:ER,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let m;(0,wR.alwaysValidSchema)(o,l)?e.var(c,!0):m=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,na._)`${c} && ${i}`).assign(i,!1).assign(a,(0,na._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),m&&t.mergeEvaluated(m,na.Name)})})}}};Wd.default=TR});var _y=T(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});var $R=X(),PR={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let o=e.name("valid");r.forEach((s,i)=>{if((0,$R.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Yd.default=PR});var vy=T(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});var oa=q(),xy=X(),RR={message:({params:t})=>(0,oa.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,oa._)`{failingKeyword: ${t.ifClause}}`},OR={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:RR,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,xy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=yy(n,"then"),s=yy(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else o?e.if(a,u("then")):e.if((0,oa.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let m=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(m,i),d?e.assign(d,(0,oa._)`${l}`):t.setParams({ifClause:l})}}}};function yy(t,e){let r=t.schema[e];return r!==void 0&&!(0,xy.alwaysValidSchema)(t,r)}Xd.default=OR});var Sy=T(Qd=>{"use strict";Object.defineProperty(Qd,"__esModule",{value:!0});var CR=X(),IR={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,CR.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Qd.default=IR});var ky=T(ep=>{"use strict";Object.defineProperty(ep,"__esModule",{value:!0});var zR=jd(),NR=X_(),AR=Md(),jR=ey(),MR=ty(),LR=oy(),DR=iy(),ZR=Fd(),UR=uy(),HR=fy(),qR=my(),FR=hy(),BR=gy(),VR=_y(),KR=vy(),JR=Sy();function GR(t=!1){let e=[qR.default,FR.default,BR.default,VR.default,KR.default,JR.default,DR.default,ZR.default,LR.default,UR.default,HR.default];return t?e.push(NR.default,jR.default):e.push(zR.default,AR.default),e.push(MR.default),e}ep.default=GR});var by=T(tp=>{"use strict";Object.defineProperty(tp,"__esModule",{value:!0});var Se=q(),WR={message:({schemaCode:t})=>(0,Se.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Se._)`{format: ${t}}`},YR={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:WR,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?m():f();function m(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Se._)`${p}[${i}]`),g=r.let("fType"),y=r.let("format");r.if((0,Se._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,Se._)`${h}.type || "string"`).assign(y,(0,Se._)`${h}.validate`),()=>r.assign(g,(0,Se._)`"string"`).assign(y,h)),t.fail$data((0,Se.or)(v(),S()));function v(){return c.strictSchema===!1?Se.nil:(0,Se._)`${i} && !${y}`}function S(){let w=l.$async?(0,Se._)`(${h}.async ? await ${y}(${n}) : ${y}(${n}))`:(0,Se._)`${y}(${n})`,R=(0,Se._)`(typeof ${y} == "function" ? ${w} : ${y}.test(${n}))`;return(0,Se._)`${y} && ${y} !== true && ${g} === ${e} && !${R}`}}function f(){let p=d.formats[s];if(!p){v();return}if(p===!0)return;let[h,g,y]=S(p);h===e&&t.pass(w());function v(){if(c.strictSchema===!1){d.logger.warn(R());return}throw new Error(R());function R(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function S(R){let ae=R instanceof RegExp?(0,Se.regexpCode)(R):c.code.formats?(0,Se._)`${c.code.formats}${(0,Se.getProperty)(s)}`:void 0,ce=r.scopeValue("formats",{key:s,ref:R,code:ae});return typeof R=="object"&&!(R instanceof RegExp)?[R.type||"string",R.validate,(0,Se._)`${ce}.validate`]:["string",R,ce]}function w(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Se._)`await ${y}(${n})`}return typeof g=="function"?(0,Se._)`${y}(${n})`:(0,Se._)`${y}.test(${n})`}}}};tp.default=YR});var wy=T(rp=>{"use strict";Object.defineProperty(rp,"__esModule",{value:!0});var XR=by(),QR=[XR.default];rp.default=QR});var Ey=T(Bn=>{"use strict";Object.defineProperty(Bn,"__esModule",{value:!0});Bn.contentVocabulary=Bn.metadataVocabulary=void 0;Bn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Bn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var $y=T(np=>{"use strict";Object.defineProperty(np,"__esModule",{value:!0});var eO=N_(),tO=J_(),rO=ky(),nO=wy(),Ty=Ey(),oO=[eO.default,tO.default,(0,rO.default)(),nO.default,Ty.metadataVocabulary,Ty.contentVocabulary];np.default=oO});var Ry=T(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.DiscrError=void 0;var Py;(function(t){t.Tag="tag",t.Mapping="mapping"})(Py||(sa.DiscrError=Py={}))});var Cy=T(sp=>{"use strict";Object.defineProperty(sp,"__esModule",{value:!0});var Vn=q(),op=Ry(),Oy=Ui(),sO=Yo(),iO=X(),aO={message:({params:{discrError:t,tagName:e}})=>t===op.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Vn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},cO={keyword:"discriminator",type:"object",schemaType:"object",error:aO,code(t){let{gen:e,data:r,schema:n,parentSchema:o,it:s}=t,{oneOf:i}=o;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!i)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,Vn._)`${r}${(0,Vn.getProperty)(a)}`);e.if((0,Vn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:op.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let f=m();e.if(!1);for(let p in f)e.elseIf((0,Vn._)`${u} === ${p}`),e.assign(c,d(f[p]));e.else(),t.error(!1,{discrError:op.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(f){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:f},p);return t.mergeEvaluated(h,Vn.Name),p}function m(){var f;let p={},h=y(o),g=!0;for(let w=0;w<i.length;w++){let R=i[w];if(R?.$ref&&!(0,iO.schemaHasRulesButRef)(R,s.self.RULES)){let ce=R.$ref;if(R=Oy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,ce),R instanceof Oy.SchemaEnv&&(R=R.schema),R===void 0)throw new sO.default(s.opts.uriResolver,s.baseId,ce)}let ae=(f=R?.properties)===null||f===void 0?void 0:f[a];if(typeof ae!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||y(R)),v(ae,w)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function y({required:w}){return Array.isArray(w)&&w.includes(a)}function v(w,R){if(w.const)S(w.const,R);else if(w.enum)for(let ae of w.enum)S(ae,R);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function S(w,R){if(typeof w!="string"||w in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[w]=R}}}};sp.default=cO});var Iy=T((UM,uO)=>{uO.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var ap=T((fe,ip)=>{"use strict";Object.defineProperty(fe,"__esModule",{value:!0});fe.MissingRefError=fe.ValidationError=fe.CodeGen=fe.Name=fe.nil=fe.stringify=fe.str=fe._=fe.KeywordCxt=fe.Ajv=void 0;var lO=P_(),dO=$y(),pO=Cy(),zy=Iy(),fO=["/properties"],ia="http://json-schema.org/draft-07/schema",Kn=class extends lO.default{_addVocabularies(){super._addVocabularies(),dO.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(pO.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(zy,fO):zy;this.addMetaSchema(e,ia,!1),this.refs["http://json-schema.org/schema"]=ia}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ia)?ia:void 0)}};fe.Ajv=Kn;ip.exports=fe=Kn;ip.exports.Ajv=Kn;Object.defineProperty(fe,"__esModule",{value:!0});fe.default=Kn;var mO=Wo();Object.defineProperty(fe,"KeywordCxt",{enumerable:!0,get:function(){return mO.KeywordCxt}});var Jn=q();Object.defineProperty(fe,"_",{enumerable:!0,get:function(){return Jn._}});Object.defineProperty(fe,"str",{enumerable:!0,get:function(){return Jn.str}});Object.defineProperty(fe,"stringify",{enumerable:!0,get:function(){return Jn.stringify}});Object.defineProperty(fe,"nil",{enumerable:!0,get:function(){return Jn.nil}});Object.defineProperty(fe,"Name",{enumerable:!0,get:function(){return Jn.Name}});Object.defineProperty(fe,"CodeGen",{enumerable:!0,get:function(){return Jn.CodeGen}});var hO=Di();Object.defineProperty(fe,"ValidationError",{enumerable:!0,get:function(){return hO.default}});var gO=Yo();Object.defineProperty(fe,"MissingRefError",{enumerable:!0,get:function(){return gO.default}})});var Uy=T(Mt=>{"use strict";Object.defineProperty(Mt,"__esModule",{value:!0});Mt.formatNames=Mt.fastFormats=Mt.fullFormats=void 0;function jt(t,e){return{validate:t,compare:e}}Mt.fullFormats={date:jt(My,dp),time:jt(up(!0),pp),"date-time":jt(Ny(!0),Dy),"iso-time":jt(up(),Ly),"iso-date-time":jt(Ny(),Zy),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:kO,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:RO,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:bO,int32:{type:"number",validate:TO},int64:{type:"number",validate:$O},float:{type:"number",validate:jy},double:{type:"number",validate:jy},password:!0,binary:!0};Mt.fastFormats={...Mt.fullFormats,date:jt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,dp),time:jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,pp),"date-time":jt(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Dy),"iso-time":jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Ly),"iso-date-time":jt(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Zy),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Mt.formatNames=Object.keys(Mt.fullFormats);function _O(t){return t%4===0&&(t%100!==0||t%400===0)}var yO=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,xO=[0,31,28,31,30,31,30,31,31,30,31,30,31];function My(t){let e=yO.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],o=+e[3];return n>=1&&n<=12&&o>=1&&o<=(n===2&&_O(r)?29:xO[n])}function dp(t,e){if(t&&e)return t>e?1:t<e?-1:0}var cp=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function up(t){return function(r){let n=cp.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,m=o-u*c-(d<0?1:0);return(m===23||m===-1)&&(d===59||d===-1)&&i<61}}function pp(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function Ly(t,e){if(!(t&&e))return;let r=cp.exec(t),n=cp.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t<e?-1:0}var lp=/t|\s/i;function Ny(t){let e=up(t);return function(n){let o=n.split(lp);return o.length===2&&My(o[0])&&e(o[1])}}function Dy(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Zy(t,e){if(!(t&&e))return;let[r,n]=t.split(lp),[o,s]=e.split(lp),i=dp(r,o);if(i!==void 0)return i||pp(n,s)}var vO=/\/|:/,SO=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function kO(t){return vO.test(t)&&SO.test(t)}var Ay=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function bO(t){return Ay.lastIndex=0,Ay.test(t)}var wO=-(2**31),EO=2**31-1;function TO(t){return Number.isInteger(t)&&t<=EO&&t>=wO}function $O(t){return Number.isInteger(t)}function jy(){return!0}var PO=/[^\\]\\Z/;function RO(t){if(PO.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Hy=T(Gn=>{"use strict";Object.defineProperty(Gn,"__esModule",{value:!0});Gn.formatLimitDefinition=void 0;var OO=ap(),wt=q(),_r=wt.operators,aa={formatMaximum:{okStr:"<=",ok:_r.LTE,fail:_r.GT},formatMinimum:{okStr:">=",ok:_r.GTE,fail:_r.LT},formatExclusiveMaximum:{okStr:"<",ok:_r.LT,fail:_r.GTE},formatExclusiveMinimum:{okStr:">",ok:_r.GT,fail:_r.LTE}},CO={message:({keyword:t,schemaCode:e})=>(0,wt.str)`should be ${aa[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,wt._)`{comparison: ${aa[t].okStr}, limit: ${e}}`};Gn.formatLimitDefinition={keyword:Object.keys(aa),type:"string",schemaType:"string",$data:!0,error:CO,code(t){let{gen:e,data:r,schemaCode:n,keyword:o,it:s}=t,{opts:i,self:a}=s;if(!i.validateFormats)return;let c=new OO.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let m=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),f=e.const("fmt",(0,wt._)`${m}[${c.schemaCode}]`);t.fail$data((0,wt.or)((0,wt._)`typeof ${f} != "object"`,(0,wt._)`${f} instanceof RegExp`,(0,wt._)`typeof ${f}.compare != "function"`,d(f)))}function l(){let m=c.schema,f=a.formats[m];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${o}": format "${m}" does not define "compare" function`);let p=e.scopeValue("formats",{key:m,ref:f,code:i.code.formats?(0,wt._)`${i.code.formats}${(0,wt.getProperty)(m)}`:void 0});t.fail$data(d(p))}function d(m){return(0,wt._)`${m}.compare(${r}, ${n}) ${aa[o].fail} 0`}},dependencies:["format"]};var IO=t=>(t.addKeyword(Gn.formatLimitDefinition),t);Gn.default=IO});var Vy=T((ds,By)=>{"use strict";Object.defineProperty(ds,"__esModule",{value:!0});var Wn=Uy(),zO=Hy(),fp=q(),qy=new fp.Name("fullFormats"),NO=new fp.Name("fastFormats"),mp=(t,e={keywords:!0})=>{if(Array.isArray(e))return Fy(t,e,Wn.fullFormats,qy),t;let[r,n]=e.mode==="fast"?[Wn.fastFormats,NO]:[Wn.fullFormats,qy],o=e.formats||Wn.formatNames;return Fy(t,o,r,n),e.keywords&&(0,zO.default)(t),t};mp.get=(t,e="full")=>{let n=(e==="fast"?Wn.fastFormats:Wn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function Fy(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,fp._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}By.exports=ds=mp;Object.defineProperty(ds,"__esModule",{value:!0});ds.default=mp});var Ox,Cx=we(()=>{"use strict";Ox={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot",Codex:"codex","codex-mcp-client":"codex","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed"}});function gs(t,e){let r=va[e],n=Pp(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function Pp(t,e){if(e){let r=va[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}var $t,gC,Ix,va,QL,eD,zx=we(()=>{"use strict";$t={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},gC=["Bash","WebFetch","Read","Grep","Agent","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"],Ix=gC.join("|"),va={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},QL=[$t.PRE_TOOL_USE,$t.SESSION_START],eD=[$t.POST_TOOL_USE,$t.PRE_COMPACT,$t.USER_PROMPT_SUBMIT]});var Op={};Ve(Op,{ClaudeCodeAdapter:()=>Rp});import{createHash as Nx}from"node:crypto";import{readFileSync as Xn,writeFileSync as Sa,mkdirSync as _C,copyFileSync as yC,accessSync as Ax,readdirSync as xC,chmodSync as vC,constants as jx}from"node:fs";import{resolve as Lt,join as _s}from"node:path";import{homedir as on}from"node:os";var Rp,Cp=we(()=>{"use strict";zx();Rp=class{name="Claude Code";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{updatedInput:e.updatedInput};if(e.decision==="context"&&e.additionalContext)return{additionalContext:e.additionalContext};if(e.decision==="ask")return{permissionDecision:"ask"}}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),e.updatedOutput&&(r.updatedMCPToolOutput=e.updatedOutput),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Lt(on(),".claude","settings.json")}getSessionDir(){let e=_s(on(),".claude","context-mode","sessions");return _C(e,{recursive:!0}),e}getSessionDBPath(e){let r=Nx("sha256").update(e).digest("hex").slice(0,16);return _s(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Nx("sha256").update(e).digest("hex").slice(0,16);return _s(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){let r=`node ${e}/hooks/pretooluse.mjs`;return{PreToolUse:["Bash","WebFetch","Read","Grep","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].map(o=>({matcher:o,hooks:[{type:"command",command:r}]})),PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{let e=Xn(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){Sa(this.getSettingsPath(),JSON.stringify(e,null,2)+`
10
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"PreToolUse hook",status:"fail",message:"Could not read ~/.claude/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=this.readPluginHooks(e),i=this.checkHookType(o,s,$t.PRE_TOOL_USE);r.push({check:"PreToolUse hook",status:i?"pass":"fail",message:i?"PreToolUse hook configured":"No PreToolUse hooks found",fix:i?void 0:"context-mode upgrade"});let a=this.checkHookType(o,s,$t.SESSION_START);return r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"No SessionStart hooks found",fix:a?void 0:"context-mode upgrade"}),r}readPluginHooks(e){let r=[_s(e,"hooks","hooks.json"),_s(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=Xn(n,"utf-8"),s=JSON.parse(o);if(s.hooks)return s.hooks}catch{}}checkHookType(e,r,n){let o=e?.[n];if(o&&o.length>0&&o.some(i=>gs(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>gs(i,n)))}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read settings.json"};let r=e.enabledPlugins;if(!r)return{check:"Plugin registration",status:"warn",message:"No enabledPlugins section found (might be using standalone MCP mode)"};let n=Object.keys(r).find(o=>o.startsWith("context-mode"));return n&&r[n]?{check:"Plugin registration",status:"pass",message:`Plugin enabled: ${n}`}:{check:"Plugin registration",status:"warn",message:"context-mode not in enabledPlugins (might be using standalone MCP mode)"}}getInstalledVersion(){try{let r=Lt(on(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Xn(r,"utf-8")).plugins??{};for(let[s,i]of Object.entries(o)){if(!s.toLowerCase().includes("context-mode"))continue;let a=i;if(a.length>0&&typeof a[0].version=="string")return a[0].version}}catch{}let e=[Lt(on(),".claude"),Lt(on(),".config","claude")];for(let r of e){let n=Lt(r,"plugins","cache","context-mode","context-mode");try{let s=xC(n).filter(i=>/^\d+\.\d+\.\d+/.test(i)).sort((i,a)=>{let c=i.split(".").map(Number),u=a.split(".").map(Number);for(let l=0;l<3;l++)if((c[l]??0)!==(u[l]??0))return(c[l]??0)-(u[l]??0);return 0});if(s.length>0)return s[s.length-1]}catch{}}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[],s=[$t.PRE_TOOL_USE,$t.SESSION_START];for(let i of s){let a=Pp(i,e);if(i===$t.PRE_TOOL_USE){let c={matcher:Ix,hooks:[{type:"command",command:a}]},u=n.PreToolUse;if(u&&Array.isArray(u)){let l=u.findIndex(d=>gs(d,i));l>=0?(u[l]=c,o.push(`Updated existing ${i} hook entry`)):(u.push(c),o.push(`Added ${i} hook entry`)),n.PreToolUse=u}else n.PreToolUse=[c],o.push(`Created ${i} hooks section`)}else{let c={matcher:"",hooks:[{type:"command",command:a}]},u=n[i];if(u&&Array.isArray(u)){let l=u.findIndex(d=>gs(d,i));l>=0?(u[l]=c,o.push(`Updated existing ${i} hook entry`)):(u.push(c),o.push(`Added ${i} hook entry`)),n[i]=u}else n[i]=[c],o.push(`Created ${i} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{Ax(e,jx.R_OK);let r=e+".bak";return yC(e,r),r}catch{return null}}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(va)){let o=Lt(e,"hooks",n);try{Ax(o,jx.R_OK),vC(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=Lt(on(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Xn(n,"utf-8"));for(let[s,i]of Object.entries(o.plugins||{}))if(s.toLowerCase().includes("context-mode"))for(let a of i)a.installPath=e,a.version=r,a.lastUpdated=new Date().toISOString();Sa(n,JSON.stringify(o,null,2)+`
11
- `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"CLAUDE.md",globalPath:Lt(on(),".claude","CLAUDE.md"),projectRelativePath:"CLAUDE.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Lt(e,n.projectRelativePath),s=Lt(r,"configs","claude-code",n.fileName);try{let i=Xn(s,"utf-8");try{let a=Xn(o,"utf-8");return a.includes("context-mode")?null:(Sa(o,a.trimEnd()+`
9
+ deps: ${r}}`};var pR={keyword:"dependencies",type:"object",schemaType:"object",error:At.error,code(t){let[e,r]=fR(t);B_(t,e),V_(t,r)}};function fR({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let o=Array.isArray(t[n])?e:r;o[n]=t[n]}return[e,r]}function B_(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,is.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,is.checkReportMissingProp)(t,u)}):(r.if((0,Td._)`${c} && (${(0,is.checkMissingProp)(t,a,s)})`),(0,is.reportMissingProp)(t,s),r.else())}}At.validatePropertyDeps=B_;function V_(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,dR.alwaysValidSchema)(s,e[a])||(r.if((0,is.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}At.validateSchemaDeps=V_;At.default=pR});var W_=T($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var J_=F(),mR=X(),hR={message:"property name must be valid",params:({params:t})=>(0,J_._)`{propertyName: ${t.propertyName}}`},gR={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:hR,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,mR.alwaysValidSchema)(o,r))return;let s=e.name("valid");e.forIn("key",n,i=>{t.setParams({propertyName:i}),t.subschema({keyword:"propertyNames",data:i,dataTypes:["string"],propertyName:i,compositeRule:!0},s),e.if((0,J_.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};$d.default=gR});var Rd=T(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var Ki=dt(),St=F(),_R=Kt(),Ji=X(),yR={message:"must NOT have additional properties",params:({params:t})=>(0,St._)`{additionalProperty: ${t.additionalProperty}}`},xR={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:yR,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,Ji.alwaysValidSchema)(i,r))return;let u=(0,Ki.allSchemaProperties)(n.properties),l=(0,Ki.allSchemaProperties)(n.patternProperties);d(),t.ok((0,St._)`${s} === ${_R.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?p(g):e.if(f(g),()=>p(g))})}function f(g){let v;if(u.length>8){let y=(0,Ji.schemaRefOrVal)(i,n.properties,"properties");v=(0,Ki.isOwnProperty)(e,y,g)}else u.length?v=(0,St.or)(...u.map(y=>(0,St._)`${g} === ${y}`)):v=St.nil;return l.length&&(v=(0,St.or)(v,...l.map(y=>(0,St._)`${(0,Ki.usePattern)(t,y)}.test(${g})`))),(0,St.not)(v)}function m(g){e.code((0,St._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,Ji.alwaysValidSchema)(i,r)){let v=e.name("valid");c.removeAdditional==="failing"?(h(g,v,!1),e.if((0,St.not)(v),()=>{t.reset(),m(g)})):(h(g,v),a||e.if((0,St.not)(v),()=>e.break()))}}function h(g,v,y){let k={keyword:"additionalProperties",dataProp:g,dataPropType:Ji.Type.Str};y===!1&&Object.assign(k,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(k,v)}}};Pd.default=xR});var X_=T(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});var vR=Vo(),G_=dt(),Od=X(),Y_=Rd(),kR={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&Y_.default.code(new vR.KeywordCxt(s,Y_.default,"additionalProperties"));let i=(0,G_.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Od.mergeEvaluated.props(e,(0,Od.toHash)(i),s.props));let a=i.filter(d=>!(0,Od.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)u(d)?l(d):(e.if((0,G_.propertyInData)(e,o,d,s.opts.ownProperties)),l(d),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Cd.default=kR});var ry=T(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var Q_=dt(),Wi=F(),ey=X(),ty=X(),SR={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:o,it:s}=t,{opts:i}=s,a=(0,Q_.allSchemaProperties)(r),c=a.filter(h=>(0,ey.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof Wi.Name)&&(s.props=(0,ty.evaluatedPropsToName)(e,s.props));let{props:d}=s;f();function f(){for(let h of a)u&&m(h),s.allErrors?p(h):(e.var(l,!0),p(h),e.if(l))}function m(h){for(let g in u)new RegExp(h).test(g)&&(0,ey.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,Wi._)`${(0,Q_.usePattern)(t,h)}.test(${g})`,()=>{let v=c.includes(h);v||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:ty.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Wi._)`${d}[${g}]`,!0):!v&&!s.allErrors&&e.if((0,Wi.not)(l),()=>e.break())})})}}};Id.default=SR});var ny=T(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var bR=X(),wR={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,bR.alwaysValidSchema)(n,r)){t.fail();return}let o=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),t.failResult(o,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};zd.default=wR});var oy=T(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var ER=dt(),TR={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:ER.validateUnion,error:{message:"must match a schema in anyOf"}};Nd.default=TR});var sy=T(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});var Gi=F(),$R=X(),PR={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Gi._)`{passingSchemas: ${t.passing}}`},RR={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:PR,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let f;(0,$R.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Gi._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Gi._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,Gi.Name)})})}}};Ad.default=RR});var iy=T(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});var OR=X(),CR={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let o=e.name("valid");r.forEach((s,i)=>{if((0,OR.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};jd.default=CR});var uy=T(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});var Yi=F(),cy=X(),IR={message:({params:t})=>(0,Yi.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Yi._)`{failingKeyword: ${t.ifClause}}`},zR={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:IR,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,cy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=ay(n,"then"),s=ay(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else o?e.if(a,u("then")):e.if((0,Yi.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(f,i),d?e.assign(d,(0,Yi._)`${l}`):t.setParams({ifClause:l})}}}};function ay(t,e){let r=t.schema[e];return r!==void 0&&!(0,cy.alwaysValidSchema)(t,r)}Md.default=zR});var ly=T(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var NR=X(),AR={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,NR.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Dd.default=AR});var dy=T(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});var jR=kd(),MR=U_(),DR=Sd(),LR=q_(),ZR=F_(),UR=K_(),HR=W_(),qR=Rd(),FR=X_(),BR=ry(),VR=ny(),KR=oy(),JR=sy(),WR=iy(),GR=uy(),YR=ly();function XR(t=!1){let e=[VR.default,KR.default,JR.default,WR.default,GR.default,YR.default,HR.default,qR.default,UR.default,FR.default,BR.default];return t?e.push(MR.default,LR.default):e.push(jR.default,DR.default),e.push(ZR.default),e}Ld.default=XR});var py=T(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});var ye=F(),QR={message:({schemaCode:t})=>(0,ye.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ye._)`{format: ${t}}`},eO={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:QR,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?f():m();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ye._)`${p}[${i}]`),g=r.let("fType"),v=r.let("format");r.if((0,ye._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,ye._)`${h}.type || "string"`).assign(v,(0,ye._)`${h}.validate`),()=>r.assign(g,(0,ye._)`"string"`).assign(v,h)),t.fail$data((0,ye.or)(y(),k()));function y(){return c.strictSchema===!1?ye.nil:(0,ye._)`${i} && !${v}`}function k(){let E=l.$async?(0,ye._)`(${h}.async ? await ${v}(${n}) : ${v}(${n}))`:(0,ye._)`${v}(${n})`,C=(0,ye._)`(typeof ${v} == "function" ? ${E} : ${v}.test(${n}))`;return(0,ye._)`${v} && ${v} !== true && ${g} === ${e} && !${C}`}}function m(){let p=d.formats[s];if(!p){y();return}if(p===!0)return;let[h,g,v]=k(p);h===e&&t.pass(E());function y(){if(c.strictSchema===!1){d.logger.warn(C());return}throw new Error(C());function C(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function k(C){let ke=C instanceof RegExp?(0,ye.regexpCode)(C):c.code.formats?(0,ye._)`${c.code.formats}${(0,ye.getProperty)(s)}`:void 0,be=r.scopeValue("formats",{key:s,ref:C,code:ke});return typeof C=="object"&&!(C instanceof RegExp)?[C.type||"string",C.validate,(0,ye._)`${be}.validate`]:["string",C,be]}function E(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ye._)`await ${v}(${n})`}return typeof g=="function"?(0,ye._)`${v}(${n})`:(0,ye._)`${v}.test(${n})`}}}};Zd.default=eO});var fy=T(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});var tO=py(),rO=[tO.default];Ud.default=rO});var my=T(Hn=>{"use strict";Object.defineProperty(Hn,"__esModule",{value:!0});Hn.contentVocabulary=Hn.metadataVocabulary=void 0;Hn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Hn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var gy=T(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});var nO=b_(),oO=M_(),sO=dy(),iO=fy(),hy=my(),aO=[nO.default,oO.default,(0,sO.default)(),iO.default,hy.metadataVocabulary,hy.contentVocabulary];Hd.default=aO});var yy=T(Xi=>{"use strict";Object.defineProperty(Xi,"__esModule",{value:!0});Xi.DiscrError=void 0;var _y;(function(t){t.Tag="tag",t.Mapping="mapping"})(_y||(Xi.DiscrError=_y={}))});var vy=T(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});var qn=F(),qd=yy(),xy=Ni(),cO=Ko(),uO=X(),lO={message:({params:{discrError:t,tagName:e}})=>t===qd.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,qn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},dO={keyword:"discriminator",type:"object",schemaType:"object",error:lO,code(t){let{gen:e,data:r,schema:n,parentSchema:o,it:s}=t,{oneOf:i}=o;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!i)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,qn._)`${r}${(0,qn.getProperty)(a)}`);e.if((0,qn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:qd.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let m=f();e.if(!1);for(let p in m)e.elseIf((0,qn._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:qd.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(m){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:m},p);return t.mergeEvaluated(h,qn.Name),p}function f(){var m;let p={},h=v(o),g=!0;for(let E=0;E<i.length;E++){let C=i[E];if(C?.$ref&&!(0,uO.schemaHasRulesButRef)(C,s.self.RULES)){let be=C.$ref;if(C=xy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,be),C instanceof xy.SchemaEnv&&(C=C.schema),C===void 0)throw new cO.default(s.opts.uriResolver,s.baseId,be)}let ke=(m=C?.properties)===null||m===void 0?void 0:m[a];if(typeof ke!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||v(C)),y(ke,E)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function v({required:E}){return Array.isArray(E)&&E.includes(a)}function y(E,C){if(E.const)k(E.const,C);else if(E.enum)for(let ke of E.enum)k(ke,C);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function k(E,C){if(typeof E!="string"||E in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[E]=C}}}};Fd.default=dO});var ky=T((YM,pO)=>{pO.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var Vd=T((pe,Bd)=>{"use strict";Object.defineProperty(pe,"__esModule",{value:!0});pe.MissingRefError=pe.ValidationError=pe.CodeGen=pe.Name=pe.nil=pe.stringify=pe.str=pe._=pe.KeywordCxt=pe.Ajv=void 0;var fO=__(),mO=gy(),hO=vy(),Sy=ky(),gO=["/properties"],Qi="http://json-schema.org/draft-07/schema",Fn=class extends fO.default{_addVocabularies(){super._addVocabularies(),mO.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(hO.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Sy,gO):Sy;this.addMetaSchema(e,Qi,!1),this.refs["http://json-schema.org/schema"]=Qi}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Qi)?Qi:void 0)}};pe.Ajv=Fn;Bd.exports=pe=Fn;Bd.exports.Ajv=Fn;Object.defineProperty(pe,"__esModule",{value:!0});pe.default=Fn;var _O=Vo();Object.defineProperty(pe,"KeywordCxt",{enumerable:!0,get:function(){return _O.KeywordCxt}});var Bn=F();Object.defineProperty(pe,"_",{enumerable:!0,get:function(){return Bn._}});Object.defineProperty(pe,"str",{enumerable:!0,get:function(){return Bn.str}});Object.defineProperty(pe,"stringify",{enumerable:!0,get:function(){return Bn.stringify}});Object.defineProperty(pe,"nil",{enumerable:!0,get:function(){return Bn.nil}});Object.defineProperty(pe,"Name",{enumerable:!0,get:function(){return Bn.Name}});Object.defineProperty(pe,"CodeGen",{enumerable:!0,get:function(){return Bn.CodeGen}});var yO=Ii();Object.defineProperty(pe,"ValidationError",{enumerable:!0,get:function(){return yO.default}});var xO=Ko();Object.defineProperty(pe,"MissingRefError",{enumerable:!0,get:function(){return xO.default}})});var Oy=T(Mt=>{"use strict";Object.defineProperty(Mt,"__esModule",{value:!0});Mt.formatNames=Mt.fastFormats=Mt.fullFormats=void 0;function jt(t,e){return{validate:t,compare:e}}Mt.fullFormats={date:jt(Ty,Gd),time:jt(Jd(!0),Yd),"date-time":jt(by(!0),Py),"iso-time":jt(Jd(),$y),"iso-date-time":jt(by(),Ry),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:EO,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:IO,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:TO,int32:{type:"number",validate:RO},int64:{type:"number",validate:OO},float:{type:"number",validate:Ey},double:{type:"number",validate:Ey},password:!0,binary:!0};Mt.fastFormats={...Mt.fullFormats,date:jt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Gd),time:jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Yd),"date-time":jt(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Py),"iso-time":jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,$y),"iso-date-time":jt(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Ry),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Mt.formatNames=Object.keys(Mt.fullFormats);function vO(t){return t%4===0&&(t%100!==0||t%400===0)}var kO=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,SO=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Ty(t){let e=kO.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],o=+e[3];return n>=1&&n<=12&&o>=1&&o<=(n===2&&vO(r)?29:SO[n])}function Gd(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Kd=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Jd(t){return function(r){let n=Kd.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,f=o-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&i<61}}function Yd(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 $y(t,e){if(!(t&&e))return;let r=Kd.exec(t),n=Kd.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 Wd=/t|\s/i;function by(t){let e=Jd(t);return function(n){let o=n.split(Wd);return o.length===2&&Ty(o[0])&&e(o[1])}}function Py(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Ry(t,e){if(!(t&&e))return;let[r,n]=t.split(Wd),[o,s]=e.split(Wd),i=Gd(r,o);if(i!==void 0)return i||Yd(n,s)}var bO=/\/|:/,wO=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function EO(t){return bO.test(t)&&wO.test(t)}var wy=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function TO(t){return wy.lastIndex=0,wy.test(t)}var $O=-(2**31),PO=2**31-1;function RO(t){return Number.isInteger(t)&&t<=PO&&t>=$O}function OO(t){return Number.isInteger(t)}function Ey(){return!0}var CO=/[^\\]\\Z/;function IO(t){if(CO.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Cy=T(Vn=>{"use strict";Object.defineProperty(Vn,"__esModule",{value:!0});Vn.formatLimitDefinition=void 0;var zO=Vd(),bt=F(),mr=bt.operators,ea={formatMaximum:{okStr:"<=",ok:mr.LTE,fail:mr.GT},formatMinimum:{okStr:">=",ok:mr.GTE,fail:mr.LT},formatExclusiveMaximum:{okStr:"<",ok:mr.LT,fail:mr.GTE},formatExclusiveMinimum:{okStr:">",ok:mr.GT,fail:mr.LTE}},NO={message:({keyword:t,schemaCode:e})=>(0,bt.str)`should be ${ea[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,bt._)`{comparison: ${ea[t].okStr}, limit: ${e}}`};Vn.formatLimitDefinition={keyword:Object.keys(ea),type:"string",schemaType:"string",$data:!0,error:NO,code(t){let{gen:e,data:r,schemaCode:n,keyword:o,it:s}=t,{opts:i,self:a}=s;if(!i.validateFormats)return;let c=new zO.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,bt._)`${f}[${c.schemaCode}]`);t.fail$data((0,bt.or)((0,bt._)`typeof ${m} != "object"`,(0,bt._)`${m} instanceof RegExp`,(0,bt._)`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=a.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${o}": format "${f}" does not define "compare" function`);let p=e.scopeValue("formats",{key:f,ref:m,code:i.code.formats?(0,bt._)`${i.code.formats}${(0,bt.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,bt._)`${f}.compare(${r}, ${n}) ${ea[o].fail} 0`}},dependencies:["format"]};var AO=t=>(t.addKeyword(Vn.formatLimitDefinition),t);Vn.default=AO});var Ay=T((as,Ny)=>{"use strict";Object.defineProperty(as,"__esModule",{value:!0});var Kn=Oy(),jO=Cy(),Xd=F(),Iy=new Xd.Name("fullFormats"),MO=new Xd.Name("fastFormats"),Qd=(t,e={keywords:!0})=>{if(Array.isArray(e))return zy(t,e,Kn.fullFormats,Iy),t;let[r,n]=e.mode==="fast"?[Kn.fastFormats,MO]:[Kn.fullFormats,Iy],o=e.formats||Kn.formatNames;return zy(t,o,r,n),e.keywords&&(0,jO.default)(t),t};Qd.get=(t,e="full")=>{let n=(e==="fast"?Kn.fastFormats:Kn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function zy(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Xd._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}Ny.exports=as=Qd;Object.defineProperty(as,"__esModule",{value:!0});as.default=Qd});var Sx,bx=we(()=>{"use strict";Sx={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot",Codex:"codex","codex-mcp-client":"codex","Kilo Code":"kilo","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed"}});function ps(t,e){let r=ds[e],n=mp(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function mp(t,e){if(e){let r=ds[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}function hp(t){return t.match(/node\s+"?([^"]+\.mjs)"?/)?.[1]??null}function Tx(t){let e=Object.values(ds);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var Et,xC,wx,ds,Ex,cL,$x=we(()=>{"use strict";Et={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},xC=["Bash","WebFetch","Read","Grep","Agent","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"],wx=xC.join("|"),ds={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},Ex=[Et.PRE_TOOL_USE,Et.SESSION_START],cL=[Et.POST_TOOL_USE,Et.PRE_COMPACT,Et.USER_PROMPT_SUBMIT]});var _p={};Ve(_p,{ClaudeCodeAdapter:()=>gp});import{createHash as Px}from"node:crypto";import{readFileSync as fa,writeFileSync as Rx,mkdirSync as vC,copyFileSync as kC,accessSync as Ox,existsSync as SC,readdirSync as bC,chmodSync as wC,constants as Cx}from"node:fs";import{resolve as Qr,join as fs}from"node:path";import{homedir as Wn}from"node:os";var gp,yp=we(()=>{"use strict";$x();gp=class{name="Claude Code";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{updatedInput:e.updatedInput};if(e.decision==="context"&&e.additionalContext)return{additionalContext:e.additionalContext};if(e.decision==="ask")return{permissionDecision:"ask"}}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),e.updatedOutput&&(r.updatedMCPToolOutput=e.updatedOutput),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Qr(Wn(),".claude","settings.json")}getSessionDir(){let e=fs(Wn(),".claude","context-mode","sessions");return vC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Px("sha256").update(e).digest("hex").slice(0,16);return fs(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Px("sha256").update(e).digest("hex").slice(0,16);return fs(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){let r=`node ${e}/hooks/pretooluse.mjs`;return{PreToolUse:["Bash","WebFetch","Read","Grep","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].map(o=>({matcher:o,hooks:[{type:"command",command:r}]})),PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{let e=fa(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){Rx(this.getSettingsPath(),JSON.stringify(e,null,2)+`
10
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"PreToolUse hook",status:"fail",message:"Could not read ~/.claude/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=this.readPluginHooks(e),i=this.checkHookType(o,s,Et.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,Et.SESSION_START);return r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"No SessionStart hooks found",fix:a?void 0:"context-mode upgrade"}),r}readPluginHooks(e){let r=[fs(e,"hooks","hooks.json"),fs(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=fa(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=>ps(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>ps(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=Qr(Wn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(fa(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=[Qr(Wn(),".claude"),Qr(Wn(),".config","claude")];for(let r of e){let n=Qr(r,"plugins","cache","context-mode","context-mode");try{let s=bC(n).filter(i=>/^\d+\.\d+\.\d+/.test(i)).sort((i,a)=>{let c=i.split(".").map(Number),u=a.split(".").map(Number);for(let l=0;l<3;l++)if((c[l]??0)!==(u[l]??0))return(c[l]??0)-(u[l]??0);return 0});if(s.length>0)return s[s.length-1]}catch{}}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[];for(let a of Object.keys(n)){let c=n[a];if(!Array.isArray(c))continue;let u=c.filter(d=>{let f=d;if(!Tx(f))return!0;let m=f.hooks??[];return m.every(h=>!h.command||!hp(h.command))?!0:m.every(h=>{let g=h.command?hp(h.command):null;return g?SC(g):!0})}),l=c.length-u.length;l>0&&(n[a]=u,o.push(`Removed ${l} stale ${a} hook(s)`))}let s=this.readPluginHooks(e);if(s&&Ex.every(c=>this.checkHookType(void 0,s,c)))return r.hooks=n,this.writeSettings(r),o.push("Skipped settings.json registration \u2014 plugin hooks.json is sufficient"),o;let i=[Et.PRE_TOOL_USE,Et.SESSION_START];for(let a of i){let c=mp(a,e);if(a===Et.PRE_TOOL_USE){let u={matcher:wx,hooks:[{type:"command",command:c}]},l=n.PreToolUse;if(l&&Array.isArray(l)){let d=l.findIndex(f=>ps(f,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n.PreToolUse=l}else n.PreToolUse=[u],o.push(`Created ${a} hooks section`)}else{let u={matcher:"",hooks:[{type:"command",command:c}]},l=n[a];if(l&&Array.isArray(l)){let d=l.findIndex(f=>ps(f,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n[a]=l}else n[a]=[u],o.push(`Created ${a} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{Ox(e,Cx.R_OK);let r=e+".bak";return kC(e,r),r}catch{return null}}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(ds)){let o=Qr(e,"hooks",n);try{Ox(o,Cx.R_OK),wC(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=Qr(Wn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(fa(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();Rx(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 Gn(t,e){let r=xp[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var xe,xp,hL,gL,Ix=we(()=>{"use strict";xe={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},xp={[xe.BEFORE_TOOL]:"beforetool.mjs",[xe.AFTER_TOOL]:"aftertool.mjs",[xe.PRE_COMPRESS]:"precompress.mjs",[xe.SESSION_START]:"sessionstart.mjs"},hL=[xe.BEFORE_TOOL,xe.SESSION_START],gL=[xe.AFTER_TOOL,xe.PRE_COMPRESS]});var Dx={};Ve(Dx,{GeminiCLIAdapter:()=>kp});import{createHash as zx}from"node:crypto";import{readFileSync as vp,writeFileSync as Nx,mkdirSync as Ax,copyFileSync as EC,accessSync as jx,chmodSync as TC,constants as Mx}from"node:fs";import{resolve as ms,join as ma}from"node:path";import{homedir as hs}from"node:os";var kp,Lx=we(()=>{"use strict";Ix();kp=class{name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return ms(hs(),".gemini","settings.json")}getSessionDir(){let e=ma(hs(),".gemini","context-mode","sessions");return Ax(e,{recursive:!0}),e}getSessionDBPath(e){let r=zx("sha256").update(e).digest("hex").slice(0,16);return ma(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=zx("sha256").update(e).digest("hex").slice(0,16);return ma(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[xe.BEFORE_TOOL]:[{matcher:"",hooks:[{type:"command",command:Gn(xe.BEFORE_TOOL,e)}]}],[xe.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Gn(xe.AFTER_TOOL,e)}]}],[xe.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Gn(xe.PRE_COMPRESS,e)}]}],[xe.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Gn(xe.SESSION_START,e)}]}]}}readSettings(){try{let e=vp(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=ms(hs(),".gemini");Ax(r,{recursive:!0}),Nx(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?.[xe.BEFORE_TOOL];if(s&&s.length>0){let a=s.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"BeforeTool hook",status:a?"pass":"fail",message:a?"BeforeTool hook configured":"BeforeTool exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"BeforeTool hook",status:"fail",message:"No BeforeTool hooks found",fix:"context-mode upgrade"});let i=o?.[xe.SESSION_START];if(i&&i.length>0){let a=i.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"SessionStart exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"SessionStart hook",status:"fail",message:"No SessionStart hooks found",fix:"context-mode upgrade"});return r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read ~/.gemini/settings.json"};let r=e.extensions;return r&&(Array.isArray(r)?r.some(o=>typeof o=="string"&&o.includes("context-mode")):Object.keys(r).some(o=>o.includes("context-mode")))?{check:"Plugin registration",status:"pass",message:"context-mode found in extensions"}:{check:"Plugin registration",status:"warn",message:"context-mode not found in extensions (might be using standalone MCP mode)"}}getInstalledVersion(){try{let e=ms(hs(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(vp(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[],s=[{name:xe.BEFORE_TOOL},{name:xe.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:Gn(i.name,e)}]},u=n[i.name];if(u&&Array.isArray(u)){let l=u.findIndex(d=>d.hooks?.some(m=>m.command?.includes("context-mode")));l>=0?(u[l]=c,o.push(`Updated existing ${i.name} hook entry`)):(u.push(c),o.push(`Added ${i.name} hook entry`)),n[i.name]=u}else n[i.name]=[c],o.push(`Created ${i.name} hooks section`)}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{jx(e,Mx.R_OK);let r=e+".bak";return EC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=ma(e,"hooks","gemini-cli");for(let o of Object.values(xp)){let s=ms(n,o);try{jx(s,Mx.R_OK),TC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=ms(hs(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(vp(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),Nx(n,JSON.stringify(o,null,2)+`
13
+ `,"utf-8")}catch{}}getProjectDir(){return process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var en,bL,wL,Zx=we(()=>{"use strict";en={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},bL=[en.BEFORE,en.AFTER],wL=[en.COMPACTING]});var qx={};Ve(qx,{OpenCodeAdapter:()=>Sp});import{createHash as Ux}from"node:crypto";import{readFileSync as Hx,writeFileSync as PC,mkdirSync as RC,copyFileSync as OC,accessSync as CC,constants as IC}from"node:fs";import{resolve as gr,join as Yn}from"node:path";import{homedir as gs}from"node:os";function $C(t){return t.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/,(\s*[}\]])/g,"$1")}var Sp,Fx=we(()=>{"use strict";Zx();Sp=class{get name(){return this.platform==="kilo"?"KiloCode":"OpenCode"}paradigm="ts-plugin";settingsPath;capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};platform;constructor(e="opencode"){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??gr(`${this.platform}.json`)}paths(){return this.platform==="kilo"?[gr("kilo.json"),gr(".kilocode","kilo.json"),Yn(gs(),".config","kilo","kilo.json")]:[gr("opencode.json"),gr("opencode.jsonc"),gr(".opencode","opencode.json"),gr(".opencode","opencode.jsonc"),Yn(gs(),".config","opencode","opencode.json"),Yn(gs(),".config","opencode","opencode.jsonc")]}getSessionDir(){let e=Yn(gs(),".config",this.platform,"context-mode","sessions");return RC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Ux("sha256").update(e).digest("hex").slice(0,16);return Yn(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Ux("sha256").update(e).digest("hex").slice(0,16);return Yn(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[en.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[en.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[en.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){this.settingsPath=void 0;for(let e of this.paths())try{let r=Hx(e,"utf-8");this.settingsPath=e;let n=e.endsWith(".jsonc")?$C(r):r;return JSON.parse(n)}catch{continue}return null}writeSettings(e){PC(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=n.plugin;if(o&&Array.isArray(o)){let s=o.some(i=>i.includes("context-mode"));r.push({check:"Plugin registration",status:s?"pass":"fail",message:s?"context-mode found in plugin array":"context-mode not found in plugin array",fix:s?void 0:"context-mode upgrade"})}else r.push({check:"Plugin registration",status:"fail",message:"No plugin array found in opencode.json",fix:"context-mode upgrade"});return r.push({check:"SessionStart hook",status:"warn",message:"SessionStart not supported in OpenCode (see issues #14808, #5409)"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`};let r=e.plugin;return r&&Array.isArray(r)&&r.some(o=>o.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in opencode.json plugin array",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=gr(gs(),".cache",this.platform,"node_modules","context-mode","package.json"),r=JSON.parse(Hx(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];return o.some(s=>s.includes("context-mode"))?n.push("context-mode already in plugin array"):(o.push("context-mode"),n.push("Added context-mode to plugin array")),r.plugin=o,this.writeSettings(r),n}backupSettings(){this.settingsPath=void 0;for(let e of this.paths())try{CC(e,IC.R_OK),this.settingsPath=e;let r=e+".bak";return OC(e,r),r}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var tn,CL,IL,Bx=we(()=>{"use strict";tn={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},CL=[tn.TOOL_CALL_BEFORE,tn.TOOL_CALL_AFTER],IL=[tn.COMMAND_NEW]});var Kx={};Ve(Kx,{OpenClawAdapter:()=>wp});import{createHash as Vx}from"node:crypto";import{readFileSync as bp,writeFileSync as zC,mkdirSync as NC,copyFileSync as AC,accessSync as jC,constants as MC}from"node:fs";import{resolve as _r,join as _s}from"node:path";import{homedir as ha}from"node:os";var wp,Jx=we(()=>{"use strict";Bx();wp=class{name="OpenClaw";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},toolOutput:r.output??r.tool_output,isError:r.isError??r.is_error,sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{block:!0,blockReason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{params:e.updatedInput};if(e.decision==="ask")return{block:!0,blockReason:e.reason??"Action requires user confirmation (security policy)"};e.decision==="context"&&e.additionalContext}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return _r("openclaw.json")}getSessionDir(){let e=_s(ha(),".openclaw","context-mode","sessions");return NC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Vx("sha256").update(e).digest("hex").slice(0,16);return _s(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Vx("sha256").update(e).digest("hex").slice(0,16);return _s(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[tn.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[tn.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[tn.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[_r("openclaw.json"),_r(".openclaw","openclaw.json"),_s(ha(),".openclaw","openclaw.json")];for(let r of e)try{let n=bp(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=_r("openclaw.json");zC(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=_r(ha(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(bp(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=_r("node_modules","context-mode","package.json"),r=JSON.parse(bp(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=[_r("openclaw.json"),_r(".openclaw","openclaw.json"),_s(ha(),".openclaw","openclaw.json")];for(let r of e)try{jC(r,MC.R_OK);let n=r+".bak";return AC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var Xx={};Ve(Xx,{CodexAdapter:()=>$p});import{createHash as Wx}from"node:crypto";import{readFileSync as Ep,mkdirSync as DC,copyFileSync as LC,accessSync as ZC,constants as UC}from"node:fs";import{resolve as Gx,join as Tp,dirname as HC}from"node:path";import{fileURLToPath as qC}from"node:url";import{homedir as Yx}from"node:os";var $p,Qx=we(()=>{"use strict";$p=class{name="Codex CLI";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Codex CLI does not support hooks")}parsePostToolUseInput(e){throw new Error("Codex CLI does not support hooks")}parsePreCompactInput(e){throw new Error("Codex CLI does not support hooks")}parseSessionStartInput(e){throw new Error("Codex CLI does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Gx(Yx(),".codex","config.toml")}getSessionDir(){let e=Tp(Yx(),".codex","context-mode","sessions");return DC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Wx("sha256").update(e).digest("hex").slice(0,16);return Tp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Wx("sha256").update(e).digest("hex").slice(0,16);return Tp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{return{_raw_toml:Ep(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Codex CLI does not support hooks (PRs #2904, #9796 closed without merge). Only MCP integration is available."}]}checkPluginRegistration(){try{let e=Ep(this.getSettingsPath(),"utf-8"),r=e.includes("context-mode"),n=e.includes("[mcp_servers]")||e.includes("[mcp_servers.");return r&&n?{check:"MCP registration",status:"pass",message:"context-mode found in [mcp_servers] config"}:n?{check:"MCP registration",status:"fail",message:"[mcp_servers] section exists but context-mode not found",fix:"Add context-mode to [mcp_servers] in ~/.codex/config.toml"}:{check:"MCP registration",status:"fail",message:"No [mcp_servers] section in config.toml",fix:"Add [mcp_servers.context-mode] to ~/.codex/config.toml"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.codex/config.toml"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{ZC(e,UC.R_OK);let r=e+".bak";return LC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Gx(HC(qC(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return Ep(e,"utf-8")}catch{return`# context-mode
12
16
 
13
- `+i,"utf-8"),o)}catch{return Sa(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return e.session_id?e.session_id:process.env.CLAUDE_SESSION_ID?process.env.CLAUDE_SESSION_ID:`pid-${process.ppid}`}}});function Qn(t,e){let r=Ip[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var ke,Ip,aD,cD,Mx=we(()=>{"use strict";ke={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},Ip={[ke.BEFORE_TOOL]:"beforetool.mjs",[ke.AFTER_TOOL]:"aftertool.mjs",[ke.PRE_COMPRESS]:"precompress.mjs",[ke.SESSION_START]:"sessionstart.mjs"},aD=[ke.BEFORE_TOOL,ke.SESSION_START],cD=[ke.AFTER_TOOL,ke.PRE_COMPRESS]});var Hx={};Ve(Hx,{GeminiCLIAdapter:()=>zp});import{createHash as Lx}from"node:crypto";import{readFileSync as ys,writeFileSync as ka,mkdirSync as Dx,copyFileSync as SC,accessSync as Zx,chmodSync as kC,constants as Ux}from"node:fs";import{resolve as xr,join as ba}from"node:path";import{homedir as eo}from"node:os";var zp,qx=we(()=>{"use strict";Mx();zp=class{name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return xr(eo(),".gemini","settings.json")}getSessionDir(){let e=ba(eo(),".gemini","context-mode","sessions");return Dx(e,{recursive:!0}),e}getSessionDBPath(e){let r=Lx("sha256").update(e).digest("hex").slice(0,16);return ba(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Lx("sha256").update(e).digest("hex").slice(0,16);return ba(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ke.BEFORE_TOOL]:[{matcher:"",hooks:[{type:"command",command:Qn(ke.BEFORE_TOOL,e)}]}],[ke.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Qn(ke.AFTER_TOOL,e)}]}],[ke.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Qn(ke.PRE_COMPRESS,e)}]}],[ke.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Qn(ke.SESSION_START,e)}]}]}}readSettings(){try{let e=ys(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=xr(eo(),".gemini");Dx(r,{recursive:!0}),ka(this.getSettingsPath(),JSON.stringify(e,null,2)+`
14
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"BeforeTool hook",status:"fail",message:"Could not read ~/.gemini/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=o?.[ke.BEFORE_TOOL];if(s&&s.length>0){let a=s.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"BeforeTool hook",status:a?"pass":"fail",message:a?"BeforeTool hook configured":"BeforeTool exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"BeforeTool hook",status:"fail",message:"No BeforeTool hooks found",fix:"context-mode upgrade"});let i=o?.[ke.SESSION_START];if(i&&i.length>0){let a=i.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"SessionStart exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"SessionStart hook",status:"fail",message:"No SessionStart hooks found",fix:"context-mode upgrade"});return r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read ~/.gemini/settings.json"};let r=e.extensions;return r&&(Array.isArray(r)?r.some(o=>typeof o=="string"&&o.includes("context-mode")):Object.keys(r).some(o=>o.includes("context-mode")))?{check:"Plugin registration",status:"pass",message:"context-mode found in extensions"}:{check:"Plugin registration",status:"warn",message:"context-mode not found in extensions (might be using standalone MCP mode)"}}getInstalledVersion(){try{let e=xr(eo(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(ys(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[],s=[{name:ke.BEFORE_TOOL},{name:ke.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:Qn(i.name,e)}]},u=n[i.name];if(u&&Array.isArray(u)){let l=u.findIndex(d=>d.hooks?.some(f=>f.command?.includes("context-mode")));l>=0?(u[l]=c,o.push(`Updated existing ${i.name} hook entry`)):(u.push(c),o.push(`Added ${i.name} hook entry`)),n[i.name]=u}else n[i.name]=[c],o.push(`Created ${i.name} hooks section`)}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{Zx(e,Ux.R_OK);let r=e+".bak";return SC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=ba(e,"hooks","gemini-cli");for(let o of Object.values(Ip)){let s=xr(n,o);try{Zx(s,Ux.R_OK),kC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=xr(eo(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(ys(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),ka(n,JSON.stringify(o,null,2)+`
15
- `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:xr(eo(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=xr(e,n.projectRelativePath),s=xr(r,"configs","gemini-cli",n.fileName);try{let i=ys(s,"utf-8");try{let a=ys(o,"utf-8");return a.includes("context-mode")?null:(ka(o,a.trimEnd()+`
17
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});function Xn(t,e){let r=ga[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/${r}"`:`context-mode hook vscode-copilot ${t.toLowerCase()}`}var se,ga,FL,BL,ev=we(()=>{"use strict";se={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},ga={[se.PRE_TOOL_USE]:"pretooluse.mjs",[se.POST_TOOL_USE]:"posttooluse.mjs",[se.PRE_COMPACT]:"precompact.mjs",[se.SESSION_START]:"sessionstart.mjs"},FL=[se.PRE_TOOL_USE,se.SESSION_START],BL=[se.POST_TOOL_USE,se.PRE_COMPACT]});var nv={};Ve(nv,{VSCodeCopilotAdapter:()=>Ip});import{createHash as tv}from"node:crypto";import{readFileSync as _a,writeFileSync as rv,mkdirSync as Pp,copyFileSync as FC,accessSync as Rp,existsSync as BC,chmodSync as VC,constants as Op}from"node:fs";import{resolve as Tt,join as rn}from"node:path";import{homedir as Cp}from"node:os";var Ip,ov=we(()=>{"use strict";ev();Ip=class{name="VS Code Copilot";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:se.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:se.PRE_TOOL_USE,additionalContext:e.additionalContext}};if(e.decision==="ask")return{permissionDecision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{hookSpecificOutput:{hookEventName:se.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:se.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Tt(".github","hooks","context-mode.json")}getSessionDir(){let e=Tt(".github","context-mode","sessions"),r=rn(Cp(),".vscode","context-mode","sessions"),n=BC(Tt(".github"))?e:r;return Pp(n,{recursive:!0}),n}getSessionDBPath(e){let r=tv("sha256").update(e).digest("hex").slice(0,16);return rn(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=tv("sha256").update(e).digest("hex").slice(0,16);return rn(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[se.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Xn(se.PRE_TOOL_USE,e)}]}],[se.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Xn(se.POST_TOOL_USE,e)}]}],[se.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:Xn(se.PRE_COMPACT,e)}]}],[se.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Xn(se.SESSION_START,e)}]}]}}readSettings(){let e=[this.getSettingsPath(),Tt(".claude","settings.json")];for(let r of e)try{let n=_a(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath(),n=Tt(".github","hooks");Pp(n,{recursive:!0}),rv(r,JSON.stringify(e,null,2)+`
18
+ `,"utf-8")}validateHooks(e){let r=[],n=Tt(".github","hooks");try{Rp(n,Op.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=Tt(n,"context-mode.json");try{let s=_a(o,"utf-8"),a=JSON.parse(s).hooks;a?.[se.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in context-mode.json",fix:"context-mode upgrade"}),a?.[se.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in context-mode.json",fix:"context-mode upgrade"})}catch{r.push({check:"Hook configuration",status:"fail",message:"Could not read .github/hooks/context-mode.json",fix:"context-mode upgrade"})}return r.push({check:"API stability",status:"warn",message:"VS Code Copilot hooks are in preview \u2014 API may change without notice"}),r.push({check:"Matcher support",status:"warn",message:"Matchers are parsed but IGNORED \u2014 all hooks fire on all tools"}),r}checkPluginRegistration(){try{let e=Tt(".vscode","mcp.json"),r=_a(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=[rn(Cp(),".vscode","extensions"),rn(Cp(),".vscode-insiders","extensions")];for(let r of e)try{let n=_a(rn(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}configureAllHooks(e){let r=[],n={hooks:{}},o=n.hooks,s=[se.PRE_TOOL_USE,se.POST_TOOL_USE,se.PRE_COMPACT,se.SESSION_START];for(let c of s)ga[c]&&(o[c]=[{matcher:"",hooks:[{type:"command",command:Xn(c,e)}]}],r.push(`Configured ${c} hook`));let i=Tt(".github","hooks");Pp(i,{recursive:!0});let a=Tt(i,"context-mode.json");return rv(a,JSON.stringify(n,null,2)+`
19
+ `,"utf-8"),r.push(`Wrote hook config to ${a}`),r}backupSettings(){let e=this.getSettingsPath();try{Rp(e,Op.R_OK);let r=e+".bak";return FC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=rn(e,"hooks","vscode-copilot");for(let o of Object.values(ga)){let s=Tt(n,o);try{Rp(s,Op.R_OK),VC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}}});function ya(t,e){let r=zp[e],n=yr(e);return"command"in t?t.command?.includes(r)||t.command?.includes(n)||!1:t.hooks?.some(s=>s.command?.includes(r)||s.command?.includes(n))??!1}function yr(t){return`context-mode hook cursor ${t.toLowerCase()}`}var Pe,zp,KC,Np,sv,iv,av=we(()=>{"use strict";Pe={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart"},zp={[Pe.PRE_TOOL_USE]:"pretooluse.mjs",[Pe.POST_TOOL_USE]:"posttooluse.mjs",[Pe.SESSION_START]:"sessionstart.mjs"},KC=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],Np=KC.join("|"),sv=[Pe.PRE_TOOL_USE],iv=[Pe.POST_TOOL_USE]});var mv={};Ve(mv,{CursorAdapter:()=>jp});import{createHash as cv}from"node:crypto";import{readFileSync as Ap,writeFileSync as JC,mkdirSync as uv,copyFileSync as WC,accessSync as lv,chmodSync as GC,constants as dv,existsSync as pv}from"node:fs";import{execSync as YC}from"node:child_process";import{resolve as Qn,join as nn}from"node:path";import{homedir as xa}from"node:os";var fv,jp,hv=we(()=>{"use strict";av();fv="/Library/Application Support/Cursor/hooks.json",jp=class{name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}getSettingsPath(){return Qn(".cursor","hooks.json")}getSessionDir(){let e=nn(xa(),".cursor","context-mode","sessions");return uv(e,{recursive:!0}),e}getSessionDBPath(e){let r=cv("sha256").update(e).digest("hex").slice(0,16);return nn(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=cv("sha256").update(e).digest("hex").slice(0,16);return nn(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[Pe.PRE_TOOL_USE]:[{type:"command",command:yr(Pe.PRE_TOOL_USE),matcher:Np,loop_limit:null,failClosed:!1}],[Pe.POST_TOOL_USE]:[{type:"command",command:yr(Pe.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[Pe.SESSION_START]:[{type:"command",command:yr(Pe.SESSION_START),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=Ap(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();uv(Qn(".cursor"),{recursive:!0}),JC(r,JSON.stringify(e,null,2)+`
20
+ `,"utf-8")}validateHooks(e){let r=[],n=this.loadNativeHookConfig();if(!n)r.push({check:"Native hook config",status:"fail",message:"No readable native Cursor hook config found in .cursor/hooks.json or ~/.cursor/hooks.json",fix:"context-mode upgrade"});else{let o=n.config.hooks??{};r.push({check:"Native hook config",status:"pass",message:`Loaded ${n.path}`});for(let s of sv){let i=o[s],a=Array.isArray(i)&&i.some(c=>ya(c,s));r.push({check:s,status:a?"pass":"fail",message:a?`${s} hook configured`:`${s} hook not configured in ${n.path}`,fix:a?void 0:"context-mode upgrade"})}for(let s of iv){let i=o[s],a=Array.isArray(i)&&i.some(c=>ya(c,s));r.push({check:s,status:a?"pass":"warn",message:a?`${s} hook configured`:`${s} hook missing \u2014 session event capture will be reduced`})}}return pv(fv)&&r.push({check:"Enterprise hook config",status:"warn",message:"Enterprise Cursor hook config detected at /Library/Application Support/Cursor/hooks.json (read-only informational layer)"}),this.hasClaudeCompatibilityHooks()&&r.push({check:"Claude compatibility",status:"warn",message:"Claude-compatible hooks detected; native Cursor hooks are the supported configuration"}),r}checkPluginRegistration(){let e=[Qn(".cursor","mcp.json"),nn(xa(),".cursor","mcp.json")];for(let r of e)try{let n=Ap(r,"utf-8"),o=JSON.parse(n),s=o.mcpServers??o.servers;if(!s)continue;if(Object.entries(s).some(([a,c])=>a.includes("context-mode")?!0:!c||typeof c!="object"?!1:c.command==="context-mode"))return{check:"MCP registration",status:"pass",message:`context-mode found in ${r}`}}catch{continue}return{check:"MCP registration",status:"warn",message:"Could not find context-mode in .cursor/mcp.json or ~/.cursor/mcp.json"}}getInstalledVersion(){try{return YC("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,Pe.PRE_TOOL_USE,{type:"command",command:yr(Pe.PRE_TOOL_USE),matcher:Np,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,Pe.POST_TOOL_USE,{type:"command",command:yr(Pe.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,Pe.SESSION_START,{type:"command",command:yr(Pe.SESSION_START),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}backupSettings(){let e=this.getSettingsPath();try{lv(e,dv.R_OK);let r=e+".bak";return WC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=nn(e,"hooks","cursor");for(let o of Object.values(zp)){let s=Qn(n,o);try{lv(s,dv.R_OK),GC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),nn(xa(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(fv),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=Ap(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"),nn(xa(),".claude","settings.json")].some(r=>pv(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>ya(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 xv={};Ve(xv,{AntigravityAdapter:()=>Zp});import{createHash as gv}from"node:crypto";import{readFileSync as va,writeFileSync as XC,mkdirSync as _v,copyFileSync as QC,accessSync as eI,constants as tI}from"node:fs";import{resolve as Mp,join as Dp,dirname as yv}from"node:path";import{fileURLToPath as rI}from"node:url";import{homedir as Lp}from"node:os";var Zp,vv=we(()=>{"use strict";Zp=class{name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Mp(Lp(),".gemini","antigravity","mcp_config.json")}getSessionDir(){let e=Dp(Lp(),".gemini","context-mode","sessions");return _v(e,{recursive:!0}),e}getSessionDBPath(e){let r=gv("sha256").update(e).digest("hex").slice(0,16);return Dp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=gv("sha256").update(e).digest("hex").slice(0,16);return Dp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=va(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();_v(yv(r),{recursive:!0}),XC(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=va(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=Mp(Lp(),".gemini","extensions","context-mode","package.json");return JSON.parse(va(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{eI(e,tI.R_OK);let r=e+".bak";return QC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Mp(yv(rI(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return va(e,"utf-8")}catch{return`# context-mode
16
21
 
17
- `+i,"utf-8"),o)}catch{return ka(o,i,"utf-8"),o}}catch{return null}}getProjectDir(){return process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var sn,hD,gD,Fx=we(()=>{"use strict";sn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},hD=[sn.BEFORE,sn.AFTER],gD=[sn.COMPACTING]});var Vx={};Ve(Vx,{OpenCodeAdapter:()=>Ap});import{createHash as Bx}from"node:crypto";import{readFileSync as wa,writeFileSync as Np,mkdirSync as bC,copyFileSync as wC,accessSync as EC,constants as TC}from"node:fs";import{resolve as an,join as Ea}from"node:path";import{homedir as Ta}from"node:os";var Ap,Kx=we(()=>{"use strict";Fx();Ap=class{name="OpenCode";paradigm="ts-plugin";settingsPath;capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},toolOutput:r.output,isError:void 0,sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")throw new Error(e.reason??"Blocked by context-mode hook");if(e.decision==="modify"&&e.updatedInput)return{args:e.updatedInput};if(e.decision==="ask")throw new Error(e.reason??"Action requires user confirmation (security policy)")}formatPostToolUseResponse(e){let r={};return e.updatedOutput&&(r.output=e.updatedOutput),e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return this.settingsPath??an("opencode.json")}paths(){return[an("opencode.json"),an(".opencode","opencode.json"),Ea(Ta(),".config","opencode","opencode.json")]}getSessionDir(){let e=Ea(Ta(),".config","opencode","context-mode","sessions");return bC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Bx("sha256").update(e).digest("hex").slice(0,16);return Ea(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Bx("sha256").update(e).digest("hex").slice(0,16);return Ea(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[sn.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[sn.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[sn.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){this.settingsPath=void 0;for(let e of this.paths())try{let r=wa(e,"utf-8");return this.settingsPath=e,JSON.parse(r)}catch{continue}return null}writeSettings(e){Np(this.getSettingsPath(),JSON.stringify(e,null,2)+`
18
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read opencode.json",fix:"context-mode upgrade"}),r;let o=n.plugin;if(o&&Array.isArray(o)){let s=o.some(i=>i.includes("context-mode"));r.push({check:"Plugin registration",status:s?"pass":"fail",message:s?"context-mode found in plugin array":"context-mode not found in plugin array",fix:s?void 0:"context-mode upgrade"})}else r.push({check:"Plugin registration",status:"fail",message:"No plugin array found in opencode.json",fix:"context-mode upgrade"});return r.push({check:"SessionStart hook",status:"warn",message:"SessionStart not supported in OpenCode (see issues #14808, #5409)"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read opencode.json"};let r=e.plugin;return r&&Array.isArray(r)&&r.some(o=>o.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in opencode.json plugin array",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=an(Ta(),".cache","opencode","node_modules","context-mode","package.json"),r=JSON.parse(wa(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];return o.some(s=>s.includes("context-mode"))?n.push("context-mode already in plugin array"):(o.push("context-mode"),n.push("Added context-mode to plugin array")),r.plugin=o,this.writeSettings(r),n}backupSettings(){this.settingsPath=void 0;for(let e of this.paths())try{EC(e,TC.R_OK),this.settingsPath=e;let r=e+".bak";return wC(e,r),r}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:an(Ta(),".config","opencode","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=an(e,n.projectRelativePath),s=an(r,"configs","opencode",n.fileName);try{let i=wa(s,"utf-8");try{let a=wa(o,"utf-8");return a.includes("context-mode")?null:(Np(o,a.trimEnd()+`
22
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});function ys(t,e){let r=kv[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function xs(t,e){let r=kv[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var ve,kv,lZ,dZ,Sv=we(()=>{"use strict";ve={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},kv={[ve.PRE_TOOL_USE]:"pretooluse.mjs",[ve.POST_TOOL_USE]:"posttooluse.mjs"},lZ=[ve.PRE_TOOL_USE],dZ=[ve.POST_TOOL_USE]});var Tv={};Ve(Tv,{KiroAdapter:()=>qp});import{createHash as bv}from"node:crypto";import{readFileSync as eo,writeFileSync as wv,mkdirSync as Up,copyFileSync as nI,accessSync as oI,constants as sI}from"node:fs";import{resolve as to,join as Hp,dirname as Ev}from"node:path";import{fileURLToPath as iI}from"node:url";import{homedir as vs}from"node:os";var qp,$v=we(()=>{"use strict";Sv();qp=class{name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e,n=r.tool_response;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:typeof n=="string"?n:JSON.stringify(n??""),sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePreCompactInput(e){throw new Error("Kiro does not support PreCompact hooks")}parseSessionStartInput(e){throw new Error("Kiro does not support SessionStart hooks (yet)")}formatPreToolUseResponse(e){switch(e.decision){case"deny":return{exitCode:2,stderr:e.reason??"Blocked by context-mode"};case"context":return{exitCode:0,stdout:e.additionalContext??""};default:return}}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return to(vs(),".kiro","settings","mcp.json")}getSessionDir(){let e=Hp(vs(),".kiro","context-mode","sessions");return Up(e,{recursive:!0}),e}getSessionDBPath(e){let r=bv("sha256").update(e).digest("hex").slice(0,16);return Hp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=bv("sha256").update(e).digest("hex").slice(0,16);return Hp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ve.PRE_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:xs(ve.PRE_TOOL_USE,e)}]}],[ve.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:xs(ve.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=eo(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Up(Ev(r),{recursive:!0}),wv(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=to(vs(),".kiro","agents","default.json");try{let s=JSON.parse(eo(n,"utf-8")).hooks??{};for(let i of[ve.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>ys(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"fail",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured`,...c?{}:{fix:"Run: context-mode upgrade"}})}for(let i of[ve.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>ys(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"warn",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured (optional)`})}}catch{r.push({check:"Hook configuration",status:"warn",message:"Could not read ~/.kiro/agents/default.json",fix:"Run: context-mode upgrade"})}return r}checkPluginRegistration(){try{let e=eo(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.kiro/settings/mcp.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.kiro/settings/mcp.json"}}}getInstalledVersion(){try{let e=to(vs(),".kiro","extensions","context-mode","package.json");return JSON.parse(eo(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=to(vs(),".kiro","agents"),o=to(n,"default.json");try{Up(n,{recursive:!0});let s={};try{s=JSON.parse(eo(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[ve.PRE_TOOL_USE]??[];a.some(u=>ys(u,ve.PRE_TOOL_USE))||(a.push({matcher:"*",command:xs(ve.PRE_TOOL_USE,e)}),i[ve.PRE_TOOL_USE]=a,r.push(`Added ${ve.PRE_TOOL_USE} hook to ${o}`));let c=i[ve.POST_TOOL_USE]??[];c.some(u=>ys(u,ve.POST_TOOL_USE))||(c.push({matcher:"*",command:xs(ve.POST_TOOL_USE,e)}),i[ve.POST_TOOL_USE]=c,r.push(`Added ${ve.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,wv(o,JSON.stringify(s,null,2),"utf-8")}catch(s){r.push(`Failed to configure hooks: ${s.message}`)}return r}backupSettings(){let e=this.getSettingsPath();try{oI(e,sI.R_OK);let r=e+".bak";return nI(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=to(Ev(iI(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return eo(e,"utf-8")}catch{return`# context-mode
19
23
 
20
- `+i,"utf-8"),o)}catch{return Np(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var cn,bD,wD,Jx=we(()=>{"use strict";cn={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},bD=[cn.TOOL_CALL_BEFORE,cn.TOOL_CALL_AFTER],wD=[cn.COMMAND_NEW]});var Wx={};Ve(Wx,{OpenClawAdapter:()=>Mp});import{createHash as Gx}from"node:crypto";import{readFileSync as to,writeFileSync as jp,mkdirSync as $C,copyFileSync as PC,accessSync as RC,constants as OC}from"node:fs";import{resolve as ht,join as xs}from"node:path";import{homedir as vs}from"node:os";var Mp,Yx=we(()=>{"use strict";Jx();Mp=class{name="OpenClaw";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},toolOutput:r.output??r.tool_output,isError:r.isError??r.is_error,sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{block:!0,blockReason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{params:e.updatedInput};if(e.decision==="ask")return{block:!0,blockReason:e.reason??"Action requires user confirmation (security policy)"};e.decision==="context"&&e.additionalContext}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return ht("openclaw.json")}getSessionDir(){let e=xs(vs(),".openclaw","context-mode","sessions");return $C(e,{recursive:!0}),e}getSessionDBPath(e){let r=Gx("sha256").update(e).digest("hex").slice(0,16);return xs(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Gx("sha256").update(e).digest("hex").slice(0,16);return xs(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[cn.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[cn.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[cn.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[ht("openclaw.json"),ht(".openclaw","openclaw.json"),xs(vs(),".openclaw","openclaw.json")];for(let r of e)try{let n=to(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=ht("openclaw.json");jp(r,JSON.stringify(e,null,2)+`
21
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read openclaw.json",fix:"context-mode upgrade"}),r;let o=n.plugins,s=o?.entries;if(s){let a=Object.keys(s).some(c=>c.includes("context-mode"));if(r.push({check:"Plugin registration",status:a?"pass":"fail",message:a?"context-mode found in plugins.entries":"context-mode not found in plugins.entries",fix:a?void 0:"context-mode upgrade"}),a){let u=s["context-mode"]?.enabled!==!1;r.push({check:"Plugin enabled",status:u?"pass":"warn",message:u?"context-mode plugin is enabled":"context-mode plugin is disabled"})}}else r.push({check:"Plugin registration",status:"fail",message:"No plugins.entries found in openclaw.json",fix:"context-mode upgrade"});return o?.slots?.contextEngine==="context-mode"?r.push({check:"Context engine",status:"pass",message:"context-mode registered as context engine (owns compaction)"}):r.push({check:"Context engine",status:"warn",message:"context-mode not set as context engine \u2014 compaction will use default engine"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read openclaw.json"};let n=e.plugins?.entries;return n&&Object.keys(n).some(s=>s.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugins.entries"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in openclaw.json plugins.entries",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=ht(vs(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(to(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=ht("node_modules","context-mode","package.json"),r=JSON.parse(to(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[];r.plugins||(r.plugins={});let o=r.plugins;o.entries||(o.entries={});let s=o.entries;if(!s["context-mode"])s["context-mode"]={enabled:!0},n.push("Added context-mode to plugins.entries");else{let a=s["context-mode"];a.enabled===!1?(a.enabled=!0,n.push("Enabled context-mode plugin")):n.push("context-mode already configured in plugins.entries")}o.slots||(o.slots={});let i=o.slots;return i.contextEngine?i.contextEngine!=="context-mode"&&n.push(`Context engine already set to "${i.contextEngine}" \u2014 not overwriting`):(i.contextEngine="context-mode",n.push("Set context-mode as context engine (owns compaction)")),this.writeSettings(r),n}backupSettings(){let e=[ht("openclaw.json"),ht(".openclaw","openclaw.json"),xs(vs(),".openclaw","openclaw.json")];for(let r of e)try{RC(r,OC.R_OK);let n=r+".bak";return PC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:ht(vs(),".openclaw","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=ht(e,n.projectRelativePath),s=ht(r,"configs","openclaw",n.fileName);try{let i;try{i=to(s,"utf-8")}catch{let a=ht(r,"configs","opencode",n.fileName);i=to(a,"utf-8")}try{let a=to(o,"utf-8");return a.includes("context-mode")?null:(jp(o,a.trimEnd()+`
24
+ 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 zv={};Ve(zv,{ZedAdapter:()=>Vp});import{createHash as Pv}from"node:crypto";import{readFileSync as Fp,writeFileSync as aI,mkdirSync as Rv,copyFileSync as cI,accessSync as uI,constants as lI}from"node:fs";import{resolve as Ov,join as Bp,dirname as Cv}from"node:path";import{fileURLToPath as dI}from"node:url";import{homedir as Iv}from"node:os";var Vp,Nv=we(()=>{"use strict";Vp=class{name="Zed";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Zed does not support hooks")}parsePostToolUseInput(e){throw new Error("Zed does not support hooks")}parsePreCompactInput(e){throw new Error("Zed does not support hooks")}parseSessionStartInput(e){throw new Error("Zed does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Ov(Iv(),".config","zed","settings.json")}getSessionDir(){let e=Bp(Iv(),".config","zed","context-mode","sessions");return Rv(e,{recursive:!0}),e}getSessionDBPath(e){let r=Pv("sha256").update(e).digest("hex").slice(0,16);return Bp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Pv("sha256").update(e).digest("hex").slice(0,16);return Bp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=Fp(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Rv(Cv(r),{recursive:!0}),aI(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=Fp(this.getSettingsPath(),"utf-8"),n=JSON.parse(e).context_servers!==void 0,o=e.includes("context-mode");return n&&o?{check:"MCP registration",status:"pass",message:"context-mode found in context_servers config"}:n?{check:"MCP registration",status:"fail",message:"context_servers section exists but context-mode not found",fix:"Add context-mode to context_servers in ~/.config/zed/settings.json"}:{check:"MCP registration",status:"fail",message:"No context_servers section in settings.json",fix:"Add context_servers.context-mode to ~/.config/zed/settings.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.config/zed/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{uI(e,lI.R_OK);let r=e+".bak";return cI(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Ov(Cv(dI(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return Fp(e,"utf-8")}catch{return`# context-mode
22
25
 
23
- `+i,"utf-8"),o)}catch{return jp(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var ev={};Ve(ev,{CodexAdapter:()=>Zp});import{createHash as Xx}from"node:crypto";import{readFileSync as Ss,writeFileSync as Qx,mkdirSync as CC,copyFileSync as IC,accessSync as zC,constants as NC}from"node:fs";import{resolve as ks,join as Lp,dirname as AC}from"node:path";import{fileURLToPath as jC}from"node:url";import{homedir as Dp}from"node:os";var Zp,tv=we(()=>{"use strict";Zp=class{name="Codex CLI";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Codex CLI does not support hooks")}parsePostToolUseInput(e){throw new Error("Codex CLI does not support hooks")}parsePreCompactInput(e){throw new Error("Codex CLI does not support hooks")}parseSessionStartInput(e){throw new Error("Codex CLI does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return ks(Dp(),".codex","config.toml")}getSessionDir(){let e=Lp(Dp(),".codex","context-mode","sessions");return CC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Xx("sha256").update(e).digest("hex").slice(0,16);return Lp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Xx("sha256").update(e).digest("hex").slice(0,16);return Lp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{return{_raw_toml:Ss(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Codex CLI does not support hooks (PRs #2904, #9796 closed without merge). Only MCP integration is available."}]}checkPluginRegistration(){try{let e=Ss(this.getSettingsPath(),"utf-8"),r=e.includes("context-mode"),n=e.includes("[mcp_servers]")||e.includes("[mcp_servers.");return r&&n?{check:"MCP registration",status:"pass",message:"context-mode found in [mcp_servers] config"}:n?{check:"MCP registration",status:"fail",message:"[mcp_servers] section exists but context-mode not found",fix:"Add context-mode to [mcp_servers] in ~/.codex/config.toml"}:{check:"MCP registration",status:"fail",message:"No [mcp_servers] section in config.toml",fix:"Add [mcp_servers.context-mode] to ~/.codex/config.toml"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.codex/config.toml"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{zC(e,NC.R_OK);let r=e+".bak";return IC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:ks(Dp(),".codex","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=ks(e,n.projectRelativePath),s=ks(r,"configs","codex",n.fileName);try{let i=Ss(s,"utf-8");try{let a=Ss(o,"utf-8");return a.includes("context-mode")?null:(Qx(o,a.trimEnd()+`
24
-
25
- `+i,"utf-8"),o)}catch{return Qx(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=ks(AC(jC(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return Ss(e,"utf-8")}catch{return`# context-mode
26
-
27
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});function ro(t,e){let r=$a[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/${r}"`:`context-mode hook vscode-copilot ${t.toLowerCase()}`}var se,$a,MD,LD,rv=we(()=>{"use strict";se={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},$a={[se.PRE_TOOL_USE]:"pretooluse.mjs",[se.POST_TOOL_USE]:"posttooluse.mjs",[se.PRE_COMPACT]:"precompact.mjs",[se.SESSION_START]:"sessionstart.mjs"},MD=[se.PRE_TOOL_USE,se.SESSION_START],LD=[se.POST_TOOL_USE,se.PRE_COMPACT]});var ov={};Ve(ov,{VSCodeCopilotAdapter:()=>Fp});import{createHash as nv}from"node:crypto";import{readFileSync as no,writeFileSync as Pa,mkdirSync as Ra,copyFileSync as MC,accessSync as Up,existsSync as LC,chmodSync as DC,constants as Hp}from"node:fs";import{resolve as tt,join as vr}from"node:path";import{homedir as qp}from"node:os";var Fp,sv=we(()=>{"use strict";rv();Fp=class{name="VS Code Copilot";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:se.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:se.PRE_TOOL_USE,additionalContext:e.additionalContext}};if(e.decision==="ask")return{permissionDecision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{hookSpecificOutput:{hookEventName:se.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:se.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return tt(".github","hooks","context-mode.json")}getSessionDir(){let e=tt(".github","context-mode","sessions"),r=vr(qp(),".vscode","context-mode","sessions"),n=LC(tt(".github"))?e:r;return Ra(n,{recursive:!0}),n}getSessionDBPath(e){let r=nv("sha256").update(e).digest("hex").slice(0,16);return vr(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=nv("sha256").update(e).digest("hex").slice(0,16);return vr(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[se.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:ro(se.PRE_TOOL_USE,e)}]}],[se.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:ro(se.POST_TOOL_USE,e)}]}],[se.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:ro(se.PRE_COMPACT,e)}]}],[se.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:ro(se.SESSION_START,e)}]}]}}readSettings(){let e=[this.getSettingsPath(),tt(".claude","settings.json")];for(let r of e)try{let n=no(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath(),n=tt(".github","hooks");Ra(n,{recursive:!0}),Pa(r,JSON.stringify(e,null,2)+`
28
- `,"utf-8")}validateHooks(e){let r=[],n=tt(".github","hooks");try{Up(n,Hp.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=tt(n,"context-mode.json");try{let s=no(o,"utf-8"),a=JSON.parse(s).hooks;a?.[se.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in context-mode.json",fix:"context-mode upgrade"}),a?.[se.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in context-mode.json",fix:"context-mode upgrade"})}catch{r.push({check:"Hook configuration",status:"fail",message:"Could not read .github/hooks/context-mode.json",fix:"context-mode upgrade"})}return r.push({check:"API stability",status:"warn",message:"VS Code Copilot hooks are in preview \u2014 API may change without notice"}),r.push({check:"Matcher support",status:"warn",message:"Matchers are parsed but IGNORED \u2014 all hooks fire on all tools"}),r}checkPluginRegistration(){try{let e=tt(".vscode","mcp.json"),r=no(e,"utf-8"),o=JSON.parse(r).servers;return o&&Object.keys(o).some(i=>i.includes("context-mode"))?{check:"MCP registration",status:"pass",message:"context-mode found in .vscode/mcp.json"}:{check:"MCP registration",status:"fail",message:"context-mode not found in .vscode/mcp.json",fix:"Add context-mode server to .vscode/mcp.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read .vscode/mcp.json"}}}getInstalledVersion(){let e=[vr(qp(),".vscode","extensions"),vr(qp(),".vscode-insiders","extensions")];for(let r of e)try{let n=no(vr(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}configureAllHooks(e){let r=[],n={hooks:{}},o=n.hooks,s=[se.PRE_TOOL_USE,se.POST_TOOL_USE,se.PRE_COMPACT,se.SESSION_START];for(let c of s)$a[c]&&(o[c]=[{matcher:"",hooks:[{type:"command",command:ro(c,e)}]}],r.push(`Configured ${c} hook`));let i=tt(".github","hooks");Ra(i,{recursive:!0});let a=tt(i,"context-mode.json");return Pa(a,JSON.stringify(n,null,2)+`
29
- `,"utf-8"),r.push(`Wrote hook config to ${a}`),r}backupSettings(){let e=this.getSettingsPath();try{Up(e,Hp.R_OK);let r=e+".bak";return MC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=vr(e,"hooks","vscode-copilot");for(let o of Object.values($a)){let s=tt(n,o);try{Up(s,Hp.R_OK),DC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"copilot-instructions.md",globalPath:"",projectRelativePath:vr(".github","copilot-instructions.md")}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=tt(e,n.projectRelativePath),s=tt(r,"configs","vscode-copilot",n.fileName);try{let i=no(s,"utf-8");Ra(tt(e,".github"),{recursive:!0});try{let a=no(o,"utf-8");return a.includes("context-mode")?null:(Pa(o,a.trimEnd()+`
30
-
31
- `+i,"utf-8"),o)}catch{return Pa(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}}});function Oa(t,e){let r=Bp[e],n=Sr(e);return"command"in t?t.command?.includes(r)||t.command?.includes(n)||!1:t.hooks?.some(s=>s.command?.includes(r)||s.command?.includes(n))??!1}function Sr(t){return`context-mode hook cursor ${t.toLowerCase()}`}var $e,Bp,ZC,Vp,iv,av,cv=we(()=>{"use strict";$e={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart"},Bp={[$e.PRE_TOOL_USE]:"pretooluse.mjs",[$e.POST_TOOL_USE]:"posttooluse.mjs",[$e.SESSION_START]:"sessionstart.mjs"},ZC=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],Vp=ZC.join("|"),iv=[$e.PRE_TOOL_USE],av=[$e.POST_TOOL_USE]});var hv={};Ve(hv,{CursorAdapter:()=>Jp});import{createHash as uv}from"node:crypto";import{readFileSync as Kp,writeFileSync as UC,mkdirSync as lv,copyFileSync as HC,accessSync as dv,chmodSync as qC,constants as pv,existsSync as fv}from"node:fs";import{execSync as FC}from"node:child_process";import{resolve as oo,join as un}from"node:path";import{homedir as Ca}from"node:os";var mv,Jp,gv=we(()=>{"use strict";cv();mv="/Library/Application Support/Cursor/hooks.json",Jp=class{name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}getSettingsPath(){return oo(".cursor","hooks.json")}getSessionDir(){let e=un(Ca(),".cursor","context-mode","sessions");return lv(e,{recursive:!0}),e}getSessionDBPath(e){let r=uv("sha256").update(e).digest("hex").slice(0,16);return un(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=uv("sha256").update(e).digest("hex").slice(0,16);return un(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[$e.PRE_TOOL_USE]:[{type:"command",command:Sr($e.PRE_TOOL_USE),matcher:Vp,loop_limit:null,failClosed:!1}],[$e.POST_TOOL_USE]:[{type:"command",command:Sr($e.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[$e.SESSION_START]:[{type:"command",command:Sr($e.SESSION_START),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=Kp(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();lv(oo(".cursor"),{recursive:!0}),UC(r,JSON.stringify(e,null,2)+`
32
- `,"utf-8")}validateHooks(e){let r=[],n=this.loadNativeHookConfig();if(!n)r.push({check:"Native hook config",status:"fail",message:"No readable native Cursor hook config found in .cursor/hooks.json or ~/.cursor/hooks.json",fix:"context-mode upgrade"});else{let o=n.config.hooks??{};r.push({check:"Native hook config",status:"pass",message:`Loaded ${n.path}`});for(let s of iv){let i=o[s],a=Array.isArray(i)&&i.some(c=>Oa(c,s));r.push({check:s,status:a?"pass":"fail",message:a?`${s} hook configured`:`${s} hook not configured in ${n.path}`,fix:a?void 0:"context-mode upgrade"})}for(let s of av){let i=o[s],a=Array.isArray(i)&&i.some(c=>Oa(c,s));r.push({check:s,status:a?"pass":"warn",message:a?`${s} hook configured`:`${s} hook missing \u2014 session event capture will be reduced`})}}return fv(mv)&&r.push({check:"Enterprise hook config",status:"warn",message:"Enterprise Cursor hook config detected at /Library/Application Support/Cursor/hooks.json (read-only informational layer)"}),this.hasClaudeCompatibilityHooks()&&r.push({check:"Claude compatibility",status:"warn",message:"Claude-compatible hooks detected; native Cursor hooks are the supported configuration"}),r}checkPluginRegistration(){let e=[oo(".cursor","mcp.json"),un(Ca(),".cursor","mcp.json")];for(let r of e)try{let n=Kp(r,"utf-8"),o=JSON.parse(n),s=o.mcpServers??o.servers;if(!s)continue;if(Object.entries(s).some(([a,c])=>a.includes("context-mode")?!0:!c||typeof c!="object"?!1:c.command==="context-mode"))return{check:"MCP registration",status:"pass",message:`context-mode found in ${r}`}}catch{continue}return{check:"MCP registration",status:"warn",message:"Could not find context-mode in .cursor/mcp.json or ~/.cursor/mcp.json"}}getInstalledVersion(){try{return FC("cursor --version",{encoding:"utf-8",stdio:["ignore","pipe","ignore"]}).trim().split(/\r?\n/)[0]||"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=this.readSettings()??{version:1,hooks:{}},n=r.hooks??{},o=[];return this.upsertHookEntry(n,$e.PRE_TOOL_USE,{type:"command",command:Sr($e.PRE_TOOL_USE),matcher:Vp,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,$e.POST_TOOL_USE,{type:"command",command:Sr($e.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,$e.SESSION_START,{type:"command",command:Sr($e.SESSION_START),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}backupSettings(){let e=this.getSettingsPath();try{dv(e,pv.R_OK);let r=e+".bak";return HC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=un(e,"hooks","cursor");for(let o of Object.values(Bp)){let s=oo(n,o);try{dv(s,pv.R_OK),qC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:"",projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){return null}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),un(Ca(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(mv),e}getProjectDir(e){return e.cwd||e.workspace_roots?.[0]||process.env.CURSOR_CWD||process.cwd()}extractSessionId(e){return e.conversation_id?e.conversation_id:e.session_id?e.session_id:process.env.CURSOR_SESSION_ID?process.env.CURSOR_SESSION_ID:process.env.CURSOR_TRACE_ID?process.env.CURSOR_TRACE_ID:`pid-${process.ppid}`}loadNativeHookConfig(){for(let e of this.getCandidateHookConfigPaths())try{let r=Kp(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[oo(".claude","settings.json"),oo(".claude","settings.local.json"),un(Ca(),".claude","settings.json")].some(r=>fv(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>Oa(c,r));a>=0?(i[a]=n,o.push(`Updated existing ${r} hook entry`)):(i.push(n),o.push(`Added ${r} hook entry`)),e[r]=i}}});var vv={};Ve(vv,{AntigravityAdapter:()=>Yp});import{createHash as _v}from"node:crypto";import{readFileSync as so,writeFileSync as Gp,mkdirSync as yv,copyFileSync as BC,accessSync as VC,constants as KC}from"node:fs";import{resolve as io,join as Wp,dirname as xv}from"node:path";import{fileURLToPath as JC}from"node:url";import{homedir as Ia}from"node:os";var Yp,Sv=we(()=>{"use strict";Yp=class{name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return io(Ia(),".gemini","antigravity","mcp_config.json")}getSessionDir(){let e=Wp(Ia(),".gemini","context-mode","sessions");return yv(e,{recursive:!0}),e}getSessionDBPath(e){let r=_v("sha256").update(e).digest("hex").slice(0,16);return Wp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=_v("sha256").update(e).digest("hex").slice(0,16);return Wp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=so(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();yv(xv(r),{recursive:!0}),Gp(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Antigravity does not support hooks. Only MCP integration is available."}]}checkPluginRegistration(){try{let e=so(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.gemini/antigravity/mcp_config.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.gemini/antigravity/mcp_config.json"}}}getInstalledVersion(){try{let e=io(Ia(),".gemini","extensions","context-mode","package.json");return JSON.parse(so(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{VC(e,KC.R_OK);let r=e+".bak";return BC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:io(Ia(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=io(e,n.projectRelativePath),s=io(r,"configs","antigravity",n.fileName);try{let i=so(s,"utf-8");try{let a=so(o,"utf-8");return a.includes("context-mode")?null:(Gp(o,a.trimEnd()+`
33
-
34
- `+i,"utf-8"),o)}catch{return Gp(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=io(xv(JC(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return so(e,"utf-8")}catch{return`# context-mode
35
-
36
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});function bs(t,e){let r=kv[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function ws(t,e){let r=kv[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var be,kv,nZ,oZ,bv=we(()=>{"use strict";be={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},kv={[be.PRE_TOOL_USE]:"pretooluse.mjs",[be.POST_TOOL_USE]:"posttooluse.mjs"},nZ=[be.PRE_TOOL_USE],oZ=[be.POST_TOOL_USE]});var Tv={};Ve(Tv,{KiroAdapter:()=>ef});import{createHash as wv}from"node:crypto";import{readFileSync as kr,writeFileSync as za,mkdirSync as Xp,copyFileSync as GC,accessSync as WC,constants as YC}from"node:fs";import{resolve as Wt,join as Qp,dirname as Ev}from"node:path";import{fileURLToPath as XC}from"node:url";import{homedir as ao}from"node:os";var ef,$v=we(()=>{"use strict";bv();ef=class{name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e,n=r.tool_response;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:typeof n=="string"?n:JSON.stringify(n??""),sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePreCompactInput(e){throw new Error("Kiro does not support PreCompact hooks")}parseSessionStartInput(e){throw new Error("Kiro does not support SessionStart hooks (yet)")}formatPreToolUseResponse(e){switch(e.decision){case"deny":return{exitCode:2,stderr:e.reason??"Blocked by context-mode"};case"context":return{exitCode:0,stdout:e.additionalContext??""};default:return}}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Wt(ao(),".kiro","settings","mcp.json")}getSessionDir(){let e=Qp(ao(),".kiro","context-mode","sessions");return Xp(e,{recursive:!0}),e}getSessionDBPath(e){let r=wv("sha256").update(e).digest("hex").slice(0,16);return Qp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=wv("sha256").update(e).digest("hex").slice(0,16);return Qp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[be.PRE_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:ws(be.PRE_TOOL_USE,e)}]}],[be.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:ws(be.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=kr(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Xp(Ev(r),{recursive:!0}),za(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=Wt(ao(),".kiro","agents","default.json");try{let s=JSON.parse(kr(n,"utf-8")).hooks??{};for(let i of[be.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>bs(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"fail",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured`,...c?{}:{fix:"Run: context-mode upgrade"}})}for(let i of[be.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>bs(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"warn",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured (optional)`})}}catch{r.push({check:"Hook configuration",status:"warn",message:"Could not read ~/.kiro/agents/default.json",fix:"Run: context-mode upgrade"})}return r}checkPluginRegistration(){try{let e=kr(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.kiro/settings/mcp.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.kiro/settings/mcp.json"}}}getInstalledVersion(){try{let e=Wt(ao(),".kiro","extensions","context-mode","package.json");return JSON.parse(kr(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=Wt(ao(),".kiro","agents"),o=Wt(n,"default.json");try{Xp(n,{recursive:!0});let s={};try{s=JSON.parse(kr(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[be.PRE_TOOL_USE]??[];a.some(u=>bs(u,be.PRE_TOOL_USE))||(a.push({matcher:"*",command:ws(be.PRE_TOOL_USE,e)}),i[be.PRE_TOOL_USE]=a,r.push(`Added ${be.PRE_TOOL_USE} hook to ${o}`));let c=i[be.POST_TOOL_USE]??[];c.some(u=>bs(u,be.POST_TOOL_USE))||(c.push({matcher:"*",command:ws(be.POST_TOOL_USE,e)}),i[be.POST_TOOL_USE]=c,r.push(`Added ${be.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,za(o,JSON.stringify(s,null,2),"utf-8")}catch(s){r.push(`Failed to configure hooks: ${s.message}`)}return r}backupSettings(){let e=this.getSettingsPath();try{WC(e,YC.R_OK);let r=e+".bak";return GC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"KIRO.md",globalPath:Wt(ao(),".kiro","KIRO.md"),projectRelativePath:"KIRO.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Wt(e,n.projectRelativePath),s=Wt(r,"configs","kiro",n.fileName);try{let i=kr(s,"utf-8");try{let a=kr(o,"utf-8");return a.includes("context-mode")?null:(za(o,a.trimEnd()+`
37
-
38
- `+i,"utf-8"),o)}catch{return za(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Wt(Ev(XC(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return kr(e,"utf-8")}catch{return`# context-mode
39
-
40
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});var Cv={};Ve(Cv,{ZedAdapter:()=>of});import{createHash as Pv}from"node:crypto";import{readFileSync as Es,writeFileSync as tf,mkdirSync as Rv,copyFileSync as QC,accessSync as eI,constants as tI}from"node:fs";import{resolve as Ts,join as rf,dirname as Ov}from"node:path";import{fileURLToPath as rI}from"node:url";import{homedir as nf}from"node:os";var of,Iv=we(()=>{"use strict";of=class{name="Zed";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Zed does not support hooks")}parsePostToolUseInput(e){throw new Error("Zed does not support hooks")}parsePreCompactInput(e){throw new Error("Zed does not support hooks")}parseSessionStartInput(e){throw new Error("Zed does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Ts(nf(),".config","zed","settings.json")}getSessionDir(){let e=rf(nf(),".config","zed","context-mode","sessions");return Rv(e,{recursive:!0}),e}getSessionDBPath(e){let r=Pv("sha256").update(e).digest("hex").slice(0,16);return rf(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Pv("sha256").update(e).digest("hex").slice(0,16);return rf(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=Es(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Rv(Ov(r),{recursive:!0}),tf(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Zed does not support hooks. Only MCP integration is available."}]}checkPluginRegistration(){try{let e=Es(this.getSettingsPath(),"utf-8"),n=JSON.parse(e).context_servers!==void 0,o=e.includes("context-mode");return n&&o?{check:"MCP registration",status:"pass",message:"context-mode found in context_servers config"}:n?{check:"MCP registration",status:"fail",message:"context_servers section exists but context-mode not found",fix:"Add context-mode to context_servers in ~/.config/zed/settings.json"}:{check:"MCP registration",status:"fail",message:"No context_servers section in settings.json",fix:"Add context_servers.context-mode to ~/.config/zed/settings.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.config/zed/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{eI(e,tI.R_OK);let r=e+".bak";return QC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:Ts(nf(),".config","zed","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Ts(e,n.projectRelativePath),s=Ts(r,"configs","zed",n.fileName);try{let i=Es(s,"utf-8");try{let a=Es(o,"utf-8");return a.includes("context-mode")?null:(tf(o,a.trimEnd()+`
41
-
42
- `+i,"utf-8"),o)}catch{return tf(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Ts(Ov(rI(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return Es(e,"utf-8")}catch{return`# context-mode
43
-
44
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var Nv={};Ve(Nv,{detectPlatform:()=>zv,getAdapter:()=>oI});import{existsSync as Yt}from"node:fs";import{resolve as Xt}from"node:path";import{homedir as nI}from"node:os";function zv(t){if(t?.name){let n=Ox[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","opencode","codex","vscode-copilot","cursor","antigravity","kiro","pi","zed"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};if(process.env.CLAUDE_PROJECT_DIR||process.env.CLAUDE_SESSION_ID)return{platform:"claude-code",confidence:"high",reason:"CLAUDE_PROJECT_DIR or CLAUDE_SESSION_ID env var set"};if(process.env.GEMINI_PROJECT_DIR||process.env.GEMINI_CLI)return{platform:"gemini-cli",confidence:"high",reason:"GEMINI_PROJECT_DIR or GEMINI_CLI env var set"};if(process.env.OPENCLAW_HOME||process.env.OPENCLAW_CLI)return{platform:"openclaw",confidence:"high",reason:"OPENCLAW_HOME or OPENCLAW_CLI env var set"};if(process.env.OPENCODE||process.env.OPENCODE_PID)return{platform:"opencode",confidence:"high",reason:"OPENCODE or OPENCODE_PID env var set"};if(process.env.CODEX_CI||process.env.CODEX_THREAD_ID)return{platform:"codex",confidence:"high",reason:"CODEX_CI or CODEX_THREAD_ID env var set"};if(process.env.CURSOR_TRACE_ID||process.env.CURSOR_CLI)return{platform:"cursor",confidence:"high",reason:"CURSOR_TRACE_ID or CURSOR_CLI env var set"};if(process.env.VSCODE_PID||process.env.VSCODE_CWD)return{platform:"vscode-copilot",confidence:"high",reason:"VSCODE_PID or VSCODE_CWD env var set"};let r=nI();return Yt(Xt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Yt(Xt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Yt(Xt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Yt(Xt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Yt(Xt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Yt(Xt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Yt(Xt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Yt(Xt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Yt(Xt(r,".config","zed"))?{platform:"zed",confidence:"medium",reason:"~/.config/zed/ directory exists"}:{platform:"claude-code",confidence:"low",reason:"No platform detected, defaulting to Claude Code"}}async function oI(t){switch(t??zv().platform){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Cp(),Op));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(qx(),Hx));return new r}case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(Kx(),Vx));return new r}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(Yx(),Wx));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(tv(),ev));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(sv(),ov));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(gv(),hv));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(Sv(),vv));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>($v(),Tv));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(Iv(),Cv));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Cp(),Op));return new r}}}var Av=we(()=>{"use strict";Cx()});var D={};Ve(D,{BRAND:()=>vS,DIRTY:()=>Er,EMPTY_PATH:()=>Xv,INVALID:()=>A,NEVER:()=>nk,OK:()=>je,ParseStatus:()=>Pe,Schema:()=>H,ZodAny:()=>rr,ZodArray:()=>qt,ZodBigInt:()=>$r,ZodBoolean:()=>Pr,ZodBranded:()=>lo,ZodCatch:()=>Dr,ZodDate:()=>Rr,ZodDefault:()=>Lr,ZodDiscriminatedUnion:()=>Cs,ZodEffects:()=>at,ZodEnum:()=>jr,ZodError:()=>Ke,ZodFirstPartyTypeKind:()=>b,ZodFunction:()=>zs,ZodIntersection:()=>zr,ZodIssueCode:()=>k,ZodLazy:()=>Nr,ZodLiteral:()=>Ar,ZodMap:()=>vn,ZodNaN:()=>kn,ZodNativeEnum:()=>Mr,ZodNever:()=>gt,ZodNull:()=>Cr,ZodNullable:()=>Ot,ZodNumber:()=>Tr,ZodObject:()=>Ge,ZodOptional:()=>Je,ZodParsedType:()=>$,ZodPipeline:()=>po,ZodPromise:()=>nr,ZodReadonly:()=>Zr,ZodRecord:()=>Is,ZodSchema:()=>H,ZodSet:()=>Sn,ZodString:()=>tr,ZodSymbol:()=>yn,ZodTransformer:()=>at,ZodTuple:()=>Rt,ZodType:()=>H,ZodUndefined:()=>Or,ZodUnion:()=>Ir,ZodUnknown:()=>Ht,ZodVoid:()=>xn,addIssueToContext:()=>E,any:()=>RS,array:()=>zS,bigint:()=>wS,boolean:()=>wf,coerce:()=>rk,custom:()=>Sf,date:()=>ES,datetimeRegex:()=>xf,defaultErrorMap:()=>Zt,discriminatedUnion:()=>jS,effect:()=>JS,enum:()=>BS,function:()=>HS,getErrorMap:()=>hn,getParsedType:()=>Pt,instanceof:()=>kS,intersection:()=>MS,isAborted:()=>Rs,isAsync:()=>gn,isDirty:()=>Os,isValid:()=>er,late:()=>SS,lazy:()=>qS,literal:()=>FS,makeIssue:()=>uo,map:()=>ZS,nan:()=>bS,nativeEnum:()=>VS,never:()=>CS,null:()=>PS,nullable:()=>WS,number:()=>bf,object:()=>Fa,objectUtil:()=>Ua,oboolean:()=>tk,onumber:()=>ek,optional:()=>GS,ostring:()=>QS,pipeline:()=>XS,preprocess:()=>YS,promise:()=>KS,quotelessJson:()=>Gv,record:()=>DS,set:()=>US,setErrorMap:()=>Yv,strictObject:()=>NS,string:()=>kf,symbol:()=>TS,transformer:()=>JS,tuple:()=>LS,undefined:()=>$S,union:()=>AS,unknown:()=>OS,util:()=>K,void:()=>IS});var K;(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(K||(K={}));var Ua;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Ua||(Ua={}));var $=K.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Pt=t=>{switch(typeof t){case"undefined":return $.undefined;case"string":return $.string;case"number":return Number.isNaN(t)?$.nan:$.number;case"boolean":return $.boolean;case"function":return $.function;case"bigint":return $.bigint;case"symbol":return $.symbol;case"object":return Array.isArray(t)?$.array:t===null?$.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?$.promise:typeof Map<"u"&&t instanceof Map?$.map:typeof Set<"u"&&t instanceof Set?$.set:typeof Date<"u"&&t instanceof Date?$.date:$.object;default:return $.unknown}};var k=K.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Gv=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Ke=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,K.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Ke.create=t=>new Ke(t);var Wv=(t,e)=>{let r;switch(t.code){case k.invalid_type:t.received===$.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case k.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,K.jsonStringifyReplacer)}`;break;case k.unrecognized_keys:r=`Unrecognized key(s) in object: ${K.joinValues(t.keys,", ")}`;break;case k.invalid_union:r="Invalid input";break;case k.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${K.joinValues(t.options)}`;break;case k.invalid_enum_value:r=`Invalid enum value. Expected ${K.joinValues(t.options)}, received '${t.received}'`;break;case k.invalid_arguments:r="Invalid function arguments";break;case k.invalid_return_type:r="Invalid function return type";break;case k.invalid_date:r="Invalid date";break;case k.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:K.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case k.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case k.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case k.custom:r="Invalid input";break;case k.invalid_intersection_types:r="Intersection results could not be merged";break;case k.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case k.not_finite:r="Number must be finite";break;default:r=e.defaultError,K.assertNever(t)}return{message:r}},Zt=Wv;var mf=Zt;function Yv(t){mf=t}function hn(){return mf}var uo=t=>{let{data:e,path:r,errorMaps:n,issueData:o}=t,s=[...r,...o.path||[]],i={...o,path:s};if(o.message!==void 0)return{...o,path:s,message:o.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(i,{data:e,defaultError:a}).message;return{...o,path:s,message:a}},Xv=[];function E(t,e){let r=hn(),n=uo({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Zt?void 0:Zt].filter(o=>!!o)});t.common.issues.push(n)}var Pe=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return A;o.status==="dirty"&&e.dirty(),n.push(o.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let o of r){let s=await o.key,i=await o.value;n.push({key:s,value:i})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:i}=o;if(s.status==="aborted"||i.status==="aborted")return A;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||o.alwaysSet)&&(n[s.value]=i.value)}return{status:e.value,value:n}}},A=Object.freeze({status:"aborted"}),Er=t=>({status:"dirty",value:t}),je=t=>({status:"valid",value:t}),Rs=t=>t.status==="aborted",Os=t=>t.status==="dirty",er=t=>t.status==="valid",gn=t=>typeof Promise<"u"&&t instanceof Promise;var O;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(O||(O={}));var it=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},hf=(t,e)=>{if(er(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Ke(t.common.issues);return this._error=r,this._error}}};function Z(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message:c}=t;return i.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:o}}var H=class{get description(){return this._def.description}_getType(e){return Pt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Pt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Pe,ctx:{common:e.parent.common,data:e.data,parsedType:Pt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(gn(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return hf(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return er(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>er(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(gn(o)?o:Promise.resolve(o));return hf(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:k.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new at({schema:this,typeName:b.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return Je.create(this,this._def)}nullable(){return Ot.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return qt.create(this)}promise(){return nr.create(this,this._def)}or(e){return Ir.create([this,e],this._def)}and(e){return zr.create(this,e,this._def)}transform(e){return new at({...Z(this._def),schema:this,typeName:b.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Lr({...Z(this._def),innerType:this,defaultValue:r,typeName:b.ZodDefault})}brand(){return new lo({typeName:b.ZodBranded,type:this,...Z(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Dr({...Z(this._def),innerType:this,catchValue:r,typeName:b.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return po.create(this,e)}readonly(){return Zr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Qv=/^c[^\s-]{8,}$/i,eS=/^[0-9a-z]+$/,tS=/^[0-9A-HJKMNP-TV-Z]{26}$/i,rS=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,nS=/^[a-z0-9_-]{21}$/i,oS=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,sS=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,iS=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,aS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Ha,cS=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,uS=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,lS=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,dS=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,pS=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,fS=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,_f="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",mS=new RegExp(`^${_f}$`);function yf(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function hS(t){return new RegExp(`^${yf(t)}$`)}function xf(t){let e=`${_f}T${yf(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function gS(t,e){return!!((e==="v4"||!e)&&cS.test(t)||(e==="v6"||!e)&&lS.test(t))}function _S(t,e){if(!oS.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),o=JSON.parse(atob(n));return!(typeof o!="object"||o===null||"typ"in o&&o?.typ!=="JWT"||!o.alg||e&&o.alg!==e)}catch{return!1}}function yS(t,e){return!!((e==="v4"||!e)&&uS.test(t)||(e==="v6"||!e)&&dS.test(t))}var tr=class t extends H{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==$.string){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:$.string,received:s.parsedType}),A}let n=new Pe,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),E(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),E(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?E(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&E(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")iS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"email",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Ha||(Ha=new RegExp(aS,"u")),Ha.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"emoji",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")rS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"uuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")nS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"nanoid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")Qv.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")eS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cuid2",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")tS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"ulid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),E(o,{validation:"url",code:k.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"regex",code:k.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?xf(s).test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?mS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?hS(s).test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?sS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"duration",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?gS(e.data,s.version)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"ip",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?_S(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"jwt",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?yS(e.data,s.version)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cidr",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?pS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?fS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64url",code:k.invalid_string,message:s.message}),n.dirty()):K.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:k.invalid_string,...O.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...O.errToObj(e)})}url(e){return this._addCheck({kind:"url",...O.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...O.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...O.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...O.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...O.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...O.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...O.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...O.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...O.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...O.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...O.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...O.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...O.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...O.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...O.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...O.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...O.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...O.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...O.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...O.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...O.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...O.errToObj(r)})}nonempty(e){return this.min(1,O.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};tr.create=t=>new tr({checks:[],typeName:b.ZodString,coerce:t?.coerce??!1,...Z(t)});function xS(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}var Tr=class t extends H{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==$.number){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:$.number,received:s.parsedType}),A}let n,o=new Pe;for(let s of this._def.checks)s.kind==="int"?K.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),E(n,{code:k.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?xS(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),E(n,{code:k.not_finite,message:s.message}),o.dirty()):K.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,O.toString(r))}gt(e,r){return this.setLimit("min",e,!1,O.toString(r))}lte(e,r){return this.setLimit("max",e,!0,O.toString(r))}lt(e,r){return this.setLimit("max",e,!1,O.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:O.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:O.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:O.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:O.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:O.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:O.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:O.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:O.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:O.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:O.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&K.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};Tr.create=t=>new Tr({checks:[],typeName:b.ZodNumber,coerce:t?.coerce||!1,...Z(t)});var $r=class t extends H{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==$.bigint)return this._getInvalidInput(e);let n,o=new Pe;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),E(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):K.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return E(r,{code:k.invalid_type,expected:$.bigint,received:r.parsedType}),A}gte(e,r){return this.setLimit("min",e,!0,O.toString(r))}gt(e,r){return this.setLimit("min",e,!1,O.toString(r))}lte(e,r){return this.setLimit("max",e,!0,O.toString(r))}lt(e,r){return this.setLimit("max",e,!1,O.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:O.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:O.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:O.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:O.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:O.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:O.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};$r.create=t=>new $r({checks:[],typeName:b.ZodBigInt,coerce:t?.coerce??!1,...Z(t)});var Pr=class extends H{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==$.boolean){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.boolean,received:n.parsedType}),A}return je(e.data)}};Pr.create=t=>new Pr({typeName:b.ZodBoolean,coerce:t?.coerce||!1,...Z(t)});var Rr=class t extends H{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==$.date){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:$.date,received:s.parsedType}),A}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_date}),A}let n=new Pe,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),E(o,{code:k.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),E(o,{code:k.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):K.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:O.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:O.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};Rr.create=t=>new Rr({checks:[],coerce:t?.coerce||!1,typeName:b.ZodDate,...Z(t)});var yn=class extends H{_parse(e){if(this._getType(e)!==$.symbol){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.symbol,received:n.parsedType}),A}return je(e.data)}};yn.create=t=>new yn({typeName:b.ZodSymbol,...Z(t)});var Or=class extends H{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.undefined,received:n.parsedType}),A}return je(e.data)}};Or.create=t=>new Or({typeName:b.ZodUndefined,...Z(t)});var Cr=class extends H{_parse(e){if(this._getType(e)!==$.null){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.null,received:n.parsedType}),A}return je(e.data)}};Cr.create=t=>new Cr({typeName:b.ZodNull,...Z(t)});var rr=class extends H{constructor(){super(...arguments),this._any=!0}_parse(e){return je(e.data)}};rr.create=t=>new rr({typeName:b.ZodAny,...Z(t)});var Ht=class extends H{constructor(){super(...arguments),this._unknown=!0}_parse(e){return je(e.data)}};Ht.create=t=>new Ht({typeName:b.ZodUnknown,...Z(t)});var gt=class extends H{_parse(e){let r=this._getOrReturnCtx(e);return E(r,{code:k.invalid_type,expected:$.never,received:r.parsedType}),A}};gt.create=t=>new gt({typeName:b.ZodNever,...Z(t)});var xn=class extends H{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.void,received:n.parsedType}),A}return je(e.data)}};xn.create=t=>new xn({typeName:b.ZodVoid,...Z(t)});var qt=class t extends H{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==$.array)return E(r,{code:k.invalid_type,expected:$.array,received:r.parsedType}),A;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(E(r,{code:i?k.too_big:k.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(E(r,{code:k.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(E(r,{code:k.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((i,a)=>o.type._parseAsync(new it(r,i,r.path,a)))).then(i=>Pe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new it(r,i,r.path,a)));return Pe.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:O.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:O.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:O.toString(r)}})}nonempty(e){return this.min(1,e)}};qt.create=(t,e)=>new qt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:b.ZodArray,...Z(e)});function _n(t){if(t instanceof Ge){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Je.create(_n(n))}return new Ge({...t._def,shape:()=>e})}else return t instanceof qt?new qt({...t._def,type:_n(t.element)}):t instanceof Je?Je.create(_n(t.unwrap())):t instanceof Ot?Ot.create(_n(t.unwrap())):t instanceof Rt?Rt.create(t.items.map(e=>_n(e))):t}var Ge=class t extends H{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=K.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==$.object){let u=this._getOrReturnCtx(e);return E(u,{code:k.invalid_type,expected:$.object,received:u.parsedType}),A}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof gt&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new it(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof gt){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(E(o,{code:k.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new it(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,m=await l.value;u.push({key:d,value:m,alwaysSet:l.alwaysSet})}return u}).then(u=>Pe.mergeObjectSync(n,u)):Pe.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return O.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:O.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:b.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of K.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of K.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return _n(this)}partial(e){let r={};for(let n of K.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of K.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Je;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return vf(K.objectKeys(this.shape))}};Ge.create=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strip",catchall:gt.create(),typeName:b.ZodObject,...Z(e)});Ge.strictCreate=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strict",catchall:gt.create(),typeName:b.ZodObject,...Z(e)});Ge.lazycreate=(t,e)=>new Ge({shape:t,unknownKeys:"strip",catchall:gt.create(),typeName:b.ZodObject,...Z(e)});var Ir=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function o(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let i=s.map(a=>new Ke(a.ctx.common.issues));return E(r,{code:k.invalid_union,unionErrors:i}),A}if(r.common.async)return Promise.all(n.map(async s=>{let i={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:i}),ctx:i}})).then(o);{let s,i=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=i.map(c=>new Ke(c));return E(r,{code:k.invalid_union,unionErrors:a}),A}}get options(){return this._def.options}};Ir.create=(t,e)=>new Ir({options:t,typeName:b.ZodUnion,...Z(e)});var Ut=t=>t instanceof Nr?Ut(t.schema):t instanceof at?Ut(t.innerType()):t instanceof Ar?[t.value]:t instanceof jr?t.options:t instanceof Mr?K.objectValues(t.enum):t instanceof Lr?Ut(t._def.innerType):t instanceof Or?[void 0]:t instanceof Cr?[null]:t instanceof Je?[void 0,...Ut(t.unwrap())]:t instanceof Ot?[null,...Ut(t.unwrap())]:t instanceof lo||t instanceof Zr?Ut(t.unwrap()):t instanceof Dr?Ut(t._def.innerType):[],Cs=class t extends H{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.object)return E(r,{code:k.invalid_type,expected:$.object,received:r.parsedType}),A;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(E(r,{code:k.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),A)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let o=new Map;for(let s of r){let i=Ut(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:b.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...Z(n)})}};function qa(t,e){let r=Pt(t),n=Pt(e);if(t===e)return{valid:!0,data:t};if(r===$.object&&n===$.object){let o=K.objectKeys(e),s=K.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=qa(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===$.array&&n===$.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let i=t[s],a=e[s],c=qa(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===$.date&&n===$.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var zr=class extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Rs(s)||Rs(i))return A;let a=qa(s.value,i.value);return a.valid?((Os(s)||Os(i))&&r.dirty(),{status:r.value,value:a.data}):(E(n,{code:k.invalid_intersection_types}),A)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};zr.create=(t,e,r)=>new zr({left:t,right:e,typeName:b.ZodIntersection,...Z(r)});var Rt=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.array)return E(n,{code:k.invalid_type,expected:$.array,received:n.parsedType}),A;if(n.data.length<this._def.items.length)return E(n,{code:k.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),A;!this._def.rest&&n.data.length>this._def.items.length&&(E(n,{code:k.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new it(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Pe.mergeArray(r,i)):Pe.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Rt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Rt({items:t,typeName:b.ZodTuple,rest:null,...Z(e)})};var Is=class t extends H{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.object)return E(n,{code:k.invalid_type,expected:$.object,received:n.parsedType}),A;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new it(n,a,n.path,a)),value:i._parse(new it(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Pe.mergeObjectAsync(r,o):Pe.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof H?new t({keyType:e,valueType:r,typeName:b.ZodRecord,...Z(n)}):new t({keyType:tr.create(),valueType:e,typeName:b.ZodRecord,...Z(r)})}},vn=class extends H{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.map)return E(n,{code:k.invalid_type,expected:$.map,received:n.parsedType}),A;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new it(n,a,n.path,[u,"key"])),value:s._parse(new it(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return A;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of i){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return A;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};vn.create=(t,e,r)=>new vn({valueType:e,keyType:t,typeName:b.ZodMap,...Z(r)});var Sn=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.set)return E(n,{code:k.invalid_type,expected:$.set,received:n.parsedType}),A;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(E(n,{code:k.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(E(n,{code:k.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function i(c){let u=new Set;for(let l of c){if(l.status==="aborted")return A;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new it(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:O.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:O.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Sn.create=(t,e)=>new Sn({valueType:t,minSize:null,maxSize:null,typeName:b.ZodSet,...Z(e)});var zs=class t extends H{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.function)return E(r,{code:k.invalid_type,expected:$.function,received:r.parsedType}),A;function n(a,c){return uo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,hn(),Zt].filter(u=>!!u),issueData:{code:k.invalid_arguments,argumentsError:c}})}function o(a,c){return uo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,hn(),Zt].filter(u=>!!u),issueData:{code:k.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof nr){let a=this;return je(async function(...c){let u=new Ke([]),l=await a._def.args.parseAsync(c,s).catch(f=>{throw u.addIssue(n(c,f)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(f=>{throw u.addIssue(o(d,f)),u})})}else{let a=this;return je(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Ke([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Ke([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Rt.create(e).rest(Ht.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Rt.create([]).rest(Ht.create()),returns:r||Ht.create(),typeName:b.ZodFunction,...Z(n)})}},Nr=class extends H{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Nr.create=(t,e)=>new Nr({getter:t,typeName:b.ZodLazy,...Z(e)});var Ar=class extends H{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return E(r,{received:r.data,code:k.invalid_literal,expected:this._def.value}),A}return{status:"valid",value:e.data}}get value(){return this._def.value}};Ar.create=(t,e)=>new Ar({value:t,typeName:b.ZodLiteral,...Z(e)});function vf(t,e){return new jr({values:t,typeName:b.ZodEnum,...Z(e)})}var jr=class t extends H{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return E(r,{expected:K.joinValues(n),received:r.parsedType,code:k.invalid_type}),A}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return E(r,{received:r.data,code:k.invalid_enum_value,options:n}),A}return je(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};jr.create=vf;var Mr=class extends H{_parse(e){let r=K.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==$.string&&n.parsedType!==$.number){let o=K.objectValues(r);return E(n,{expected:K.joinValues(o),received:n.parsedType,code:k.invalid_type}),A}if(this._cache||(this._cache=new Set(K.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=K.objectValues(r);return E(n,{received:n.data,code:k.invalid_enum_value,options:o}),A}return je(e.data)}get enum(){return this._def.values}};Mr.create=(t,e)=>new Mr({values:t,typeName:b.ZodNativeEnum,...Z(e)});var nr=class extends H{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.promise&&r.common.async===!1)return E(r,{code:k.invalid_type,expected:$.promise,received:r.parsedType}),A;let n=r.parsedType===$.promise?r.data:Promise.resolve(r.data);return je(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};nr.create=(t,e)=>new nr({type:t,typeName:b.ZodPromise,...Z(e)});var at=class extends H{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===b.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{E(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return A;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?A:c.status==="dirty"?Er(c.value):r.value==="dirty"?Er(c.value):c});{if(r.value==="aborted")return A;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?A:a.status==="dirty"?Er(a.value):r.value==="dirty"?Er(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?A:(a.status==="dirty"&&r.dirty(),i(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?A:(a.status==="dirty"&&r.dirty(),i(a.value).then(()=>({status:r.value,value:a.value}))))}if(o.type==="transform")if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!er(i))return A;let a=o.transform(i.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>er(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):A);K.assertNever(o)}};at.create=(t,e,r)=>new at({schema:t,typeName:b.ZodEffects,effect:e,...Z(r)});at.createWithPreprocess=(t,e,r)=>new at({schema:e,effect:{type:"preprocess",transform:t},typeName:b.ZodEffects,...Z(r)});var Je=class extends H{_parse(e){return this._getType(e)===$.undefined?je(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Je.create=(t,e)=>new Je({innerType:t,typeName:b.ZodOptional,...Z(e)});var Ot=class extends H{_parse(e){return this._getType(e)===$.null?je(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ot.create=(t,e)=>new Ot({innerType:t,typeName:b.ZodNullable,...Z(e)});var Lr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===$.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Lr.create=(t,e)=>new Lr({innerType:t,typeName:b.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Z(e)});var Dr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return gn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Ke(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Ke(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Dr.create=(t,e)=>new Dr({innerType:t,typeName:b.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Z(e)});var kn=class extends H{_parse(e){if(this._getType(e)!==$.nan){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.nan,received:n.parsedType}),A}return{status:"valid",value:e.data}}};kn.create=t=>new kn({typeName:b.ZodNaN,...Z(t)});var vS=Symbol("zod_brand"),lo=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},po=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?A:s.status==="dirty"?(r.dirty(),Er(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?A:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:b.ZodPipeline})}},Zr=class extends H{_parse(e){let r=this._def.innerType._parse(e),n=o=>(er(o)&&(o.value=Object.freeze(o.value)),o);return gn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Zr.create=(t,e)=>new Zr({innerType:t,typeName:b.ZodReadonly,...Z(e)});function gf(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Sf(t,e={},r){return t?rr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=gf(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=gf(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):rr.create()}var SS={object:Ge.lazycreate},b;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(b||(b={}));var kS=(t,e={message:`Input not instance of ${t.name}`})=>Sf(r=>r instanceof t,e),kf=tr.create,bf=Tr.create,bS=kn.create,wS=$r.create,wf=Pr.create,ES=Rr.create,TS=yn.create,$S=Or.create,PS=Cr.create,RS=rr.create,OS=Ht.create,CS=gt.create,IS=xn.create,zS=qt.create,Fa=Ge.create,NS=Ge.strictCreate,AS=Ir.create,jS=Cs.create,MS=zr.create,LS=Rt.create,DS=Is.create,ZS=vn.create,US=Sn.create,HS=zs.create,qS=Nr.create,FS=Ar.create,BS=jr.create,VS=Mr.create,KS=nr.create,JS=at.create,GS=Je.create,WS=Ot.create,YS=at.createWithPreprocess,XS=po.create,QS=()=>kf().optional(),ek=()=>bf().optional(),tk=()=>wf().optional(),rk={string:(t=>tr.create({...t,coerce:!0})),number:(t=>Tr.create({...t,coerce:!0})),boolean:(t=>Pr.create({...t,coerce:!0})),bigint:(t=>$r.create({...t,coerce:!0})),date:(t=>Rr.create({...t,coerce:!0}))};var nk=A;var ok=Object.freeze({status:"aborted"});function x(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var Ft=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Ns={};function nt(t){return t&&Object.assign(Ns,t),Ns}var J={};Ve(J,{BIGINT_FORMAT_RANGES:()=>Tf,Class:()=>Va,NUMBER_FORMAT_RANGES:()=>Qa,aborted:()=>Hr,allowsEval:()=>Wa,assert:()=>uk,assertEqual:()=>sk,assertIs:()=>ak,assertNever:()=>ck,assertNotEqual:()=>ik,assignProp:()=>Ga,cached:()=>ho,captureStackTrace:()=>js,cleanEnum:()=>kk,cleanRegex:()=>_o,clone:()=>ot,createTransparentProxy:()=>hk,defineLazy:()=>ue,esc:()=>Ur,escapeRegex:()=>or,extend:()=>yk,finalizeIssue:()=>_t,floatSafeRemainder:()=>Ja,getElementAtPath:()=>lk,getEnumValues:()=>mo,getLengthableOrigin:()=>yo,getParsedType:()=>mk,getSizableOrigin:()=>$f,isObject:()=>bn,isPlainObject:()=>wn,issue:()=>ec,joinValues:()=>As,jsonStringifyReplacer:()=>Ka,merge:()=>xk,normalizeParams:()=>j,nullish:()=>go,numKeys:()=>fk,omit:()=>_k,optionalKeys:()=>Xa,partial:()=>vk,pick:()=>gk,prefixIssues:()=>Ct,primitiveTypes:()=>Ef,promiseAllObject:()=>dk,propertyKeyTypes:()=>Ya,randomString:()=>pk,required:()=>Sk,stringifyPrimitive:()=>Ms,unwrapMessage:()=>fo});function sk(t){return t}function ik(t){return t}function ak(t){}function ck(t){throw new Error}function uk(t){}function mo(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,o])=>e.indexOf(+n)===-1).map(([n,o])=>o)}function As(t,e="|"){return t.map(r=>Ms(r)).join(e)}function Ka(t,e){return typeof e=="bigint"?e.toString():e}function ho(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function go(t){return t==null}function _o(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Ja(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function ue(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function Ga(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function lk(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function dk(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let o={};for(let s=0;s<e.length;s++)o[e[s]]=n[s];return o})}function pk(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Ur(t){return JSON.stringify(t)}var js=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function bn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Wa=ho(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function wn(t){if(bn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(bn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function fk(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var mk=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},Ya=new Set(["string","number","symbol"]),Ef=new Set(["string","number","bigint","boolean","symbol","undefined"]);function or(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ot(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function j(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function hk(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,s){return e??(e=t()),Reflect.set(e,n,o,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function Ms(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Xa(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Qa={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Tf={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function gk(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return ot(t,{...t._zod.def,shape:r,checks:[]})}function _k(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete r[o]}return ot(t,{...t._zod.def,shape:r,checks:[]})}function yk(t,e){if(!wn(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return Ga(this,"shape",n),n},checks:[]};return ot(t,r)}function xk(t,e){return ot(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Ga(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function vk(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return ot(e,{...e._zod.def,shape:o,checks:[]})}function Sk(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)o[s]=new t({type:"nonoptional",innerType:n[s]});return ot(e,{...e._zod.def,shape:o,checks:[]})}function Hr(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Ct(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function fo(t){return typeof t=="string"?t:t?.message}function _t(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=fo(t.inst?._zod.def?.error?.(t))??fo(e?.error?.(t))??fo(r.customError?.(t))??fo(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function $f(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function yo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function ec(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function kk(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Va=class{constructor(...e){}};var Pf=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),Object.defineProperty(t,"message",{get(){return JSON.stringify(e,Ka,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Ls=x("$ZodError",Pf),xo=x("$ZodError",Pf,{Parent:Error});function tc(t,e=r=>r.message){let r={},n=[];for(let o of t.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(e(o))):n.push(e(o));return{formErrors:n,fieldErrors:r}}function rc(t,e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>o({issues:a}));else if(i.code==="invalid_key")o({issues:i.issues});else if(i.code==="invalid_element")o({issues:i.issues});else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(t),n}var nc=t=>(e,r,n,o)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new Ft;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>_t(c,s,nt())));throw js(a,o?.callee),a}return i.value},oc=nc(xo),sc=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>_t(c,s,nt())));throw js(a,o?.callee),a}return i.value},ic=sc(xo),ac=t=>(e,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new Ft;return s.issues.length?{success:!1,error:new(t??Ls)(s.issues.map(i=>_t(i,o,nt())))}:{success:!0,data:s.value}},qr=ac(xo),cc=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>_t(i,o,nt())))}:{success:!0,data:s.value}},Fr=cc(xo);var Rf=/^[cC][^\s-]{8,}$/,Of=/^[0-9a-z]+$/,Cf=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,If=/^[0-9a-vA-V]{20}$/,zf=/^[A-Za-z0-9]{27}$/,Nf=/^[a-zA-Z0-9_-]{21}$/,Af=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var jf=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,uc=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/;var Mf=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var wk="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Lf(){return new RegExp(wk,"u")}var Df=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Zf=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,Uf=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Hf=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,qf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,lc=/^[A-Za-z0-9_-]*$/,Ff=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Bf=/^\+(?:[0-9]){6,14}[0-9]$/,Vf="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Kf=new RegExp(`^${Vf}$`);function Jf(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Gf(t){return new RegExp(`^${Jf(t)}$`)}function Wf(t){let e=Jf({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${Vf}T(?:${n})$`)}var Yf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Xf=/^\d+$/,Qf=/^-?\d+(?:\.\d+)?/i,em=/true|false/i,tm=/null/i;var rm=/^[^A-Z]*$/,nm=/^[^a-z]*$/;var Re=x("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),om={number:"number",bigint:"bigint",object:"date"},dc=x("$ZodCheckLessThan",(t,e)=>{Re.init(t,e);let r=om[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<s&&(e.inclusive?o.maximum=e.value:o.exclusiveMaximum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value<=e.value:n.value<e.value)||n.issues.push({origin:r,code:"too_big",maximum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),pc=x("$ZodCheckGreaterThan",(t,e)=>{Re.init(t,e);let r=om[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?o.minimum=e.value:o.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),sm=x("$ZodCheckMultipleOf",(t,e)=>{Re.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):Ja(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),im=x("$ZodCheckNumberFormat",(t,e)=>{Re.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Qa[e.format];t._zod.onattach.push(i=>{let a=i._zod.bag;a.format=e.format,a.minimum=o,a.maximum=s,r&&(a.pattern=Xf)}),t._zod.check=i=>{let a=i.value;if(r){if(!Number.isInteger(a)){i.issues.push({expected:n,format:e.format,code:"invalid_type",input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort});return}}a<o&&i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:t,continue:!e.abort}),a>s&&i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inst:t})}});var am=x("$ZodCheckMaxLength",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!go(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<o&&(n._zod.bag.maximum=e.maximum)}),t._zod.check=n=>{let o=n.value;if(o.length<=e.maximum)return;let i=yo(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),cm=x("$ZodCheckMinLength",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!go(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>o&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let o=n.value;if(o.length>=e.minimum)return;let i=yo(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),um=x("$ZodCheckLengthEquals",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!go(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=e.length,o.maximum=e.length,o.length=e.length}),t._zod.check=n=>{let o=n.value,s=o.length;if(s===e.length)return;let i=yo(o),a=s>e.length;n.issues.push({origin:i,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),vo=x("$ZodCheckStringFormat",(t,e)=>{var r,n;Re.init(t,e),t._zod.onattach.push(o=>{let s=o._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=o=>{e.pattern.lastIndex=0,!e.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:e.format,input:o.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),lm=x("$ZodCheckRegex",(t,e)=>{vo.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),dm=x("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=rm),vo.init(t,e)}),pm=x("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=nm),vo.init(t,e)}),fm=x("$ZodCheckIncludes",(t,e)=>{Re.init(t,e);let r=or(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(o=>{let s=o._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=o=>{o.value.includes(e.includes,e.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:o.value,inst:t,continue:!e.abort})}}),mm=x("$ZodCheckStartsWith",(t,e)=>{Re.init(t,e);let r=new RegExp(`^${or(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),hm=x("$ZodCheckEndsWith",(t,e)=>{Re.init(t,e);let r=new RegExp(`.*${or(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});var gm=x("$ZodCheckOverwrite",(t,e)=>{Re.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Zs=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
26
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var jv={};Ve(jv,{detectPlatform:()=>Av,getAdapter:()=>fI});import{existsSync as Dt}from"node:fs";import{resolve as Lt}from"node:path";import{homedir as pI}from"node:os";function Av(t){if(t?.name){let n=Sx[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","kilo","opencode","codex","vscode-copilot","cursor","antigravity","kiro","pi","zed"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};if(process.env.CLAUDE_PROJECT_DIR||process.env.CLAUDE_SESSION_ID)return{platform:"claude-code",confidence:"high",reason:"CLAUDE_PROJECT_DIR or CLAUDE_SESSION_ID env var set"};if(process.env.GEMINI_PROJECT_DIR||process.env.GEMINI_CLI)return{platform:"gemini-cli",confidence:"high",reason:"GEMINI_PROJECT_DIR or GEMINI_CLI env var set"};if(process.env.OPENCLAW_HOME||process.env.OPENCLAW_CLI)return{platform:"openclaw",confidence:"high",reason:"OPENCLAW_HOME or OPENCLAW_CLI env var set"};if(process.env.KILO||process.env.KILO_PID)return{platform:"kilo",confidence:"high",reason:"KILO or KILO_PID env var set"};if(process.env.OPENCODE||process.env.OPENCODE_PID)return{platform:"opencode",confidence:"high",reason:"OPENCODE or OPENCODE_PID env var set"};if(process.env.CODEX_CI||process.env.CODEX_THREAD_ID)return{platform:"codex",confidence:"high",reason:"CODEX_CI or CODEX_THREAD_ID env var set"};if(process.env.CURSOR_TRACE_ID||process.env.CURSOR_CLI)return{platform:"cursor",confidence:"high",reason:"CURSOR_TRACE_ID or CURSOR_CLI env var set"};if(process.env.VSCODE_PID||process.env.VSCODE_CWD)return{platform:"vscode-copilot",confidence:"high",reason:"VSCODE_PID or VSCODE_CWD env var set"};let r=pI();return Dt(Lt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Dt(Lt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Dt(Lt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Dt(Lt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Dt(Lt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Dt(Lt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Dt(Lt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Dt(Lt(r,".config","kilo"))?{platform:"kilo",confidence:"medium",reason:"~/.config/kilo/ directory exists"}:Dt(Lt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Dt(Lt(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 fI(t){let e=t??Av().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(yp(),_p));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(Lx(),Dx));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(Fx(),qx));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(Jx(),Kx));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(Qx(),Xx));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(ov(),nv));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(hv(),mv));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(vv(),xv));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>($v(),Tv));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(Nv(),zv));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(yp(),_p));return new r}}}var Mv=we(()=>{"use strict";bx()});var L={};Ve(L,{BRAND:()=>bk,DIRTY:()=>vr,EMPTY_PATH:()=>tk,INVALID:()=>A,NEVER:()=>iS,OK:()=>je,ParseStatus:()=>Re,Schema:()=>q,ZodAny:()=>Qt,ZodArray:()=>qt,ZodBigInt:()=>Sr,ZodBoolean:()=>br,ZodBranded:()=>so,ZodCatch:()=>Nr,ZodDate:()=>wr,ZodDefault:()=>zr,ZodDiscriminatedUnion:()=>Es,ZodEffects:()=>it,ZodEnum:()=>Cr,ZodError:()=>Ke,ZodFirstPartyTypeKind:()=>b,ZodFunction:()=>$s,ZodIntersection:()=>Pr,ZodIssueCode:()=>S,ZodLazy:()=>Rr,ZodLiteral:()=>Or,ZodMap:()=>gn,ZodNaN:()=>yn,ZodNativeEnum:()=>Ir,ZodNever:()=>ht,ZodNull:()=>Tr,ZodNullable:()=>Ot,ZodNumber:()=>kr,ZodObject:()=>We,ZodOptional:()=>Je,ZodParsedType:()=>$,ZodPipeline:()=>io,ZodPromise:()=>er,ZodReadonly:()=>Ar,ZodRecord:()=>Ts,ZodSchema:()=>q,ZodSet:()=>_n,ZodString:()=>Xt,ZodSymbol:()=>mn,ZodTransformer:()=>it,ZodTuple:()=>Rt,ZodType:()=>q,ZodUndefined:()=>Er,ZodUnion:()=>$r,ZodUnknown:()=>Ht,ZodVoid:()=>hn,addIssueToContext:()=>w,any:()=>Ik,array:()=>jk,bigint:()=>$k,boolean:()=>pf,coerce:()=>sS,custom:()=>uf,date:()=>Pk,datetimeRegex:()=>af,defaultErrorMap:()=>Zt,discriminatedUnion:()=>Lk,effect:()=>Yk,enum:()=>Jk,function:()=>Bk,getErrorMap:()=>dn,getParsedType:()=>Pt,instanceof:()=>Ek,intersection:()=>Zk,isAborted:()=>bs,isAsync:()=>pn,isDirty:()=>ws,isValid:()=>Yt,late:()=>wk,lazy:()=>Vk,literal:()=>Kk,makeIssue:()=>oo,map:()=>qk,nan:()=>Tk,nativeEnum:()=>Wk,never:()=>Nk,null:()=>Ck,nullable:()=>Qk,number:()=>df,object:()=>Ca,objectUtil:()=>Pa,oboolean:()=>oS,onumber:()=>nS,optional:()=>Xk,ostring:()=>rS,pipeline:()=>tS,preprocess:()=>eS,promise:()=>Gk,quotelessJson:()=>Xv,record:()=>Hk,set:()=>Fk,setErrorMap:()=>ek,strictObject:()=>Mk,string:()=>lf,symbol:()=>Rk,transformer:()=>Yk,tuple:()=>Uk,undefined:()=>Ok,union:()=>Dk,unknown:()=>zk,util:()=>K,void:()=>Ak});var K;(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(K||(K={}));var Pa;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Pa||(Pa={}));var $=K.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Pt=t=>{switch(typeof t){case"undefined":return $.undefined;case"string":return $.string;case"number":return Number.isNaN(t)?$.nan:$.number;case"boolean":return $.boolean;case"function":return $.function;case"bigint":return $.bigint;case"symbol":return $.symbol;case"object":return Array.isArray(t)?$.array:t===null?$.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?$.promise:typeof Map<"u"&&t instanceof Map?$.map:typeof Set<"u"&&t instanceof Set?$.set:typeof Date<"u"&&t instanceof Date?$.date:$.object;default:return $.unknown}};var S=K.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Xv=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Ke=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,K.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Ke.create=t=>new Ke(t);var Qv=(t,e)=>{let r;switch(t.code){case S.invalid_type:t.received===$.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case S.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,K.jsonStringifyReplacer)}`;break;case S.unrecognized_keys:r=`Unrecognized key(s) in object: ${K.joinValues(t.keys,", ")}`;break;case S.invalid_union:r="Invalid input";break;case S.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${K.joinValues(t.options)}`;break;case S.invalid_enum_value:r=`Invalid enum value. Expected ${K.joinValues(t.options)}, received '${t.received}'`;break;case S.invalid_arguments:r="Invalid function arguments";break;case S.invalid_return_type:r="Invalid function return type";break;case S.invalid_date:r="Invalid date";break;case S.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:K.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case S.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case S.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case S.custom:r="Invalid input";break;case S.invalid_intersection_types:r="Intersection results could not be merged";break;case S.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case S.not_finite:r="Number must be finite";break;default:r=e.defaultError,K.assertNever(t)}return{message:r}},Zt=Qv;var tf=Zt;function ek(t){tf=t}function dn(){return tf}var oo=t=>{let{data:e,path:r,errorMaps:n,issueData:o}=t,s=[...r,...o.path||[]],i={...o,path:s};if(o.message!==void 0)return{...o,path:s,message:o.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(i,{data:e,defaultError:a}).message;return{...o,path:s,message:a}},tk=[];function w(t,e){let r=dn(),n=oo({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Zt?void 0:Zt].filter(o=>!!o)});t.common.issues.push(n)}var Re=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return A;o.status==="dirty"&&e.dirty(),n.push(o.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let o of r){let s=await o.key,i=await o.value;n.push({key:s,value:i})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:i}=o;if(s.status==="aborted"||i.status==="aborted")return A;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||o.alwaysSet)&&(n[s.value]=i.value)}return{status:e.value,value:n}}},A=Object.freeze({status:"aborted"}),vr=t=>({status:"dirty",value:t}),je=t=>({status:"valid",value:t}),bs=t=>t.status==="aborted",ws=t=>t.status==="dirty",Yt=t=>t.status==="valid",pn=t=>typeof Promise<"u"&&t instanceof Promise;var R;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(R||(R={}));var st=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},rf=(t,e)=>{if(Yt(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Ke(t.common.issues);return this._error=r,this._error}}};function Z(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message:c}=t;return i.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:o}}var q=class{get description(){return this._def.description}_getType(e){return Pt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Pt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Re,ctx:{common:e.parent.common,data:e.data,parsedType:Pt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(pn(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return rf(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Yt(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=>Yt(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(pn(o)?o:Promise.resolve(o));return rf(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:S.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new it({schema:this,typeName:b.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return Je.create(this,this._def)}nullable(){return Ot.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return qt.create(this)}promise(){return er.create(this,this._def)}or(e){return $r.create([this,e],this._def)}and(e){return Pr.create(this,e,this._def)}transform(e){return new it({...Z(this._def),schema:this,typeName:b.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new zr({...Z(this._def),innerType:this,defaultValue:r,typeName:b.ZodDefault})}brand(){return new so({typeName:b.ZodBranded,type:this,...Z(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Nr({...Z(this._def),innerType:this,catchValue:r,typeName:b.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return io.create(this,e)}readonly(){return Ar.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},rk=/^c[^\s-]{8,}$/i,nk=/^[0-9a-z]+$/,ok=/^[0-9A-HJKMNP-TV-Z]{26}$/i,sk=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,ik=/^[a-z0-9_-]{21}$/i,ak=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,ck=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,uk=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,lk="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Ra,dk=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,pk=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,fk=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,mk=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,hk=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,gk=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,of="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",_k=new RegExp(`^${of}$`);function sf(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function yk(t){return new RegExp(`^${sf(t)}$`)}function af(t){let e=`${of}T${sf(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function xk(t,e){return!!((e==="v4"||!e)&&dk.test(t)||(e==="v6"||!e)&&fk.test(t))}function vk(t,e){if(!ak.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),o=JSON.parse(atob(n));return!(typeof o!="object"||o===null||"typ"in o&&o?.typ!=="JWT"||!o.alg||e&&o.alg!==e)}catch{return!1}}function kk(t,e){return!!((e==="v4"||!e)&&pk.test(t)||(e==="v6"||!e)&&mk.test(t))}var Xt=class t extends q{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==$.string){let s=this._getOrReturnCtx(e);return w(s,{code:S.invalid_type,expected:$.string,received:s.parsedType}),A}let n=new Re,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),w(o,{code:S.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),w(o,{code:S.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?w(o,{code:S.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&w(o,{code:S.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")uk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"email",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Ra||(Ra=new RegExp(lk,"u")),Ra.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"emoji",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")sk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"uuid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")ik.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"nanoid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")rk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"cuid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")nk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"cuid2",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")ok.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"ulid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),w(o,{validation:"url",code:S.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"regex",code:S.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?af(s).test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?_k.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?yk(s).test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?ck.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"duration",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?xk(e.data,s.version)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"ip",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?vk(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"jwt",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?kk(e.data,s.version)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"cidr",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?hk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"base64",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?gk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"base64url",code:S.invalid_string,message:s.message}),n.dirty()):K.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:S.invalid_string,...R.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...R.errToObj(e)})}url(e){return this._addCheck({kind:"url",...R.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...R.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...R.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...R.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...R.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...R.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...R.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...R.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...R.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...R.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...R.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...R.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...R.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...R.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...R.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...R.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...R.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...R.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...R.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...R.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...R.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...R.errToObj(r)})}nonempty(e){return this.min(1,R.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};Xt.create=t=>new Xt({checks:[],typeName:b.ZodString,coerce:t?.coerce??!1,...Z(t)});function Sk(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}var kr=class t extends q{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==$.number){let s=this._getOrReturnCtx(e);return w(s,{code:S.invalid_type,expected:$.number,received:s.parsedType}),A}let n,o=new Re;for(let s of this._def.checks)s.kind==="int"?K.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),w(n,{code:S.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),w(n,{code:S.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),w(n,{code:S.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?Sk(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),w(n,{code:S.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),w(n,{code:S.not_finite,message:s.message}),o.dirty()):K.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,R.toString(r))}gt(e,r){return this.setLimit("min",e,!1,R.toString(r))}lte(e,r){return this.setLimit("max",e,!0,R.toString(r))}lt(e,r){return this.setLimit("max",e,!1,R.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:R.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:R.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:R.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:R.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:R.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:R.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:R.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:R.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:R.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:R.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&K.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};kr.create=t=>new kr({checks:[],typeName:b.ZodNumber,coerce:t?.coerce||!1,...Z(t)});var Sr=class t extends q{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==$.bigint)return this._getInvalidInput(e);let n,o=new Re;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),w(n,{code:S.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),w(n,{code:S.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),w(n,{code:S.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):K.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return w(r,{code:S.invalid_type,expected:$.bigint,received:r.parsedType}),A}gte(e,r){return this.setLimit("min",e,!0,R.toString(r))}gt(e,r){return this.setLimit("min",e,!1,R.toString(r))}lte(e,r){return this.setLimit("max",e,!0,R.toString(r))}lt(e,r){return this.setLimit("max",e,!1,R.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:R.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:R.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:R.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:R.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:R.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:R.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};Sr.create=t=>new Sr({checks:[],typeName:b.ZodBigInt,coerce:t?.coerce??!1,...Z(t)});var br=class extends q{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==$.boolean){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.boolean,received:n.parsedType}),A}return je(e.data)}};br.create=t=>new br({typeName:b.ZodBoolean,coerce:t?.coerce||!1,...Z(t)});var wr=class t extends q{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==$.date){let s=this._getOrReturnCtx(e);return w(s,{code:S.invalid_type,expected:$.date,received:s.parsedType}),A}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return w(s,{code:S.invalid_date}),A}let n=new Re,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),w(o,{code:S.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),w(o,{code:S.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):K.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:R.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:R.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};wr.create=t=>new wr({checks:[],coerce:t?.coerce||!1,typeName:b.ZodDate,...Z(t)});var mn=class extends q{_parse(e){if(this._getType(e)!==$.symbol){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.symbol,received:n.parsedType}),A}return je(e.data)}};mn.create=t=>new mn({typeName:b.ZodSymbol,...Z(t)});var Er=class extends q{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.undefined,received:n.parsedType}),A}return je(e.data)}};Er.create=t=>new Er({typeName:b.ZodUndefined,...Z(t)});var Tr=class extends q{_parse(e){if(this._getType(e)!==$.null){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.null,received:n.parsedType}),A}return je(e.data)}};Tr.create=t=>new Tr({typeName:b.ZodNull,...Z(t)});var Qt=class extends q{constructor(){super(...arguments),this._any=!0}_parse(e){return je(e.data)}};Qt.create=t=>new Qt({typeName:b.ZodAny,...Z(t)});var Ht=class extends q{constructor(){super(...arguments),this._unknown=!0}_parse(e){return je(e.data)}};Ht.create=t=>new Ht({typeName:b.ZodUnknown,...Z(t)});var ht=class extends q{_parse(e){let r=this._getOrReturnCtx(e);return w(r,{code:S.invalid_type,expected:$.never,received:r.parsedType}),A}};ht.create=t=>new ht({typeName:b.ZodNever,...Z(t)});var hn=class extends q{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.void,received:n.parsedType}),A}return je(e.data)}};hn.create=t=>new hn({typeName:b.ZodVoid,...Z(t)});var qt=class t extends q{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==$.array)return w(r,{code:S.invalid_type,expected:$.array,received:r.parsedType}),A;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(w(r,{code:i?S.too_big:S.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(w(r,{code:S.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(w(r,{code:S.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((i,a)=>o.type._parseAsync(new st(r,i,r.path,a)))).then(i=>Re.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new st(r,i,r.path,a)));return Re.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:R.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:R.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:R.toString(r)}})}nonempty(e){return this.min(1,e)}};qt.create=(t,e)=>new qt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:b.ZodArray,...Z(e)});function fn(t){if(t instanceof We){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Je.create(fn(n))}return new We({...t._def,shape:()=>e})}else return t instanceof qt?new qt({...t._def,type:fn(t.element)}):t instanceof Je?Je.create(fn(t.unwrap())):t instanceof Ot?Ot.create(fn(t.unwrap())):t instanceof Rt?Rt.create(t.items.map(e=>fn(e))):t}var We=class t extends q{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=K.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==$.object){let u=this._getOrReturnCtx(e);return w(u,{code:S.invalid_type,expected:$.object,received:u.parsedType}),A}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof ht&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new st(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof ht){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(w(o,{code:S.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new st(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,f=await l.value;u.push({key:d,value:f,alwaysSet:l.alwaysSet})}return u}).then(u=>Re.mergeObjectSync(n,u)):Re.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return R.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:R.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:b.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of K.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of K.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return fn(this)}partial(e){let r={};for(let n of K.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of K.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Je;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return cf(K.objectKeys(this.shape))}};We.create=(t,e)=>new We({shape:()=>t,unknownKeys:"strip",catchall:ht.create(),typeName:b.ZodObject,...Z(e)});We.strictCreate=(t,e)=>new We({shape:()=>t,unknownKeys:"strict",catchall:ht.create(),typeName:b.ZodObject,...Z(e)});We.lazycreate=(t,e)=>new We({shape:t,unknownKeys:"strip",catchall:ht.create(),typeName:b.ZodObject,...Z(e)});var $r=class extends q{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function o(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let i=s.map(a=>new Ke(a.ctx.common.issues));return w(r,{code:S.invalid_union,unionErrors:i}),A}if(r.common.async)return Promise.all(n.map(async s=>{let i={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:i}),ctx:i}})).then(o);{let s,i=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=i.map(c=>new Ke(c));return w(r,{code:S.invalid_union,unionErrors:a}),A}}get options(){return this._def.options}};$r.create=(t,e)=>new $r({options:t,typeName:b.ZodUnion,...Z(e)});var Ut=t=>t instanceof Rr?Ut(t.schema):t instanceof it?Ut(t.innerType()):t instanceof Or?[t.value]:t instanceof Cr?t.options:t instanceof Ir?K.objectValues(t.enum):t instanceof zr?Ut(t._def.innerType):t instanceof Er?[void 0]:t instanceof Tr?[null]:t instanceof Je?[void 0,...Ut(t.unwrap())]:t instanceof Ot?[null,...Ut(t.unwrap())]:t instanceof so||t instanceof Ar?Ut(t.unwrap()):t instanceof Nr?Ut(t._def.innerType):[],Es=class t extends q{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.object)return w(r,{code:S.invalid_type,expected:$.object,received:r.parsedType}),A;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(w(r,{code:S.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),A)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let o=new Map;for(let s of r){let i=Ut(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:b.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...Z(n)})}};function Oa(t,e){let r=Pt(t),n=Pt(e);if(t===e)return{valid:!0,data:t};if(r===$.object&&n===$.object){let o=K.objectKeys(e),s=K.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=Oa(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===$.array&&n===$.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let i=t[s],a=e[s],c=Oa(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===$.date&&n===$.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var Pr=class extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(bs(s)||bs(i))return A;let a=Oa(s.value,i.value);return a.valid?((ws(s)||ws(i))&&r.dirty(),{status:r.value,value:a.data}):(w(n,{code:S.invalid_intersection_types}),A)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Pr.create=(t,e,r)=>new Pr({left:t,right:e,typeName:b.ZodIntersection,...Z(r)});var Rt=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.array)return w(n,{code:S.invalid_type,expected:$.array,received:n.parsedType}),A;if(n.data.length<this._def.items.length)return w(n,{code:S.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),A;!this._def.rest&&n.data.length>this._def.items.length&&(w(n,{code:S.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new st(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Re.mergeArray(r,i)):Re.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Rt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Rt({items:t,typeName:b.ZodTuple,rest:null,...Z(e)})};var Ts=class t extends q{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.object)return w(n,{code:S.invalid_type,expected:$.object,received:n.parsedType}),A;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new st(n,a,n.path,a)),value:i._parse(new st(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Re.mergeObjectAsync(r,o):Re.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof q?new t({keyType:e,valueType:r,typeName:b.ZodRecord,...Z(n)}):new t({keyType:Xt.create(),valueType:e,typeName:b.ZodRecord,...Z(r)})}},gn=class extends q{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.map)return w(n,{code:S.invalid_type,expected:$.map,received:n.parsedType}),A;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new st(n,a,n.path,[u,"key"])),value:s._parse(new st(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return A;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of i){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return A;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};gn.create=(t,e,r)=>new gn({valueType:e,keyType:t,typeName:b.ZodMap,...Z(r)});var _n=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.set)return w(n,{code:S.invalid_type,expected:$.set,received:n.parsedType}),A;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(w(n,{code:S.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(w(n,{code:S.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function i(c){let u=new Set;for(let l of c){if(l.status==="aborted")return A;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new st(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:R.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:R.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};_n.create=(t,e)=>new _n({valueType:t,minSize:null,maxSize:null,typeName:b.ZodSet,...Z(e)});var $s=class t extends q{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.function)return w(r,{code:S.invalid_type,expected:$.function,received:r.parsedType}),A;function n(a,c){return oo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,dn(),Zt].filter(u=>!!u),issueData:{code:S.invalid_arguments,argumentsError:c}})}function o(a,c){return oo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,dn(),Zt].filter(u=>!!u),issueData:{code:S.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof er){let a=this;return je(async function(...c){let u=new Ke([]),l=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(m=>{throw u.addIssue(o(d,m)),u})})}else{let a=this;return je(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Ke([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Ke([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Rt.create(e).rest(Ht.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Rt.create([]).rest(Ht.create()),returns:r||Ht.create(),typeName:b.ZodFunction,...Z(n)})}},Rr=class extends q{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Rr.create=(t,e)=>new Rr({getter:t,typeName:b.ZodLazy,...Z(e)});var Or=class extends q{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return w(r,{received:r.data,code:S.invalid_literal,expected:this._def.value}),A}return{status:"valid",value:e.data}}get value(){return this._def.value}};Or.create=(t,e)=>new Or({value:t,typeName:b.ZodLiteral,...Z(e)});function cf(t,e){return new Cr({values:t,typeName:b.ZodEnum,...Z(e)})}var Cr=class t extends q{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return w(r,{expected:K.joinValues(n),received:r.parsedType,code:S.invalid_type}),A}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return w(r,{received:r.data,code:S.invalid_enum_value,options:n}),A}return je(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};Cr.create=cf;var Ir=class extends q{_parse(e){let r=K.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==$.string&&n.parsedType!==$.number){let o=K.objectValues(r);return w(n,{expected:K.joinValues(o),received:n.parsedType,code:S.invalid_type}),A}if(this._cache||(this._cache=new Set(K.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=K.objectValues(r);return w(n,{received:n.data,code:S.invalid_enum_value,options:o}),A}return je(e.data)}get enum(){return this._def.values}};Ir.create=(t,e)=>new Ir({values:t,typeName:b.ZodNativeEnum,...Z(e)});var er=class extends q{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.promise&&r.common.async===!1)return w(r,{code:S.invalid_type,expected:$.promise,received:r.parsedType}),A;let n=r.parsedType===$.promise?r.data:Promise.resolve(r.data);return je(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};er.create=(t,e)=>new er({type:t,typeName:b.ZodPromise,...Z(e)});var it=class extends q{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===b.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{w(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return A;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?A:c.status==="dirty"?vr(c.value):r.value==="dirty"?vr(c.value):c});{if(r.value==="aborted")return A;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?A:a.status==="dirty"?vr(a.value):r.value==="dirty"?vr(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?A:(a.status==="dirty"&&r.dirty(),i(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?A:(a.status==="dirty"&&r.dirty(),i(a.value).then(()=>({status:r.value,value:a.value}))))}if(o.type==="transform")if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Yt(i))return A;let a=o.transform(i.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>Yt(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):A);K.assertNever(o)}};it.create=(t,e,r)=>new it({schema:t,typeName:b.ZodEffects,effect:e,...Z(r)});it.createWithPreprocess=(t,e,r)=>new it({schema:e,effect:{type:"preprocess",transform:t},typeName:b.ZodEffects,...Z(r)});var Je=class extends q{_parse(e){return this._getType(e)===$.undefined?je(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Je.create=(t,e)=>new Je({innerType:t,typeName:b.ZodOptional,...Z(e)});var Ot=class extends q{_parse(e){return this._getType(e)===$.null?je(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ot.create=(t,e)=>new Ot({innerType:t,typeName:b.ZodNullable,...Z(e)});var zr=class extends q{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===$.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};zr.create=(t,e)=>new zr({innerType:t,typeName:b.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Z(e)});var Nr=class extends q{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return pn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Ke(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Ke(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Nr.create=(t,e)=>new Nr({innerType:t,typeName:b.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Z(e)});var yn=class extends q{_parse(e){if(this._getType(e)!==$.nan){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.nan,received:n.parsedType}),A}return{status:"valid",value:e.data}}};yn.create=t=>new yn({typeName:b.ZodNaN,...Z(t)});var bk=Symbol("zod_brand"),so=class extends q{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},io=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?A:s.status==="dirty"?(r.dirty(),vr(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?A:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:b.ZodPipeline})}},Ar=class extends q{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Yt(o)&&(o.value=Object.freeze(o.value)),o);return pn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Ar.create=(t,e)=>new Ar({innerType:t,typeName:b.ZodReadonly,...Z(e)});function nf(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function uf(t,e={},r){return t?Qt.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=nf(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=nf(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Qt.create()}var wk={object:We.lazycreate},b;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(b||(b={}));var Ek=(t,e={message:`Input not instance of ${t.name}`})=>uf(r=>r instanceof t,e),lf=Xt.create,df=kr.create,Tk=yn.create,$k=Sr.create,pf=br.create,Pk=wr.create,Rk=mn.create,Ok=Er.create,Ck=Tr.create,Ik=Qt.create,zk=Ht.create,Nk=ht.create,Ak=hn.create,jk=qt.create,Ca=We.create,Mk=We.strictCreate,Dk=$r.create,Lk=Es.create,Zk=Pr.create,Uk=Rt.create,Hk=Ts.create,qk=gn.create,Fk=_n.create,Bk=$s.create,Vk=Rr.create,Kk=Or.create,Jk=Cr.create,Wk=Ir.create,Gk=er.create,Yk=it.create,Xk=Je.create,Qk=Ot.create,eS=it.createWithPreprocess,tS=io.create,rS=()=>lf().optional(),nS=()=>df().optional(),oS=()=>pf().optional(),sS={string:(t=>Xt.create({...t,coerce:!0})),number:(t=>kr.create({...t,coerce:!0})),boolean:(t=>br.create({...t,coerce:!0})),bigint:(t=>Sr.create({...t,coerce:!0})),date:(t=>wr.create({...t,coerce:!0}))};var iS=A;var aS=Object.freeze({status:"aborted"});function x(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var Ft=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Ps={};function tt(t){return t&&Object.assign(Ps,t),Ps}var J={};Ve(J,{BIGINT_FORMAT_RANGES:()=>mf,Class:()=>za,NUMBER_FORMAT_RANGES:()=>Za,aborted:()=>Mr,allowsEval:()=>Ma,assert:()=>pS,assertEqual:()=>cS,assertIs:()=>lS,assertNever:()=>dS,assertNotEqual:()=>uS,assignProp:()=>ja,cached:()=>uo,captureStackTrace:()=>Os,cleanEnum:()=>ES,cleanRegex:()=>po,clone:()=>rt,createTransparentProxy:()=>yS,defineLazy:()=>ae,esc:()=>jr,escapeRegex:()=>tr,extend:()=>kS,finalizeIssue:()=>gt,floatSafeRemainder:()=>Aa,getElementAtPath:()=>fS,getEnumValues:()=>co,getLengthableOrigin:()=>fo,getParsedType:()=>_S,getSizableOrigin:()=>hf,isObject:()=>xn,isPlainObject:()=>vn,issue:()=>Ua,joinValues:()=>Rs,jsonStringifyReplacer:()=>Na,merge:()=>SS,normalizeParams:()=>j,nullish:()=>lo,numKeys:()=>gS,omit:()=>vS,optionalKeys:()=>La,partial:()=>bS,pick:()=>xS,prefixIssues:()=>Ct,primitiveTypes:()=>ff,promiseAllObject:()=>mS,propertyKeyTypes:()=>Da,randomString:()=>hS,required:()=>wS,stringifyPrimitive:()=>Cs,unwrapMessage:()=>ao});function cS(t){return t}function uS(t){return t}function lS(t){}function dS(t){throw new Error}function pS(t){}function co(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 Rs(t,e="|"){return t.map(r=>Cs(r)).join(e)}function Na(t,e){return typeof e=="bigint"?e.toString():e}function uo(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function lo(t){return t==null}function po(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Aa(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function ae(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function ja(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function fS(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function mS(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let o={};for(let s=0;s<e.length;s++)o[e[s]]=n[s];return o})}function hS(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function jr(t){return JSON.stringify(t)}var Os=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function xn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Ma=uo(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function vn(t){if(xn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(xn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function gS(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var _S=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},Da=new Set(["string","number","symbol"]),ff=new Set(["string","number","bigint","boolean","symbol","undefined"]);function tr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function rt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function j(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function yS(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,s){return e??(e=t()),Reflect.set(e,n,o,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function Cs(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function La(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Za={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]},mf={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function xS(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return rt(t,{...t._zod.def,shape:r,checks:[]})}function vS(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete r[o]}return rt(t,{...t._zod.def,shape:r,checks:[]})}function kS(t,e){if(!vn(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return ja(this,"shape",n),n},checks:[]};return rt(t,r)}function SS(t,e){return rt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return ja(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function bS(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return rt(e,{...e._zod.def,shape:o,checks:[]})}function wS(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)o[s]=new t({type:"nonoptional",innerType:n[s]});return rt(e,{...e._zod.def,shape:o,checks:[]})}function Mr(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Ct(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function ao(t){return typeof t=="string"?t:t?.message}function gt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=ao(t.inst?._zod.def?.error?.(t))??ao(e?.error?.(t))??ao(r.customError?.(t))??ao(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function hf(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function fo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Ua(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function ES(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var za=class{constructor(...e){}};var gf=(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,Na,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Is=x("$ZodError",gf),mo=x("$ZodError",gf,{Parent:Error});function Ha(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 qa(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 Fa=t=>(e,r,n,o)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new Ft;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>gt(c,s,tt())));throw Os(a,o?.callee),a}return i.value},Ba=Fa(mo),Va=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>gt(c,s,tt())));throw Os(a,o?.callee),a}return i.value},Ka=Va(mo),Ja=t=>(e,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new Ft;return s.issues.length?{success:!1,error:new(t??Is)(s.issues.map(i=>gt(i,o,tt())))}:{success:!0,data:s.value}},Dr=Ja(mo),Wa=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>gt(i,o,tt())))}:{success:!0,data:s.value}},Lr=Wa(mo);var _f=/^[cC][^\s-]{8,}$/,yf=/^[0-9a-z]+$/,xf=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,vf=/^[0-9a-vA-V]{20}$/,kf=/^[A-Za-z0-9]{27}$/,Sf=/^[a-zA-Z0-9_-]{21}$/,bf=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var wf=/^([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})$/,Ga=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 Ef=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var $S="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Tf(){return new RegExp($S,"u")}var $f=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Pf=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,Rf=/^((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])$/,Of=/^(([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])$/,Cf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ya=/^[A-Za-z0-9_-]*$/,If=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var zf=/^\+(?:[0-9]){6,14}[0-9]$/,Nf="(?:(?:\\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])))",Af=new RegExp(`^${Nf}$`);function jf(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Mf(t){return new RegExp(`^${jf(t)}$`)}function Df(t){let e=jf({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${Nf}T(?:${n})$`)}var Lf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Zf=/^\d+$/,Uf=/^-?\d+(?:\.\d+)?/i,Hf=/true|false/i,qf=/null/i;var Ff=/^[^A-Z]*$/,Bf=/^[^a-z]*$/;var Oe=x("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Vf={number:"number",bigint:"bigint",object:"date"},Xa=x("$ZodCheckLessThan",(t,e)=>{Oe.init(t,e);let r=Vf[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})}}),Qa=x("$ZodCheckGreaterThan",(t,e)=>{Oe.init(t,e);let r=Vf[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})}}),Kf=x("$ZodCheckMultipleOf",(t,e)=>{Oe.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):Aa(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})}}),Jf=x("$ZodCheckNumberFormat",(t,e)=>{Oe.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Za[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=Zf)}),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 Wf=x("$ZodCheckMaxLength",(t,e)=>{var r;Oe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!lo(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=fo(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Gf=x("$ZodCheckMinLength",(t,e)=>{var r;Oe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!lo(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=fo(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Yf=x("$ZodCheckLengthEquals",(t,e)=>{var r;Oe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!lo(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=fo(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})}}),ho=x("$ZodCheckStringFormat",(t,e)=>{var r,n;Oe.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=()=>{})}),Xf=x("$ZodCheckRegex",(t,e)=>{ho.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})}}),Qf=x("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Ff),ho.init(t,e)}),em=x("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Bf),ho.init(t,e)}),tm=x("$ZodCheckIncludes",(t,e)=>{Oe.init(t,e);let r=tr(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})}}),rm=x("$ZodCheckStartsWith",(t,e)=>{Oe.init(t,e);let r=new RegExp(`^${tr(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})}}),nm=x("$ZodCheckEndsWith",(t,e)=>{Oe.init(t,e);let r=new RegExp(`.*${tr(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 om=x("$ZodCheckOverwrite",(t,e)=>{Oe.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Ns=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
45
27
  `).filter(i=>i),o=Math.min(...n.map(i=>i.length-i.trimStart().length)),s=n.map(i=>i.slice(o)).map(i=>" ".repeat(this.indent*2)+i);for(let i of s)this.content.push(i)}compile(){let e=Function,r=this?.args,o=[...(this?.content??[""]).map(s=>` ${s}`)];return new e(...r,o.join(`
46
- `))}};var ym={major:4,minor:0,patch:0};var re=x("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=ym;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let o of n)for(let s of o._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let o=(s,i,a)=>{let c=Hr(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,m=l._zod.check(s);if(m instanceof Promise&&a?.async===!1)throw new Ft;if(u||m instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await m,s.issues.length!==d&&(c||(c=Hr(s,d)))});else{if(s.issues.length===d)continue;c||(c=Hr(s,d))}}return u?u.then(()=>s):s};t._zod.run=(s,i)=>{let a=t._zod.parse(s,i);if(a instanceof Promise){if(i.async===!1)throw new Ft;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=qr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Fr(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),So=x("$ZodString",(t,e)=>{re.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Yf(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),le=x("$ZodStringFormat",(t,e)=>{vo.init(t,e),So.init(t,e)}),mc=x("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=jf),le.init(t,e)}),hc=x("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=uc(n))}else e.pattern??(e.pattern=uc());le.init(t,e)}),gc=x("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Mf),le.init(t,e)}),_c=x("$ZodURL",(t,e)=>{le.init(t,e),t._zod.check=r=>{try{let n=r.value,o=new URL(n),s=o.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:Ff.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),!n.endsWith("/")&&s.endsWith("/")?r.value=s.slice(0,-1):r.value=s;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),yc=x("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Lf()),le.init(t,e)}),xc=x("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Nf),le.init(t,e)}),vc=x("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Rf),le.init(t,e)}),Sc=x("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Of),le.init(t,e)}),kc=x("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Cf),le.init(t,e)}),bc=x("$ZodXID",(t,e)=>{e.pattern??(e.pattern=If),le.init(t,e)}),wc=x("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=zf),le.init(t,e)}),Pm=x("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Wf(e)),le.init(t,e)}),Rm=x("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Kf),le.init(t,e)}),Om=x("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Gf(e)),le.init(t,e)}),Cm=x("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Af),le.init(t,e)}),Ec=x("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Df),le.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),Tc=x("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Zf),le.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),$c=x("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Uf),le.init(t,e)}),Pc=x("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Hf),le.init(t,e),t._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let s=Number(o);if(`${s}`!==o)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function Im(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var Rc=x("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=qf),le.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Im(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function Ek(t){if(!lc.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Im(r)}var Oc=x("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=lc),le.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{Ek(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),Cc=x("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Bf),le.init(t,e)});function Tk(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||e&&(!("alg"in o)||o.alg!==e))}catch{return!1}}var Ic=x("$ZodJWT",(t,e)=>{le.init(t,e),t._zod.check=r=>{Tk(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Hs=x("$ZodNumber",(t,e)=>{re.init(t,e),t._zod.pattern=t._zod.bag.pattern??Qf,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let o=r.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let s=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:t,...s?{received:s}:{}}),r}}),zc=x("$ZodNumber",(t,e)=>{im.init(t,e),Hs.init(t,e)}),Nc=x("$ZodBoolean",(t,e)=>{re.init(t,e),t._zod.pattern=em,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let o=r.value;return typeof o=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:t}),r}});var Ac=x("$ZodNull",(t,e)=>{re.init(t,e),t._zod.pattern=tm,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let o=r.value;return o===null||r.issues.push({expected:"null",code:"invalid_type",input:o,inst:t}),r}});var jc=x("$ZodUnknown",(t,e)=>{re.init(t,e),t._zod.parse=r=>r}),Mc=x("$ZodNever",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function xm(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}var Lc=x("$ZodArray",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let s=[];for(let i=0;i<o.length;i++){let a=o[i],c=e.element._zod.run({value:a,issues:[]},n);c instanceof Promise?s.push(c.then(u=>xm(u,r,i))):xm(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Us(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}function vm(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...Ct(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var qs=x("$ZodObject",(t,e)=>{re.init(t,e);let r=ho(()=>{let d=Object.keys(e.shape);for(let f of d)if(!(e.shape[f]instanceof re))throw new Error(`Invalid element at key "${f}": expected a Zod schema`);let m=Xa(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(m)}});ue(t._zod,"propValues",()=>{let d=e.shape,m={};for(let f in d){let p=d[f]._zod;if(p.values){m[f]??(m[f]=new Set);for(let h of p.values)m[f].add(h)}}return m});let n=d=>{let m=new Zs(["shape","payload","ctx"]),f=r.value,p=v=>{let S=Ur(v);return`shape[${S}]._zod.run({ value: input[${S}], issues: [] }, ctx)`};m.write("const input = payload.value;");let h=Object.create(null),g=0;for(let v of f.keys)h[v]=`key_${g++}`;m.write("const newResult = {}");for(let v of f.keys)if(f.optionalKeys.has(v)){let S=h[v];m.write(`const ${S} = ${p(v)};`);let w=Ur(v);m.write(`
47
- if (${S}.issues.length) {
48
- if (input[${w}] === undefined) {
49
- if (${w} in input) {
50
- newResult[${w}] = undefined;
28
+ `))}};var im={major:4,minor:0,patch:0};var re=x("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=im;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=Mr(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,f=l._zod.check(s);if(f instanceof Promise&&a?.async===!1)throw new Ft;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await f,s.issues.length!==d&&(c||(c=Mr(s,d)))});else{if(s.issues.length===d)continue;c||(c=Mr(s,d))}}return u?u.then(()=>s):s};t._zod.run=(s,i)=>{let a=t._zod.parse(s,i);if(a instanceof Promise){if(i.async===!1)throw new Ft;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=Dr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Lr(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),go=x("$ZodString",(t,e)=>{re.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Lf(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),ce=x("$ZodStringFormat",(t,e)=>{ho.init(t,e),go.init(t,e)}),tc=x("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=wf),ce.init(t,e)}),rc=x("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=Ga(n))}else e.pattern??(e.pattern=Ga());ce.init(t,e)}),nc=x("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Ef),ce.init(t,e)}),oc=x("$ZodURL",(t,e)=>{ce.init(t,e),t._zod.check=r=>{try{let n=r.value,o=new URL(n),s=o.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:If.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})}}}),sc=x("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Tf()),ce.init(t,e)}),ic=x("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Sf),ce.init(t,e)}),ac=x("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=_f),ce.init(t,e)}),cc=x("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=yf),ce.init(t,e)}),uc=x("$ZodULID",(t,e)=>{e.pattern??(e.pattern=xf),ce.init(t,e)}),lc=x("$ZodXID",(t,e)=>{e.pattern??(e.pattern=vf),ce.init(t,e)}),dc=x("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=kf),ce.init(t,e)}),gm=x("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Df(e)),ce.init(t,e)}),_m=x("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Af),ce.init(t,e)}),ym=x("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Mf(e)),ce.init(t,e)}),xm=x("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=bf),ce.init(t,e)}),pc=x("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=$f),ce.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),fc=x("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Pf),ce.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),mc=x("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Rf),ce.init(t,e)}),hc=x("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Of),ce.init(t,e),t._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let s=Number(o);if(`${s}`!==o)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function vm(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var gc=x("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Cf),ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{vm(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function PS(t){if(!Ya.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return vm(r)}var _c=x("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Ya),ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{PS(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),yc=x("$ZodE164",(t,e)=>{e.pattern??(e.pattern=zf),ce.init(t,e)});function RS(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||e&&(!("alg"in o)||o.alg!==e))}catch{return!1}}var xc=x("$ZodJWT",(t,e)=>{ce.init(t,e),t._zod.check=r=>{RS(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var js=x("$ZodNumber",(t,e)=>{re.init(t,e),t._zod.pattern=t._zod.bag.pattern??Uf,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}}),vc=x("$ZodNumber",(t,e)=>{Jf.init(t,e),js.init(t,e)}),kc=x("$ZodBoolean",(t,e)=>{re.init(t,e),t._zod.pattern=Hf,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 Sc=x("$ZodNull",(t,e)=>{re.init(t,e),t._zod.pattern=qf,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let o=r.value;return o===null||r.issues.push({expected:"null",code:"invalid_type",input:o,inst:t}),r}});var bc=x("$ZodUnknown",(t,e)=>{re.init(t,e),t._zod.parse=r=>r}),wc=x("$ZodNever",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function am(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}var Ec=x("$ZodArray",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let s=[];for(let i=0;i<o.length;i++){let a=o[i],c=e.element._zod.run({value:a,issues:[]},n);c instanceof Promise?s.push(c.then(u=>am(u,r,i))):am(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function As(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}function cm(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...Ct(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Ms=x("$ZodObject",(t,e)=>{re.init(t,e);let r=uo(()=>{let d=Object.keys(e.shape);for(let m of d)if(!(e.shape[m]instanceof re))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let f=La(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});ae(t._zod,"propValues",()=>{let d=e.shape,f={};for(let m in d){let p=d[m]._zod;if(p.values){f[m]??(f[m]=new Set);for(let h of p.values)f[m].add(h)}}return f});let n=d=>{let f=new Ns(["shape","payload","ctx"]),m=r.value,p=y=>{let k=jr(y);return`shape[${k}]._zod.run({ value: input[${k}], issues: [] }, ctx)`};f.write("const input = payload.value;");let h=Object.create(null),g=0;for(let y of m.keys)h[y]=`key_${g++}`;f.write("const newResult = {}");for(let y of m.keys)if(m.optionalKeys.has(y)){let k=h[y];f.write(`const ${k} = ${p(y)};`);let E=jr(y);f.write(`
29
+ if (${k}.issues.length) {
30
+ if (input[${E}] === undefined) {
31
+ if (${E} in input) {
32
+ newResult[${E}] = undefined;
51
33
  }
52
34
  } else {
53
35
  payload.issues = payload.issues.concat(
54
- ${S}.issues.map((iss) => ({
36
+ ${k}.issues.map((iss) => ({
55
37
  ...iss,
56
- path: iss.path ? [${w}, ...iss.path] : [${w}],
38
+ path: iss.path ? [${E}, ...iss.path] : [${E}],
57
39
  }))
58
40
  );
59
41
  }
60
- } else if (${S}.value === undefined) {
61
- if (${w} in input) newResult[${w}] = undefined;
42
+ } else if (${k}.value === undefined) {
43
+ if (${E} in input) newResult[${E}] = undefined;
62
44
  } else {
63
- newResult[${w}] = ${S}.value;
45
+ newResult[${E}] = ${k}.value;
64
46
  }
65
- `)}else{let S=h[v];m.write(`const ${S} = ${p(v)};`),m.write(`
66
- if (${S}.issues.length) payload.issues = payload.issues.concat(${S}.issues.map(iss => ({
47
+ `)}else{let k=h[y];f.write(`const ${k} = ${p(y)};`),f.write(`
48
+ if (${k}.issues.length) payload.issues = payload.issues.concat(${k}.issues.map(iss => ({
67
49
  ...iss,
68
- path: iss.path ? [${Ur(v)}, ...iss.path] : [${Ur(v)}]
69
- })));`),m.write(`newResult[${Ur(v)}] = ${S}.value`)}m.write("payload.value = newResult;"),m.write("return payload;");let y=m.compile();return(v,S)=>y(d,v,S)},o,s=bn,i=!Ns.jitless,c=i&&Wa.value,u=e.catchall,l;t._zod.parse=(d,m)=>{l??(l=r.value);let f=d.value;if(!s(f))return d.issues.push({expected:"object",code:"invalid_type",input:f,inst:t}),d;let p=[];if(i&&c&&m?.async===!1&&m.jitless!==!0)o||(o=n(e.shape)),d=o(d,m);else{d.value={};let S=l.shape;for(let w of l.keys){let R=S[w],ae=R._zod.run({value:f[w],issues:[]},m),ce=R._zod.optin==="optional"&&R._zod.optout==="optional";ae instanceof Promise?p.push(ae.then(rt=>ce?vm(rt,d,w,f):Us(rt,d,w))):ce?vm(ae,d,w,f):Us(ae,d,w)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,y=u._zod,v=y.def.type;for(let S of Object.keys(f)){if(g.has(S))continue;if(v==="never"){h.push(S);continue}let w=y.run({value:f[S],issues:[]},m);w instanceof Promise?p.push(w.then(R=>Us(R,d,S))):Us(w,d,S)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:f,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function Sm(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>_t(s,n,nt())))}),e}var Fs=x("$ZodUnion",(t,e)=>{re.init(t,e),ue(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ue(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ue(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ue(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>_o(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let o=!1,s=[];for(let i of e.options){let a=i._zod.run({value:r.value,issues:[]},n);if(a instanceof Promise)s.push(a),o=!0;else{if(a.issues.length===0)return a;s.push(a)}}return o?Promise.all(s).then(i=>Sm(i,r,t,n)):Sm(s,r,t,n)}}),Dc=x("$ZodDiscriminatedUnion",(t,e)=>{Fs.init(t,e);let r=t._zod.parse;ue(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=ho(()=>{let o=e.options,s=new Map;for(let i of o){let a=i._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});t._zod.parse=(o,s)=>{let i=o.value;if(!bn(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:t}),o;let a=n.value.get(i?.[e.discriminator]);return a?a._zod.run(o,s):e.unionFallback?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[e.discriminator],inst:t}),o)}}),Zc=x("$ZodIntersection",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>km(r,c,u)):km(r,s,i)}});function fc(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(wn(t)&&wn(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),o={...t,...e};for(let s of n){let i=fc(t[s],e[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<t.length;n++){let o=t[n],s=e[n],i=fc(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function km(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Hr(t))return t;let n=fc(e.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return t.value=n.data,t}var Uc=x("$ZodRecord",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!wn(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:o[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...Ct(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Ct(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>_t(u,n,nt())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Ct(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Ct(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Hc=x("$ZodEnum",(t,e)=>{re.init(t,e);let r=mo(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ya.has(typeof n)).map(n=>typeof n=="string"?or(n):n.toString()).join("|")})$`),t._zod.parse=(n,o)=>{let s=n.value;return t._zod.values.has(s)||n.issues.push({code:"invalid_value",values:r,input:s,inst:t}),n}}),qc=x("$ZodLiteral",(t,e)=>{re.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?or(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let o=r.value;return t._zod.values.has(o)||r.issues.push({code:"invalid_value",values:e.values,input:o,inst:t}),r}});var Fc=x("$ZodTransform",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r));if(o instanceof Promise)throw new Ft;return r.value=o,r}}),Bc=x("$ZodOptional",(t,e)=>{re.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ue(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ue(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${_o(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>e.innerType._zod.optin==="optional"?e.innerType._zod.run(r,n):r.value===void 0?r:e.innerType._zod.run(r,n)}),Vc=x("$ZodNullable",(t,e)=>{re.init(t,e),ue(t._zod,"optin",()=>e.innerType._zod.optin),ue(t._zod,"optout",()=>e.innerType._zod.optout),ue(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${_o(r.source)}|null)$`):void 0}),ue(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),Kc=x("$ZodDefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ue(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>bm(s,e)):bm(o,e)}});function bm(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Jc=x("$ZodPrefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ue(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Gc=x("$ZodNonOptional",(t,e)=>{re.init(t,e),ue(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>wm(s,t)):wm(o,t)}});function wm(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var Wc=x("$ZodCatch",(t,e)=>{re.init(t,e),t._zod.optin="optional",ue(t._zod,"optout",()=>e.innerType._zod.optout),ue(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>_t(i,n,nt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>_t(s,n,nt()))},input:r.value}),r.issues=[]),r)}});var Yc=x("$ZodPipe",(t,e)=>{re.init(t,e),ue(t._zod,"values",()=>e.in._zod.values),ue(t._zod,"optin",()=>e.in._zod.optin),ue(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>Em(s,e,n)):Em(o,e,n)}});function Em(t,e,r){return Hr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Xc=x("$ZodReadonly",(t,e)=>{re.init(t,e),ue(t._zod,"propValues",()=>e.innerType._zod.propValues),ue(t._zod,"values",()=>e.innerType._zod.values),ue(t._zod,"optin",()=>e.innerType._zod.optin),ue(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(Tm):Tm(o)}});function Tm(t){return t.value=Object.freeze(t.value),t}var Qc=x("$ZodCustom",(t,e)=>{Re.init(t,e),re.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,o=e.fn(n);if(o instanceof Promise)return o.then(s=>$m(s,r,n,t));$m(o,r,n,t)}});function $m(t,e,r,n){if(!t){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(o.params=n._zod.def.params),e.issues.push(ec(o))}}var $k=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},Pk=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function e(n){return t[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${$k(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Ms(n.values[0])}`:`Invalid option: expected one of ${As(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",s=e(n.origin);return s?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${s.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",s=e(n.origin);return s?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${s.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${As(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function zm(){return{localeError:Pk()}}var ko=class{constructor(){this._map=new Map,this._idmap=new Map}add(e,...r){let n=r[0];if(this._map.set(e,n),n&&typeof n=="object"&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){let r=this._map.get(e);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let n={...this.get(r)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Nm(){return new ko}var sr=Nm();function eu(t,e){return new t({type:"string",...j(e)})}function tu(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...j(e)})}function Bs(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...j(e)})}function ru(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...j(e)})}function nu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...j(e)})}function ou(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...j(e)})}function su(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...j(e)})}function iu(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...j(e)})}function au(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...j(e)})}function cu(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...j(e)})}function uu(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...j(e)})}function lu(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...j(e)})}function du(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...j(e)})}function pu(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...j(e)})}function fu(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...j(e)})}function mu(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...j(e)})}function hu(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...j(e)})}function gu(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...j(e)})}function _u(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...j(e)})}function yu(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...j(e)})}function xu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...j(e)})}function vu(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...j(e)})}function Su(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...j(e)})}function Am(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...j(e)})}function jm(t,e){return new t({type:"string",format:"date",check:"string_format",...j(e)})}function Mm(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...j(e)})}function Lm(t,e){return new t({type:"string",format:"duration",check:"string_format",...j(e)})}function ku(t,e){return new t({type:"number",checks:[],...j(e)})}function bu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...j(e)})}function wu(t,e){return new t({type:"boolean",...j(e)})}function Eu(t,e){return new t({type:"null",...j(e)})}function Tu(t){return new t({type:"unknown"})}function $u(t,e){return new t({type:"never",...j(e)})}function Vs(t,e){return new dc({check:"less_than",...j(e),value:t,inclusive:!1})}function bo(t,e){return new dc({check:"less_than",...j(e),value:t,inclusive:!0})}function Ks(t,e){return new pc({check:"greater_than",...j(e),value:t,inclusive:!1})}function wo(t,e){return new pc({check:"greater_than",...j(e),value:t,inclusive:!0})}function Js(t,e){return new sm({check:"multiple_of",...j(e),value:t})}function Gs(t,e){return new am({check:"max_length",...j(e),maximum:t})}function En(t,e){return new cm({check:"min_length",...j(e),minimum:t})}function Ws(t,e){return new um({check:"length_equals",...j(e),length:t})}function Pu(t,e){return new lm({check:"string_format",format:"regex",...j(e),pattern:t})}function Ru(t){return new dm({check:"string_format",format:"lowercase",...j(t)})}function Ou(t){return new pm({check:"string_format",format:"uppercase",...j(t)})}function Cu(t,e){return new fm({check:"string_format",format:"includes",...j(e),includes:t})}function Iu(t,e){return new mm({check:"string_format",format:"starts_with",...j(e),prefix:t})}function zu(t,e){return new hm({check:"string_format",format:"ends_with",...j(e),suffix:t})}function Br(t){return new gm({check:"overwrite",tx:t})}function Nu(t){return Br(e=>e.normalize(t))}function Au(){return Br(t=>t.trim())}function ju(){return Br(t=>t.toLowerCase())}function Mu(){return Br(t=>t.toUpperCase())}function Dm(t,e,r){return new t({type:"array",element:e,...j(r)})}function Lu(t,e,r){let n=j(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Du(t,e,r){return new t({type:"custom",check:"custom",fn:e,...j(r)})}var Ys=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??sr,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},m=e._zod.parent;if(m)a.ref=m,this.process(m,d),this.seen.get(m).isParent=!0;else{let f=a.schema;switch(o.type){case"string":{let p=f;p.type="string";let{minimum:h,maximum:g,format:y,patterns:v,contentEncoding:S}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),y&&(p.format=s[y]??y,p.format===""&&delete p.format),S&&(p.contentEncoding=S),v&&v.size>0){let w=[...v];w.length===1?p.pattern=w[0].source:w.length>1&&(a.schema.allOf=[...w.map(R=>({...this.target==="draft-7"?{type:"string"}:{},pattern:R.source}))])}break}case"number":{let p=f,{minimum:h,maximum:g,format:y,multipleOf:v,exclusiveMaximum:S,exclusiveMinimum:w}=e._zod.bag;typeof y=="string"&&y.includes("int")?p.type="integer":p.type="number",typeof w=="number"&&(p.exclusiveMinimum=w),typeof h=="number"&&(p.minimum=h,typeof w=="number"&&(w>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof S=="number"&&(p.exclusiveMaximum=S),typeof g=="number"&&(p.maximum=g,typeof S=="number"&&(S<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof v=="number"&&(p.multipleOf=v);break}case"boolean":{let p=f;p.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{f.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{f.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=f,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(p.minItems=h),typeof g=="number"&&(p.maxItems=g),p.type="array",p.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let p=f;p.type="object",p.properties={};let h=o.shape;for(let v in h)p.properties[v]=this.process(h[v],{...d,path:[...d.path,"properties",v]});let g=new Set(Object.keys(h)),y=new Set([...g].filter(v=>{let S=o.shape[v]._zod;return this.io==="input"?S.optin===void 0:S.optout===void 0}));y.size>0&&(p.required=Array.from(y)),o.catchall?._zod.def.type==="never"?p.additionalProperties=!1:o.catchall?o.catchall&&(p.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=f;p.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=f,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),y=S=>"allOf"in S&&Object.keys(S).length===1,v=[...y(h)?h.allOf:[h],...y(g)?g.allOf:[g]];p.allOf=v;break}case"tuple":{let p=f;p.type="array";let h=o.items.map((v,S)=>this.process(v,{...d,path:[...d.path,"prefixItems",S]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let v=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=v:p.additionalItems=v}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:y}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof y=="number"&&(p.maxItems=y);break}case"record":{let p=f;p.type="object",p.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let p=f,h=mo(o.entries);h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),p.enum=h;break}case"literal":{let p=f,h=[];for(let g of o.values)if(g===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof g=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(g))}else h.push(g);if(h.length!==0)if(h.length===1){let g=h[0];p.type=g===null?"null":typeof g,p.const=g}else h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),h.every(g=>typeof g=="boolean")&&(p.type="string"),h.every(g=>g===null)&&(p.type="null"),p.enum=h;break}case"file":{let p=f,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:y,mime:v}=e._zod.bag;g!==void 0&&(h.minLength=g),y!==void 0&&(h.maxLength=y),v?v.length===1?(h.contentMediaType=v[0],Object.assign(p,h)):p.anyOf=v.map(S=>({...h,contentMediaType:S})):Object.assign(p,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);f.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=f;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,f.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(f._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}f.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let p=f,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=h.source;break}case"pipe":{let p=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,f.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,d),a.ref=p;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&Ee(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(v=>v);if(h)return{ref:g(h)};let y=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=y,{defId:y,ref:`${g("__shared")}#/${d}/${y}`}}if(l[1]===o)return{ref:"#"};let f=`#/${d}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:f+p}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:m,defId:f}=s(l);d.def={...d.schema},f&&(d.defId=f);let p=d.schema;for(let h in p)delete p[h];p.$ref=m};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
50
+ path: iss.path ? [${jr(y)}, ...iss.path] : [${jr(y)}]
51
+ })));`),f.write(`newResult[${jr(y)}] = ${k}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let v=f.compile();return(y,k)=>v(d,y,k)},o,s=xn,i=!Ps.jitless,c=i&&Ma.value,u=e.catchall,l;t._zod.parse=(d,f)=>{l??(l=r.value);let m=d.value;if(!s(m))return d.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),d;let p=[];if(i&&c&&f?.async===!1&&f.jitless!==!0)o||(o=n(e.shape)),d=o(d,f);else{d.value={};let k=l.shape;for(let E of l.keys){let C=k[E],ke=C._zod.run({value:m[E],issues:[]},f),be=C._zod.optin==="optional"&&C._zod.optout==="optional";ke instanceof Promise?p.push(ke.then(ot=>be?cm(ot,d,E,m):As(ot,d,E))):be?cm(ke,d,E,m):As(ke,d,E)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,v=u._zod,y=v.def.type;for(let k of Object.keys(m)){if(g.has(k))continue;if(y==="never"){h.push(k);continue}let E=v.run({value:m[k],issues:[]},f);E instanceof Promise?p.push(E.then(C=>As(C,d,k))):As(E,d,k)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:m,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function um(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>gt(s,n,tt())))}),e}var Ds=x("$ZodUnion",(t,e)=>{re.init(t,e),ae(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ae(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ae(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ae(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>po(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=>um(i,r,t,n)):um(s,r,t,n)}}),Tc=x("$ZodDiscriminatedUnion",(t,e)=>{Ds.init(t,e);let r=t._zod.parse;ae(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=uo(()=>{let o=e.options,s=new Map;for(let i of o){let a=i._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});t._zod.parse=(o,s)=>{let i=o.value;if(!xn(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:t}),o;let a=n.value.get(i?.[e.discriminator]);return a?a._zod.run(o,s):e.unionFallback?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[e.discriminator],inst:t}),o)}}),$c=x("$ZodIntersection",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>lm(r,c,u)):lm(r,s,i)}});function ec(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(vn(t)&&vn(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),o={...t,...e};for(let s of n){let i=ec(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=ec(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function lm(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Mr(t))return t;let n=ec(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 Pc=x("$ZodRecord",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!vn(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:o[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...Ct(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Ct(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>gt(u,n,tt())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Ct(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Ct(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Rc=x("$ZodEnum",(t,e)=>{re.init(t,e);let r=co(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Da.has(typeof n)).map(n=>typeof n=="string"?tr(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}}),Oc=x("$ZodLiteral",(t,e)=>{re.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?tr(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 Cc=x("$ZodTransform",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r));if(o instanceof Promise)throw new Ft;return r.value=o,r}}),Ic=x("$ZodOptional",(t,e)=>{re.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ae(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ae(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${po(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)}),zc=x("$ZodNullable",(t,e)=>{re.init(t,e),ae(t._zod,"optin",()=>e.innerType._zod.optin),ae(t._zod,"optout",()=>e.innerType._zod.optout),ae(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${po(r.source)}|null)$`):void 0}),ae(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),Nc=x("$ZodDefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>dm(s,e)):dm(o,e)}});function dm(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Ac=x("$ZodPrefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),jc=x("$ZodNonOptional",(t,e)=>{re.init(t,e),ae(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>pm(s,t)):pm(o,t)}});function pm(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 Mc=x("$ZodCatch",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"optout",()=>e.innerType._zod.optout),ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>gt(i,n,tt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>gt(s,n,tt()))},input:r.value}),r.issues=[]),r)}});var Dc=x("$ZodPipe",(t,e)=>{re.init(t,e),ae(t._zod,"values",()=>e.in._zod.values),ae(t._zod,"optin",()=>e.in._zod.optin),ae(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>fm(s,e,n)):fm(o,e,n)}});function fm(t,e,r){return Mr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Lc=x("$ZodReadonly",(t,e)=>{re.init(t,e),ae(t._zod,"propValues",()=>e.innerType._zod.propValues),ae(t._zod,"values",()=>e.innerType._zod.values),ae(t._zod,"optin",()=>e.innerType._zod.optin),ae(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(mm):mm(o)}});function mm(t){return t.value=Object.freeze(t.value),t}var Zc=x("$ZodCustom",(t,e)=>{Oe.init(t,e),re.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,o=e.fn(n);if(o instanceof Promise)return o.then(s=>hm(s,r,n,t));hm(o,r,n,t)}});function hm(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(Ua(o))}}var OS=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},CS=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function e(n){return t[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${OS(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Cs(n.values[0])}`:`Invalid option: expected one of ${Rs(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":""}: ${Rs(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 km(){return{localeError:CS()}}var _o=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 Sm(){return new _o}var rr=Sm();function Uc(t,e){return new t({type:"string",...j(e)})}function Hc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...j(e)})}function Ls(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...j(e)})}function qc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...j(e)})}function Fc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...j(e)})}function Bc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...j(e)})}function Vc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...j(e)})}function Kc(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...j(e)})}function Jc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...j(e)})}function Wc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...j(e)})}function Gc(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...j(e)})}function Yc(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...j(e)})}function Xc(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...j(e)})}function Qc(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...j(e)})}function eu(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...j(e)})}function tu(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...j(e)})}function ru(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...j(e)})}function nu(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...j(e)})}function ou(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...j(e)})}function su(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...j(e)})}function iu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...j(e)})}function au(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...j(e)})}function cu(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...j(e)})}function bm(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...j(e)})}function wm(t,e){return new t({type:"string",format:"date",check:"string_format",...j(e)})}function Em(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...j(e)})}function Tm(t,e){return new t({type:"string",format:"duration",check:"string_format",...j(e)})}function uu(t,e){return new t({type:"number",checks:[],...j(e)})}function lu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...j(e)})}function du(t,e){return new t({type:"boolean",...j(e)})}function pu(t,e){return new t({type:"null",...j(e)})}function fu(t){return new t({type:"unknown"})}function mu(t,e){return new t({type:"never",...j(e)})}function Zs(t,e){return new Xa({check:"less_than",...j(e),value:t,inclusive:!1})}function yo(t,e){return new Xa({check:"less_than",...j(e),value:t,inclusive:!0})}function Us(t,e){return new Qa({check:"greater_than",...j(e),value:t,inclusive:!1})}function xo(t,e){return new Qa({check:"greater_than",...j(e),value:t,inclusive:!0})}function Hs(t,e){return new Kf({check:"multiple_of",...j(e),value:t})}function qs(t,e){return new Wf({check:"max_length",...j(e),maximum:t})}function kn(t,e){return new Gf({check:"min_length",...j(e),minimum:t})}function Fs(t,e){return new Yf({check:"length_equals",...j(e),length:t})}function hu(t,e){return new Xf({check:"string_format",format:"regex",...j(e),pattern:t})}function gu(t){return new Qf({check:"string_format",format:"lowercase",...j(t)})}function _u(t){return new em({check:"string_format",format:"uppercase",...j(t)})}function yu(t,e){return new tm({check:"string_format",format:"includes",...j(e),includes:t})}function xu(t,e){return new rm({check:"string_format",format:"starts_with",...j(e),prefix:t})}function vu(t,e){return new nm({check:"string_format",format:"ends_with",...j(e),suffix:t})}function Zr(t){return new om({check:"overwrite",tx:t})}function ku(t){return Zr(e=>e.normalize(t))}function Su(){return Zr(t=>t.trim())}function bu(){return Zr(t=>t.toLowerCase())}function wu(){return Zr(t=>t.toUpperCase())}function $m(t,e,r){return new t({type:"array",element:e,...j(r)})}function Eu(t,e,r){let n=j(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Tu(t,e,r){return new t({type:"custom",check:"custom",fn:e,...j(r)})}var Bs=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??rr,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},f=e._zod.parent;if(f)a.ref=f,this.process(f,d),this.seen.get(f).isParent=!0;else{let m=a.schema;switch(o.type){case"string":{let p=m;p.type="string";let{minimum:h,maximum:g,format:v,patterns:y,contentEncoding:k}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),v&&(p.format=s[v]??v,p.format===""&&delete p.format),k&&(p.contentEncoding=k),y&&y.size>0){let E=[...y];E.length===1?p.pattern=E[0].source:E.length>1&&(a.schema.allOf=[...E.map(C=>({...this.target==="draft-7"?{type:"string"}:{},pattern:C.source}))])}break}case"number":{let p=m,{minimum:h,maximum:g,format:v,multipleOf:y,exclusiveMaximum:k,exclusiveMinimum:E}=e._zod.bag;typeof v=="string"&&v.includes("int")?p.type="integer":p.type="number",typeof E=="number"&&(p.exclusiveMinimum=E),typeof h=="number"&&(p.minimum=h,typeof E=="number"&&(E>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof k=="number"&&(p.exclusiveMaximum=k),typeof g=="number"&&(p.maximum=g,typeof k=="number"&&(k<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof y=="number"&&(p.multipleOf=y);break}case"boolean":{let p=m;p.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{m.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{m.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=m,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(p.minItems=h),typeof g=="number"&&(p.maxItems=g),p.type="array",p.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let p=m;p.type="object",p.properties={};let h=o.shape;for(let y in h)p.properties[y]=this.process(h[y],{...d,path:[...d.path,"properties",y]});let g=new Set(Object.keys(h)),v=new Set([...g].filter(y=>{let k=o.shape[y]._zod;return this.io==="input"?k.optin===void 0:k.optout===void 0}));v.size>0&&(p.required=Array.from(v)),o.catchall?._zod.def.type==="never"?p.additionalProperties=!1:o.catchall?o.catchall&&(p.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=m;p.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=m,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),v=k=>"allOf"in k&&Object.keys(k).length===1,y=[...v(h)?h.allOf:[h],...v(g)?g.allOf:[g]];p.allOf=y;break}case"tuple":{let p=m;p.type="array";let h=o.items.map((y,k)=>this.process(y,{...d,path:[...d.path,"prefixItems",k]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let y=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=y:p.additionalItems=y}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:v}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof v=="number"&&(p.maxItems=v);break}case"record":{let p=m;p.type="object",p.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let p=m,h=co(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:v,mime:y}=e._zod.bag;g!==void 0&&(h.minLength=g),v!==void 0&&(h.maxLength=v),y?y.length===1?(h.contentMediaType=y[0],Object.assign(p,h)):p.anyOf=y.map(k=>({...h,contentMediaType:k})):Object.assign(p,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);m.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=m;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,m.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(m._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}m.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let p=m,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=h.source;break}case"pipe":{let p=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,m.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,d),a.ref=p;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&Ee(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(y=>y);if(h)return{ref:g(h)};let v=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=v,{defId:v,ref:`${g("__shared")}#/${d}/${v}`}}if(l[1]===o)return{ref:"#"};let m=`#/${d}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:m+p}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:f,defId:m}=s(l);d.def={...d.schema},m&&(d.defId=m);let p=d.schema;for(let h in p)delete p[h];p.$ref=f};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
70
52
 
71
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let f=n.external.registry.get(l[0])?.id;if(e!==l[0]&&f){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let m=this.seen.get(l),f=m.def??m.schema,p={...f};if(m.ref===null)return;let h=m.ref;if(m.ref=null,h){a(h,d);let g=this.seen.get(h).schema;g.$ref&&d.target==="draft-7"?(f.allOf=f.allOf??[],f.allOf.push(g)):(Object.assign(f,g),Object.assign(f,p))}m.isParent||this.override({zodSchema:l,jsonSchema:f,path:m.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}};function Zu(t,e){if(t instanceof ko){let n=new Ys(e),o={};for(let a of t._idmap.entries()){let[c,u]=a;n.process(u)}let s={},i={registry:t,uri:e?.uri,defs:o};for(let a of t._idmap.entries()){let[c,u]=a;s[c]=n.emit(u,{...e,external:i})}if(Object.keys(o).length>0){let a=n.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[a]:o}}return{schemas:s}}let r=new Ys(e);return r.process(t),r.emit(t,e)}function Ee(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let o=t._zod.def;switch(o.type){case"string":case"number":case"bigint":case"boolean":case"date":case"symbol":case"undefined":case"null":case"any":case"unknown":case"never":case"void":case"literal":case"enum":case"nan":case"file":case"template_literal":return!1;case"array":return Ee(o.element,r);case"object":{for(let s in o.shape)if(Ee(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Ee(s,r))return!0;return!1}case"intersection":return Ee(o.left,r)||Ee(o.right,r);case"tuple":{for(let s of o.items)if(Ee(s,r))return!0;return!!(o.rest&&Ee(o.rest,r))}case"record":return Ee(o.keyType,r)||Ee(o.valueType,r);case"map":return Ee(o.keyType,r)||Ee(o.valueType,r);case"set":return Ee(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Ee(o.innerType,r);case"lazy":return Ee(o.getter(),r);case"default":return Ee(o.innerType,r);case"prefault":return Ee(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Ee(o.in,r)||Ee(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var ub=x("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");re.init(t,e),t.def=e,t.parse=(r,n)=>oc(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>qr(t,r,n),t.parseAsync=async(r,n)=>ic(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Fr(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>ot(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var lb=x("ZodMiniObject",(t,e)=>{qs.init(t,e),ub.init(t,e),J.defineLazy(t,"shape",()=>e.shape)});function Uu(t,e){let r={type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},...J.normalizeParams(e)};return new lb(r)}function ct(t){return!!t._zod}function Kr(t){let e=Object.values(t);if(e.length===0)return Uu({});let r=e.every(ct),n=e.every(o=>!ct(o));if(r)return Uu(t);if(n)return Fa(t);throw new Error("Mixed Zod versions detected in object shape.")}function ir(t,e){return ct(t)?qr(t,e):t.safeParse(e)}async function Xs(t,e){return ct(t)?await Fr(t,e):await t.safeParseAsync(e)}function ar(t){if(!t)return;let e;if(ct(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function Tn(t){if(t){if(typeof t=="object"){let e=t,r=t;if(!e._def&&!r._zod){let n=Object.values(t);if(n.length>0&&n.every(o=>typeof o=="object"&&o!==null&&(o._def!==void 0||o._zod!==void 0||typeof o.parse=="function")))return Kr(t)}}if(ct(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function Qs(t){if(t&&typeof t=="object"){if("message"in t&&typeof t.message=="string")return t.message;if("issues"in t&&Array.isArray(t.issues)&&t.issues.length>0){let e=t.issues[0];if(e&&typeof e=="object"&&"message"in e)return String(e.message)}try{return JSON.stringify(t)}catch{return String(t)}}return String(t)}function Um(t){return t.description}function Hm(t){if(ct(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function ei(t){if(ct(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var Eo={};Ve(Eo,{ZodISODate:()=>Fm,ZodISODateTime:()=>qm,ZodISODuration:()=>Vm,ZodISOTime:()=>Bm,date:()=>qu,datetime:()=>Hu,duration:()=>Bu,time:()=>Fu});var qm=x("ZodISODateTime",(t,e)=>{Pm.init(t,e),he.init(t,e)});function Hu(t){return Am(qm,t)}var Fm=x("ZodISODate",(t,e)=>{Rm.init(t,e),he.init(t,e)});function qu(t){return jm(Fm,t)}var Bm=x("ZodISOTime",(t,e)=>{Om.init(t,e),he.init(t,e)});function Fu(t){return Mm(Bm,t)}var Vm=x("ZodISODuration",(t,e)=>{Cm.init(t,e),he.init(t,e)});function Bu(t){return Lm(Vm,t)}var Km=(t,e)=>{Ls.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>rc(t,r)},flatten:{value:r=>tc(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},nN=x("ZodError",Km),To=x("ZodError",Km,{Parent:Error});var Jm=nc(To),Gm=sc(To),Wm=ac(To),Ym=cc(To);var ve=x("ZodType",(t,e)=>(re.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>ot(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>Jm(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Wm(t,r,n),t.parseAsync=async(r,n)=>Gm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Ym(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(aw(r,n)),t.superRefine=r=>t.check(cw(r)),t.overwrite=r=>t.check(Br(r)),t.optional=()=>xe(t),t.nullable=()=>eh(t),t.nullish=()=>xe(eh(t)),t.nonoptional=r=>ew(t,r),t.array=()=>G(t),t.or=r=>de([t,r]),t.and=r=>ri(t,r),t.transform=r=>Ku(t,sh(r)),t.default=r=>Yb(t,r),t.prefault=r=>Qb(t,r),t.catch=r=>rw(t,r),t.pipe=r=>Ku(t,r),t.readonly=()=>sw(t),t.describe=r=>{let n=t.clone();return sr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return sr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return sr.get(t);let n=t.clone();return sr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),th=x("_ZodString",(t,e)=>{So.init(t,e),ve.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(Pu(...n)),t.includes=(...n)=>t.check(Cu(...n)),t.startsWith=(...n)=>t.check(Iu(...n)),t.endsWith=(...n)=>t.check(zu(...n)),t.min=(...n)=>t.check(En(...n)),t.max=(...n)=>t.check(Gs(...n)),t.length=(...n)=>t.check(Ws(...n)),t.nonempty=(...n)=>t.check(En(1,...n)),t.lowercase=n=>t.check(Ru(n)),t.uppercase=n=>t.check(Ou(n)),t.trim=()=>t.check(Au()),t.normalize=(...n)=>t.check(Nu(...n)),t.toLowerCase=()=>t.check(ju()),t.toUpperCase=()=>t.check(Mu())}),xb=x("ZodString",(t,e)=>{So.init(t,e),th.init(t,e),t.email=r=>t.check(tu(vb,r)),t.url=r=>t.check(iu(Sb,r)),t.jwt=r=>t.check(Su(jb,r)),t.emoji=r=>t.check(au(kb,r)),t.guid=r=>t.check(Bs(Xm,r)),t.uuid=r=>t.check(ru(ti,r)),t.uuidv4=r=>t.check(nu(ti,r)),t.uuidv6=r=>t.check(ou(ti,r)),t.uuidv7=r=>t.check(su(ti,r)),t.nanoid=r=>t.check(cu(bb,r)),t.guid=r=>t.check(Bs(Xm,r)),t.cuid=r=>t.check(uu(wb,r)),t.cuid2=r=>t.check(lu(Eb,r)),t.ulid=r=>t.check(du(Tb,r)),t.base64=r=>t.check(yu(zb,r)),t.base64url=r=>t.check(xu(Nb,r)),t.xid=r=>t.check(pu($b,r)),t.ksuid=r=>t.check(fu(Pb,r)),t.ipv4=r=>t.check(mu(Rb,r)),t.ipv6=r=>t.check(hu(Ob,r)),t.cidrv4=r=>t.check(gu(Cb,r)),t.cidrv6=r=>t.check(_u(Ib,r)),t.e164=r=>t.check(vu(Ab,r)),t.datetime=r=>t.check(Hu(r)),t.date=r=>t.check(qu(r)),t.time=r=>t.check(Fu(r)),t.duration=r=>t.check(Bu(r))});function _(t){return eu(xb,t)}var he=x("ZodStringFormat",(t,e)=>{le.init(t,e),th.init(t,e)}),vb=x("ZodEmail",(t,e)=>{gc.init(t,e),he.init(t,e)});var Xm=x("ZodGUID",(t,e)=>{mc.init(t,e),he.init(t,e)});var ti=x("ZodUUID",(t,e)=>{hc.init(t,e),he.init(t,e)});var Sb=x("ZodURL",(t,e)=>{_c.init(t,e),he.init(t,e)});var kb=x("ZodEmoji",(t,e)=>{yc.init(t,e),he.init(t,e)});var bb=x("ZodNanoID",(t,e)=>{xc.init(t,e),he.init(t,e)});var wb=x("ZodCUID",(t,e)=>{vc.init(t,e),he.init(t,e)});var Eb=x("ZodCUID2",(t,e)=>{Sc.init(t,e),he.init(t,e)});var Tb=x("ZodULID",(t,e)=>{kc.init(t,e),he.init(t,e)});var $b=x("ZodXID",(t,e)=>{bc.init(t,e),he.init(t,e)});var Pb=x("ZodKSUID",(t,e)=>{wc.init(t,e),he.init(t,e)});var Rb=x("ZodIPv4",(t,e)=>{Ec.init(t,e),he.init(t,e)});var Ob=x("ZodIPv6",(t,e)=>{Tc.init(t,e),he.init(t,e)});var Cb=x("ZodCIDRv4",(t,e)=>{$c.init(t,e),he.init(t,e)});var Ib=x("ZodCIDRv6",(t,e)=>{Pc.init(t,e),he.init(t,e)});var zb=x("ZodBase64",(t,e)=>{Rc.init(t,e),he.init(t,e)});var Nb=x("ZodBase64URL",(t,e)=>{Oc.init(t,e),he.init(t,e)});var Ab=x("ZodE164",(t,e)=>{Cc.init(t,e),he.init(t,e)});var jb=x("ZodJWT",(t,e)=>{Ic.init(t,e),he.init(t,e)});var rh=x("ZodNumber",(t,e)=>{Hs.init(t,e),ve.init(t,e),t.gt=(n,o)=>t.check(Ks(n,o)),t.gte=(n,o)=>t.check(wo(n,o)),t.min=(n,o)=>t.check(wo(n,o)),t.lt=(n,o)=>t.check(Vs(n,o)),t.lte=(n,o)=>t.check(bo(n,o)),t.max=(n,o)=>t.check(bo(n,o)),t.int=n=>t.check(Qm(n)),t.safe=n=>t.check(Qm(n)),t.positive=n=>t.check(Ks(0,n)),t.nonnegative=n=>t.check(wo(0,n)),t.negative=n=>t.check(Vs(0,n)),t.nonpositive=n=>t.check(bo(0,n)),t.multipleOf=(n,o)=>t.check(Js(n,o)),t.step=(n,o)=>t.check(Js(n,o)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function te(t){return ku(rh,t)}var Mb=x("ZodNumberFormat",(t,e)=>{zc.init(t,e),rh.init(t,e)});function Qm(t){return bu(Mb,t)}var Lb=x("ZodBoolean",(t,e)=>{Nc.init(t,e),ve.init(t,e)});function Te(t){return wu(Lb,t)}var Db=x("ZodNull",(t,e)=>{Ac.init(t,e),ve.init(t,e)});function Ju(t){return Eu(Db,t)}var Zb=x("ZodUnknown",(t,e)=>{jc.init(t,e),ve.init(t,e)});function ge(){return Tu(Zb)}var Ub=x("ZodNever",(t,e)=>{Mc.init(t,e),ve.init(t,e)});function Hb(t){return $u(Ub,t)}var qb=x("ZodArray",(t,e)=>{Lc.init(t,e),ve.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(En(r,n)),t.nonempty=r=>t.check(En(1,r)),t.max=(r,n)=>t.check(Gs(r,n)),t.length=(r,n)=>t.check(Ws(r,n)),t.unwrap=()=>t.element});function G(t,e){return Dm(qb,t,e)}var nh=x("ZodObject",(t,e)=>{qs.init(t,e),ve.init(t,e),J.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>We(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:ge()}),t.loose=()=>t.clone({...t._zod.def,catchall:ge()}),t.strict=()=>t.clone({...t._zod.def,catchall:Hb()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>J.extend(t,r),t.merge=r=>J.merge(t,r),t.pick=r=>J.pick(t,r),t.omit=r=>J.omit(t,r),t.partial=(...r)=>J.partial(ih,t,r[0]),t.required=(...r)=>J.required(ah,t,r[0])});function P(t,e){let r={type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},...J.normalizeParams(e)};return new nh(r)}function Ue(t,e){return new nh({type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},catchall:ge(),...J.normalizeParams(e)})}var oh=x("ZodUnion",(t,e)=>{Fs.init(t,e),ve.init(t,e),t.options=e.options});function de(t,e){return new oh({type:"union",options:t,...J.normalizeParams(e)})}var Fb=x("ZodDiscriminatedUnion",(t,e)=>{oh.init(t,e),Dc.init(t,e)});function Gu(t,e,r){return new Fb({type:"union",options:e,discriminator:t,...J.normalizeParams(r)})}var Bb=x("ZodIntersection",(t,e)=>{Zc.init(t,e),ve.init(t,e)});function ri(t,e){return new Bb({type:"intersection",left:t,right:e})}var Vb=x("ZodRecord",(t,e)=>{Uc.init(t,e),ve.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function _e(t,e,r){return new Vb({type:"record",keyType:t,valueType:e,...J.normalizeParams(r)})}var Vu=x("ZodEnum",(t,e)=>{Hc.init(t,e),ve.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=e.entries[i];else throw new Error(`Key ${i} not found in enum`);return new Vu({...e,checks:[],...J.normalizeParams(o),entries:s})},t.exclude=(n,o)=>{let s={...e.entries};for(let i of n)if(r.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new Vu({...e,checks:[],...J.normalizeParams(o),entries:s})}});function We(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Vu({type:"enum",entries:r,...J.normalizeParams(e)})}var Kb=x("ZodLiteral",(t,e)=>{qc.init(t,e),ve.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function I(t,e){return new Kb({type:"literal",values:Array.isArray(t)?t:[t],...J.normalizeParams(e)})}var Jb=x("ZodTransform",(t,e)=>{Fc.init(t,e),ve.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(J.issue(s,r.value,e));else{let i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=t),i.continue??(i.continue=!0),r.issues.push(J.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});function sh(t){return new Jb({type:"transform",transform:t})}var ih=x("ZodOptional",(t,e)=>{Bc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function xe(t){return new ih({type:"optional",innerType:t})}var Gb=x("ZodNullable",(t,e)=>{Vc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function eh(t){return new Gb({type:"nullable",innerType:t})}var Wb=x("ZodDefault",(t,e)=>{Kc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Yb(t,e){return new Wb({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Xb=x("ZodPrefault",(t,e)=>{Jc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Qb(t,e){return new Xb({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var ah=x("ZodNonOptional",(t,e)=>{Gc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ew(t,e){return new ah({type:"nonoptional",innerType:t,...J.normalizeParams(e)})}var tw=x("ZodCatch",(t,e)=>{Wc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function rw(t,e){return new tw({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var nw=x("ZodPipe",(t,e)=>{Yc.init(t,e),ve.init(t,e),t.in=e.in,t.out=e.out});function Ku(t,e){return new nw({type:"pipe",in:t,out:e})}var ow=x("ZodReadonly",(t,e)=>{Xc.init(t,e),ve.init(t,e)});function sw(t){return new ow({type:"readonly",innerType:t})}var ch=x("ZodCustom",(t,e)=>{Qc.init(t,e),ve.init(t,e)});function iw(t){let e=new Re({check:"custom"});return e._zod.check=t,e}function uh(t,e){return Lu(ch,t??(()=>!0),e)}function aw(t,e={}){return Du(ch,t,e)}function cw(t){let e=iw(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(J.issue(n,r.value,e._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=e),o.continue??(o.continue=!e._zod.def.abort),r.issues.push(J.issue(o))}},t(r.value,r)));return e}function Wu(t,e){return Ku(sh(t),e)}nt(zm());var Xu="2025-11-25";var lh=[Xu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],cr="io.modelcontextprotocol/related-task",oi="2.0",Oe=uh(t=>t!==null&&(typeof t=="object"||typeof t=="function")),dh=de([_(),te().int()]),ph=_(),_N=Ue({ttl:de([te(),Ju()]).optional(),pollInterval:te().optional()}),uw=P({ttl:te().optional()}),lw=P({taskId:_()}),Qu=Ue({progressToken:dh.optional(),[cr]:lw.optional()}),st=P({_meta:Qu.optional()}),$o=st.extend({task:uw.optional()}),fh=t=>$o.safeParse(t).success,Ce=P({method:_(),params:st.loose().optional()}),ut=P({_meta:Qu.optional()}),lt=P({method:_(),params:ut.loose().optional()}),Ie=Ue({_meta:Qu.optional()}),si=de([_(),te().int()]),mh=P({jsonrpc:I(oi),id:si,...Ce.shape}).strict(),el=t=>mh.safeParse(t).success,hh=P({jsonrpc:I(oi),...lt.shape}).strict(),gh=t=>hh.safeParse(t).success,tl=P({jsonrpc:I(oi),id:si,result:Ie}).strict(),Po=t=>tl.safeParse(t).success;var N;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(N||(N={}));var rl=P({jsonrpc:I(oi),id:si.optional(),error:P({code:te().int(),message:_(),data:ge().optional()})}).strict();var _h=t=>rl.safeParse(t).success;var yh=de([mh,hh,tl,rl]),yN=de([tl,rl]),ii=Ie.strict(),dw=ut.extend({requestId:si.optional(),reason:_().optional()}),ai=lt.extend({method:I("notifications/cancelled"),params:dw}),pw=P({src:_(),mimeType:_().optional(),sizes:G(_()).optional(),theme:We(["light","dark"]).optional()}),Ro=P({icons:G(pw).optional()}),$n=P({name:_(),title:_().optional()}),xh=$n.extend({...$n.shape,...Ro.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),fw=ri(P({applyDefaults:Te().optional()}),_e(_(),ge())),mw=Wu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ri(P({form:fw.optional(),url:Oe.optional()}),_e(_(),ge()).optional())),hw=Ue({list:Oe.optional(),cancel:Oe.optional(),requests:Ue({sampling:Ue({createMessage:Oe.optional()}).optional(),elicitation:Ue({create:Oe.optional()}).optional()}).optional()}),gw=Ue({list:Oe.optional(),cancel:Oe.optional(),requests:Ue({tools:Ue({call:Oe.optional()}).optional()}).optional()}),_w=P({experimental:_e(_(),Oe).optional(),sampling:P({context:Oe.optional(),tools:Oe.optional()}).optional(),elicitation:mw.optional(),roots:P({listChanged:Te().optional()}).optional(),tasks:hw.optional()}),yw=st.extend({protocolVersion:_(),capabilities:_w,clientInfo:xh}),nl=Ce.extend({method:I("initialize"),params:yw});var xw=P({experimental:_e(_(),Oe).optional(),logging:Oe.optional(),completions:Oe.optional(),prompts:P({listChanged:Te().optional()}).optional(),resources:P({subscribe:Te().optional(),listChanged:Te().optional()}).optional(),tools:P({listChanged:Te().optional()}).optional(),tasks:gw.optional()}),vw=Ie.extend({protocolVersion:_(),capabilities:xw,serverInfo:xh,instructions:_().optional()}),ol=lt.extend({method:I("notifications/initialized"),params:ut.optional()});var ci=Ce.extend({method:I("ping"),params:st.optional()}),Sw=P({progress:te(),total:xe(te()),message:xe(_())}),kw=P({...ut.shape,...Sw.shape,progressToken:dh}),ui=lt.extend({method:I("notifications/progress"),params:kw}),bw=st.extend({cursor:ph.optional()}),Oo=Ce.extend({params:bw.optional()}),Co=Ie.extend({nextCursor:ph.optional()}),ww=We(["working","input_required","completed","failed","cancelled"]),Io=P({taskId:_(),status:ww,ttl:de([te(),Ju()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:xe(te()),statusMessage:xe(_())}),Pn=Ie.extend({task:Io}),Ew=ut.merge(Io),zo=lt.extend({method:I("notifications/tasks/status"),params:Ew}),li=Ce.extend({method:I("tasks/get"),params:st.extend({taskId:_()})}),di=Ie.merge(Io),pi=Ce.extend({method:I("tasks/result"),params:st.extend({taskId:_()})}),xN=Ie.loose(),fi=Oo.extend({method:I("tasks/list")}),mi=Co.extend({tasks:G(Io)}),hi=Ce.extend({method:I("tasks/cancel"),params:st.extend({taskId:_()})}),vh=Ie.merge(Io),Sh=P({uri:_(),mimeType:xe(_()),_meta:_e(_(),ge()).optional()}),kh=Sh.extend({text:_()}),sl=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),bh=Sh.extend({blob:sl}),No=We(["user","assistant"]),Rn=P({audience:G(No).optional(),priority:te().min(0).max(1).optional(),lastModified:Eo.datetime({offset:!0}).optional()}),wh=P({...$n.shape,...Ro.shape,uri:_(),description:xe(_()),mimeType:xe(_()),annotations:Rn.optional(),_meta:xe(Ue({}))}),Tw=P({...$n.shape,...Ro.shape,uriTemplate:_(),description:xe(_()),mimeType:xe(_()),annotations:Rn.optional(),_meta:xe(Ue({}))}),On=Oo.extend({method:I("resources/list")}),$w=Co.extend({resources:G(wh)}),Cn=Oo.extend({method:I("resources/templates/list")}),Pw=Co.extend({resourceTemplates:G(Tw)}),il=st.extend({uri:_()}),Rw=il,gi=Ce.extend({method:I("resources/read"),params:Rw}),Ow=Ie.extend({contents:G(de([kh,bh]))}),Cw=lt.extend({method:I("notifications/resources/list_changed"),params:ut.optional()}),Iw=il,zw=Ce.extend({method:I("resources/subscribe"),params:Iw}),Nw=il,Aw=Ce.extend({method:I("resources/unsubscribe"),params:Nw}),jw=ut.extend({uri:_()}),Mw=lt.extend({method:I("notifications/resources/updated"),params:jw}),Lw=P({name:_(),description:xe(_()),required:xe(Te())}),Dw=P({...$n.shape,...Ro.shape,description:xe(_()),arguments:xe(G(Lw)),_meta:xe(Ue({}))}),In=Oo.extend({method:I("prompts/list")}),Zw=Co.extend({prompts:G(Dw)}),Uw=st.extend({name:_(),arguments:_e(_(),_()).optional()}),_i=Ce.extend({method:I("prompts/get"),params:Uw}),al=P({type:I("text"),text:_(),annotations:Rn.optional(),_meta:_e(_(),ge()).optional()}),cl=P({type:I("image"),data:sl,mimeType:_(),annotations:Rn.optional(),_meta:_e(_(),ge()).optional()}),ul=P({type:I("audio"),data:sl,mimeType:_(),annotations:Rn.optional(),_meta:_e(_(),ge()).optional()}),Hw=P({type:I("tool_use"),name:_(),id:_(),input:_e(_(),ge()),_meta:_e(_(),ge()).optional()}),qw=P({type:I("resource"),resource:de([kh,bh]),annotations:Rn.optional(),_meta:_e(_(),ge()).optional()}),Fw=wh.extend({type:I("resource_link")}),ll=de([al,cl,ul,Fw,qw]),Bw=P({role:No,content:ll}),Vw=Ie.extend({description:_().optional(),messages:G(Bw)}),Kw=lt.extend({method:I("notifications/prompts/list_changed"),params:ut.optional()}),Jw=P({title:_().optional(),readOnlyHint:Te().optional(),destructiveHint:Te().optional(),idempotentHint:Te().optional(),openWorldHint:Te().optional()}),Gw=P({taskSupport:We(["required","optional","forbidden"]).optional()}),Eh=P({...$n.shape,...Ro.shape,description:_().optional(),inputSchema:P({type:I("object"),properties:_e(_(),Oe).optional(),required:G(_()).optional()}).catchall(ge()),outputSchema:P({type:I("object"),properties:_e(_(),Oe).optional(),required:G(_()).optional()}).catchall(ge()).optional(),annotations:Jw.optional(),execution:Gw.optional(),_meta:_e(_(),ge()).optional()}),yi=Oo.extend({method:I("tools/list")}),Ww=Co.extend({tools:G(Eh)}),xi=Ie.extend({content:G(ll).default([]),structuredContent:_e(_(),ge()).optional(),isError:Te().optional()}),vN=xi.or(Ie.extend({toolResult:ge()})),Yw=$o.extend({name:_(),arguments:_e(_(),ge()).optional()}),zn=Ce.extend({method:I("tools/call"),params:Yw}),Xw=lt.extend({method:I("notifications/tools/list_changed"),params:ut.optional()}),SN=P({autoRefresh:Te().default(!0),debounceMs:te().int().nonnegative().default(300)}),Ao=We(["debug","info","notice","warning","error","critical","alert","emergency"]),Qw=st.extend({level:Ao}),dl=Ce.extend({method:I("logging/setLevel"),params:Qw}),eE=ut.extend({level:Ao,logger:_().optional(),data:ge()}),tE=lt.extend({method:I("notifications/message"),params:eE}),rE=P({name:_().optional()}),nE=P({hints:G(rE).optional(),costPriority:te().min(0).max(1).optional(),speedPriority:te().min(0).max(1).optional(),intelligencePriority:te().min(0).max(1).optional()}),oE=P({mode:We(["auto","required","none"]).optional()}),sE=P({type:I("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:G(ll).default([]),structuredContent:P({}).loose().optional(),isError:Te().optional(),_meta:_e(_(),ge()).optional()}),iE=Gu("type",[al,cl,ul]),ni=Gu("type",[al,cl,ul,Hw,sE]),aE=P({role:No,content:de([ni,G(ni)]),_meta:_e(_(),ge()).optional()}),cE=$o.extend({messages:G(aE),modelPreferences:nE.optional(),systemPrompt:_().optional(),includeContext:We(["none","thisServer","allServers"]).optional(),temperature:te().optional(),maxTokens:te().int(),stopSequences:G(_()).optional(),metadata:Oe.optional(),tools:G(Eh).optional(),toolChoice:oE.optional()}),uE=Ce.extend({method:I("sampling/createMessage"),params:cE}),pl=Ie.extend({model:_(),stopReason:xe(We(["endTurn","stopSequence","maxTokens"]).or(_())),role:No,content:iE}),fl=Ie.extend({model:_(),stopReason:xe(We(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:No,content:de([ni,G(ni)])}),lE=P({type:I("boolean"),title:_().optional(),description:_().optional(),default:Te().optional()}),dE=P({type:I("string"),title:_().optional(),description:_().optional(),minLength:te().optional(),maxLength:te().optional(),format:We(["email","uri","date","date-time"]).optional(),default:_().optional()}),pE=P({type:We(["number","integer"]),title:_().optional(),description:_().optional(),minimum:te().optional(),maximum:te().optional(),default:te().optional()}),fE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:G(_()),default:_().optional()}),mE=P({type:I("string"),title:_().optional(),description:_().optional(),oneOf:G(P({const:_(),title:_()})),default:_().optional()}),hE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:G(_()),enumNames:G(_()).optional(),default:_().optional()}),gE=de([fE,mE]),_E=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({type:I("string"),enum:G(_())}),default:G(_()).optional()}),yE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({anyOf:G(P({const:_(),title:_()}))}),default:G(_()).optional()}),xE=de([_E,yE]),vE=de([hE,gE,xE]),SE=de([vE,lE,dE,pE]),kE=$o.extend({mode:I("form").optional(),message:_(),requestedSchema:P({type:I("object"),properties:_e(_(),SE),required:G(_()).optional()})}),bE=$o.extend({mode:I("url"),message:_(),elicitationId:_(),url:_().url()}),wE=de([kE,bE]),EE=Ce.extend({method:I("elicitation/create"),params:wE}),TE=ut.extend({elicitationId:_()}),$E=lt.extend({method:I("notifications/elicitation/complete"),params:TE}),vi=Ie.extend({action:We(["accept","decline","cancel"]),content:Wu(t=>t===null?void 0:t,_e(_(),de([_(),te(),Te(),G(_())])).optional())}),PE=P({type:I("ref/resource"),uri:_()});var RE=P({type:I("ref/prompt"),name:_()}),OE=st.extend({ref:de([RE,PE]),argument:P({name:_(),value:_()}),context:P({arguments:_e(_(),_()).optional()}).optional()}),Si=Ce.extend({method:I("completion/complete"),params:OE});function Th(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function $h(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var CE=Ie.extend({completion:Ue({values:G(_()).max(100),total:xe(te().int()),hasMore:xe(Te())})}),IE=P({uri:_().startsWith("file://"),name:_().optional(),_meta:_e(_(),ge()).optional()}),zE=Ce.extend({method:I("roots/list"),params:st.optional()}),ml=Ie.extend({roots:G(IE)}),NE=lt.extend({method:I("notifications/roots/list_changed"),params:ut.optional()}),kN=de([ci,nl,Si,dl,_i,In,On,Cn,gi,zw,Aw,zn,yi,li,pi,fi,hi]),bN=de([ai,ui,ol,NE,zo]),wN=de([ii,pl,fl,vi,ml,di,mi,Pn]),EN=de([ci,uE,EE,zE,li,pi,fi,hi]),TN=de([ai,ui,tE,Mw,Cw,Xw,Kw,zo,$E]),$N=de([ii,vw,CE,Vw,Zw,$w,Pw,Ow,xi,Ww,di,mi,Pn]),C=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===N.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Yu(o.elicitations,r)}return new t(e,r,n)}},Yu=class extends C{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(N.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function ur(t){return t==="completed"||t==="failed"||t==="cancelled"}var Rh=Symbol("Let zodToJsonSchema decide on which parser to use");var Ph={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},Oh=t=>typeof t=="string"?{...Ph,name:t}:{...Ph,...t};var Ch=t=>{let e=Oh(t),r=e.name!==void 0?[...e.basePath,e.definitionPath,e.name]:e.basePath;return{...e,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(e.definitions).map(([n,o])=>[o._def,{def:o._def,path:[...e.basePath,e.definitionPath,n],jsonSchema:void 0}]))}};function hl(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function W(t,e,r,n,o){t[e]=r,hl(t,e,n,o)}var ki=(t,e)=>{let r=0;for(;r<t.length&&r<e.length&&t[r]===e[r];r++);return[(t.length-r).toString(),...e.slice(r)].join("/")};function ye(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?ki(e,t.currentPath):e.join("/")}}function Ih(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==b.ZodAny&&(r.items=M(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&W(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&W(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(W(r,"minItems",t.exactLength.value,t.exactLength.message,e),W(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function zh(t,e){let r={type:"integer",format:"int64"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"min":e.target==="jsonSchema7"?n.inclusive?W(r,"minimum",n.value,n.message,e):W(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),W(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?W(r,"maximum",n.value,n.message,e):W(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),W(r,"maximum",n.value,n.message,e));break;case"multipleOf":W(r,"multipleOf",n.value,n.message,e);break}return r}function Nh(){return{type:"boolean"}}function bi(t,e){return M(t.type._def,e)}var Ah=(t,e)=>M(t.innerType._def,e);function gl(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>gl(t,e,o))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return AE(t,e)}}var AE=(t,e)=>{let r={type:"integer",format:"unix-time"};if(e.target==="openApi3")return r;for(let n of t.checks)switch(n.kind){case"min":W(r,"minimum",n.value,n.message,e);break;case"max":W(r,"maximum",n.value,n.message,e);break}return r};function jh(t,e){return{...M(t.innerType._def,e),default:t.defaultValue()}}function Mh(t,e){return e.effectStrategy==="input"?M(t.schema._def,e):ye(e)}function Lh(t){return{type:"string",enum:Array.from(t.values)}}var jE=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Dh(t,e){let r=[M(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),M(t.right._def,{...e,currentPath:[...e.currentPath,"allOf","1"]})].filter(s=>!!s),n=e.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,o=[];return r.forEach(s=>{if(jE(s))o.push(...s.allOf),s.unevaluatedProperties===void 0&&(n=void 0);else{let i=s;if("additionalProperties"in s&&s.additionalProperties===!1){let{additionalProperties:a,...c}=s;i=c}else n=void 0;o.push(i)}}),o.length?{allOf:o,...n}:void 0}function Zh(t,e){let r=typeof t.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(t.value)?"array":"object"}:e.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[t.value]}:{type:r==="bigint"?"integer":r,const:t.value}}var _l,yt={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(_l===void 0&&(_l=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),_l),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function wi(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":W(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":W(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":xt(r,"email",n.message,e);break;case"format:idn-email":xt(r,"idn-email",n.message,e);break;case"pattern:zod":He(r,yt.email,n.message,e);break}break;case"url":xt(r,"uri",n.message,e);break;case"uuid":xt(r,"uuid",n.message,e);break;case"regex":He(r,n.regex,n.message,e);break;case"cuid":He(r,yt.cuid,n.message,e);break;case"cuid2":He(r,yt.cuid2,n.message,e);break;case"startsWith":He(r,RegExp(`^${yl(n.value,e)}`),n.message,e);break;case"endsWith":He(r,RegExp(`${yl(n.value,e)}$`),n.message,e);break;case"datetime":xt(r,"date-time",n.message,e);break;case"date":xt(r,"date",n.message,e);break;case"time":xt(r,"time",n.message,e);break;case"duration":xt(r,"duration",n.message,e);break;case"length":W(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),W(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{He(r,RegExp(yl(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&xt(r,"ipv4",n.message,e),n.version!=="v4"&&xt(r,"ipv6",n.message,e);break}case"base64url":He(r,yt.base64url,n.message,e);break;case"jwt":He(r,yt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&He(r,yt.ipv4Cidr,n.message,e),n.version!=="v4"&&He(r,yt.ipv6Cidr,n.message,e);break}case"emoji":He(r,yt.emoji(),n.message,e);break;case"ulid":{He(r,yt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{xt(r,"binary",n.message,e);break}case"contentEncoding:base64":{W(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{He(r,yt.base64,n.message,e);break}}break}case"nanoid":He(r,yt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function yl(t,e){return e.patternStrategy==="escape"?LE(t):t}var ME=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function LE(t){let e="";for(let r=0;r<t.length;r++)ME.has(t[r])||(e+="\\"),e+=t[r];return e}function xt(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):W(t,"format",e,r,n)}function He(t,e,r,n){t.pattern||t.allOf?.some(o=>o.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&n.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:Uh(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):W(t,"pattern",Uh(e,n),r,n)}function Uh(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},n=r.i?t.source.toLowerCase():t.source,o="",s=!1,i=!1,a=!1;for(let c=0;c<n.length;c++){if(s){o+=n[c],s=!1;continue}if(r.i){if(i){if(n[c].match(/[a-z]/)){a?(o+=n[c],o+=`${n[c-2]}-${n[c]}`.toUpperCase(),a=!1):n[c+1]==="-"&&n[c+2]?.match(/[a-z]/)?(o+=n[c],a=!0):o+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){o+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(r.m){if(n[c]==="^"){o+=`(^|(?<=[\r
53
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let m=n.external.registry.get(l[0])?.id;if(e!==l[0]&&m){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let f=this.seen.get(l),m=f.def??f.schema,p={...m};if(f.ref===null)return;let h=f.ref;if(f.ref=null,h){a(h,d);let g=this.seen.get(h).schema;g.$ref&&d.target==="draft-7"?(m.allOf=m.allOf??[],m.allOf.push(g)):(Object.assign(m,g),Object.assign(m,p))}f.isParent||this.override({zodSchema:l,jsonSchema:m,path:f.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}};function $u(t,e){if(t instanceof _o){let n=new Bs(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 Bs(e);return r.process(t),r.emit(t,e)}function Ee(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let o=t._zod.def;switch(o.type){case"string":case"number":case"bigint":case"boolean":case"date":case"symbol":case"undefined":case"null":case"any":case"unknown":case"never":case"void":case"literal":case"enum":case"nan":case"file":case"template_literal":return!1;case"array":return Ee(o.element,r);case"object":{for(let s in o.shape)if(Ee(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Ee(s,r))return!0;return!1}case"intersection":return Ee(o.left,r)||Ee(o.right,r);case"tuple":{for(let s of o.items)if(Ee(s,r))return!0;return!!(o.rest&&Ee(o.rest,r))}case"record":return Ee(o.keyType,r)||Ee(o.valueType,r);case"map":return Ee(o.keyType,r)||Ee(o.valueType,r);case"set":return Ee(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Ee(o.innerType,r);case"lazy":return Ee(o.getter(),r);case"default":return Ee(o.innerType,r);case"prefault":return Ee(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Ee(o.in,r)||Ee(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var pb=x("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");re.init(t,e),t.def=e,t.parse=(r,n)=>Ba(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Dr(t,r,n),t.parseAsync=async(r,n)=>Ka(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Lr(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)=>rt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var fb=x("ZodMiniObject",(t,e)=>{Ms.init(t,e),pb.init(t,e),J.defineLazy(t,"shape",()=>e.shape)});function Pu(t,e){let r={type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},...J.normalizeParams(e)};return new fb(r)}function at(t){return!!t._zod}function Hr(t){let e=Object.values(t);if(e.length===0)return Pu({});let r=e.every(at),n=e.every(o=>!at(o));if(r)return Pu(t);if(n)return Ca(t);throw new Error("Mixed Zod versions detected in object shape.")}function nr(t,e){return at(t)?Dr(t,e):t.safeParse(e)}async function Vs(t,e){return at(t)?await Lr(t,e):await t.safeParseAsync(e)}function or(t){if(!t)return;let e;if(at(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function Sn(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 Hr(t)}}if(at(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function Ks(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 Rm(t){return t.description}function Om(t){if(at(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Js(t){if(at(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var vo={};Ve(vo,{ZodISODate:()=>Im,ZodISODateTime:()=>Cm,ZodISODuration:()=>Nm,ZodISOTime:()=>zm,date:()=>Ou,datetime:()=>Ru,duration:()=>Iu,time:()=>Cu});var Cm=x("ZodISODateTime",(t,e)=>{gm.init(t,e),fe.init(t,e)});function Ru(t){return bm(Cm,t)}var Im=x("ZodISODate",(t,e)=>{_m.init(t,e),fe.init(t,e)});function Ou(t){return wm(Im,t)}var zm=x("ZodISOTime",(t,e)=>{ym.init(t,e),fe.init(t,e)});function Cu(t){return Em(zm,t)}var Nm=x("ZodISODuration",(t,e)=>{xm.init(t,e),fe.init(t,e)});function Iu(t){return Tm(Nm,t)}var Am=(t,e)=>{Is.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>qa(t,r)},flatten:{value:r=>Ha(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},fN=x("ZodError",Am),ko=x("ZodError",Am,{Parent:Error});var jm=Fa(ko),Mm=Va(ko),Dm=Ja(ko),Lm=Wa(ko);var _e=x("ZodType",(t,e)=>(re.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>rt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>jm(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Dm(t,r,n),t.parseAsync=async(r,n)=>Mm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Lm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(lw(r,n)),t.superRefine=r=>t.check(dw(r)),t.overwrite=r=>t.check(Zr(r)),t.optional=()=>he(t),t.nullable=()=>Hm(t),t.nullish=()=>he(Hm(t)),t.nonoptional=r=>nw(t,r),t.array=()=>W(t),t.or=r=>le([t,r]),t.and=r=>Gs(t,r),t.transform=r=>Nu(t,Jm(r)),t.default=r=>ew(t,r),t.prefault=r=>rw(t,r),t.catch=r=>sw(t,r),t.pipe=r=>Nu(t,r),t.readonly=()=>cw(t),t.describe=r=>{let n=t.clone();return rr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return rr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return rr.get(t);let n=t.clone();return rr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),qm=x("_ZodString",(t,e)=>{go.init(t,e),_e.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(hu(...n)),t.includes=(...n)=>t.check(yu(...n)),t.startsWith=(...n)=>t.check(xu(...n)),t.endsWith=(...n)=>t.check(vu(...n)),t.min=(...n)=>t.check(kn(...n)),t.max=(...n)=>t.check(qs(...n)),t.length=(...n)=>t.check(Fs(...n)),t.nonempty=(...n)=>t.check(kn(1,...n)),t.lowercase=n=>t.check(gu(n)),t.uppercase=n=>t.check(_u(n)),t.trim=()=>t.check(Su()),t.normalize=(...n)=>t.check(ku(...n)),t.toLowerCase=()=>t.check(bu()),t.toUpperCase=()=>t.check(wu())}),Sb=x("ZodString",(t,e)=>{go.init(t,e),qm.init(t,e),t.email=r=>t.check(Hc(bb,r)),t.url=r=>t.check(Kc(wb,r)),t.jwt=r=>t.check(cu(Lb,r)),t.emoji=r=>t.check(Jc(Eb,r)),t.guid=r=>t.check(Ls(Zm,r)),t.uuid=r=>t.check(qc(Ws,r)),t.uuidv4=r=>t.check(Fc(Ws,r)),t.uuidv6=r=>t.check(Bc(Ws,r)),t.uuidv7=r=>t.check(Vc(Ws,r)),t.nanoid=r=>t.check(Wc(Tb,r)),t.guid=r=>t.check(Ls(Zm,r)),t.cuid=r=>t.check(Gc($b,r)),t.cuid2=r=>t.check(Yc(Pb,r)),t.ulid=r=>t.check(Xc(Rb,r)),t.base64=r=>t.check(su(jb,r)),t.base64url=r=>t.check(iu(Mb,r)),t.xid=r=>t.check(Qc(Ob,r)),t.ksuid=r=>t.check(eu(Cb,r)),t.ipv4=r=>t.check(tu(Ib,r)),t.ipv6=r=>t.check(ru(zb,r)),t.cidrv4=r=>t.check(nu(Nb,r)),t.cidrv6=r=>t.check(ou(Ab,r)),t.e164=r=>t.check(au(Db,r)),t.datetime=r=>t.check(Ru(r)),t.date=r=>t.check(Ou(r)),t.time=r=>t.check(Cu(r)),t.duration=r=>t.check(Iu(r))});function _(t){return Uc(Sb,t)}var fe=x("ZodStringFormat",(t,e)=>{ce.init(t,e),qm.init(t,e)}),bb=x("ZodEmail",(t,e)=>{nc.init(t,e),fe.init(t,e)});var Zm=x("ZodGUID",(t,e)=>{tc.init(t,e),fe.init(t,e)});var Ws=x("ZodUUID",(t,e)=>{rc.init(t,e),fe.init(t,e)});var wb=x("ZodURL",(t,e)=>{oc.init(t,e),fe.init(t,e)});var Eb=x("ZodEmoji",(t,e)=>{sc.init(t,e),fe.init(t,e)});var Tb=x("ZodNanoID",(t,e)=>{ic.init(t,e),fe.init(t,e)});var $b=x("ZodCUID",(t,e)=>{ac.init(t,e),fe.init(t,e)});var Pb=x("ZodCUID2",(t,e)=>{cc.init(t,e),fe.init(t,e)});var Rb=x("ZodULID",(t,e)=>{uc.init(t,e),fe.init(t,e)});var Ob=x("ZodXID",(t,e)=>{lc.init(t,e),fe.init(t,e)});var Cb=x("ZodKSUID",(t,e)=>{dc.init(t,e),fe.init(t,e)});var Ib=x("ZodIPv4",(t,e)=>{pc.init(t,e),fe.init(t,e)});var zb=x("ZodIPv6",(t,e)=>{fc.init(t,e),fe.init(t,e)});var Nb=x("ZodCIDRv4",(t,e)=>{mc.init(t,e),fe.init(t,e)});var Ab=x("ZodCIDRv6",(t,e)=>{hc.init(t,e),fe.init(t,e)});var jb=x("ZodBase64",(t,e)=>{gc.init(t,e),fe.init(t,e)});var Mb=x("ZodBase64URL",(t,e)=>{_c.init(t,e),fe.init(t,e)});var Db=x("ZodE164",(t,e)=>{yc.init(t,e),fe.init(t,e)});var Lb=x("ZodJWT",(t,e)=>{xc.init(t,e),fe.init(t,e)});var Fm=x("ZodNumber",(t,e)=>{js.init(t,e),_e.init(t,e),t.gt=(n,o)=>t.check(Us(n,o)),t.gte=(n,o)=>t.check(xo(n,o)),t.min=(n,o)=>t.check(xo(n,o)),t.lt=(n,o)=>t.check(Zs(n,o)),t.lte=(n,o)=>t.check(yo(n,o)),t.max=(n,o)=>t.check(yo(n,o)),t.int=n=>t.check(Um(n)),t.safe=n=>t.check(Um(n)),t.positive=n=>t.check(Us(0,n)),t.nonnegative=n=>t.check(xo(0,n)),t.negative=n=>t.check(Zs(0,n)),t.nonpositive=n=>t.check(yo(0,n)),t.multipleOf=(n,o)=>t.check(Hs(n,o)),t.step=(n,o)=>t.check(Hs(n,o)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function te(t){return uu(Fm,t)}var Zb=x("ZodNumberFormat",(t,e)=>{vc.init(t,e),Fm.init(t,e)});function Um(t){return lu(Zb,t)}var Ub=x("ZodBoolean",(t,e)=>{kc.init(t,e),_e.init(t,e)});function $e(t){return du(Ub,t)}var Hb=x("ZodNull",(t,e)=>{Sc.init(t,e),_e.init(t,e)});function Bm(t){return pu(Hb,t)}var qb=x("ZodUnknown",(t,e)=>{bc.init(t,e),_e.init(t,e)});function me(){return fu(qb)}var Fb=x("ZodNever",(t,e)=>{wc.init(t,e),_e.init(t,e)});function Bb(t){return mu(Fb,t)}var Vb=x("ZodArray",(t,e)=>{Ec.init(t,e),_e.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(kn(r,n)),t.nonempty=r=>t.check(kn(1,r)),t.max=(r,n)=>t.check(qs(r,n)),t.length=(r,n)=>t.check(Fs(r,n)),t.unwrap=()=>t.element});function W(t,e){return $m(Vb,t,e)}var Vm=x("ZodObject",(t,e)=>{Ms.init(t,e),_e.init(t,e),J.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Ge(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:me()}),t.loose=()=>t.clone({...t._zod.def,catchall:me()}),t.strict=()=>t.clone({...t._zod.def,catchall:Bb()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>J.extend(t,r),t.merge=r=>J.merge(t,r),t.pick=r=>J.pick(t,r),t.omit=r=>J.omit(t,r),t.partial=(...r)=>J.partial(Wm,t,r[0]),t.required=(...r)=>J.required(Gm,t,r[0])});function P(t,e){let r={type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},...J.normalizeParams(e)};return new Vm(r)}function Ue(t,e){return new Vm({type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},catchall:me(),...J.normalizeParams(e)})}var Km=x("ZodUnion",(t,e)=>{Ds.init(t,e),_e.init(t,e),t.options=e.options});function le(t,e){return new Km({type:"union",options:t,...J.normalizeParams(e)})}var Kb=x("ZodDiscriminatedUnion",(t,e)=>{Km.init(t,e),Tc.init(t,e)});function Au(t,e,r){return new Kb({type:"union",options:e,discriminator:t,...J.normalizeParams(r)})}var Jb=x("ZodIntersection",(t,e)=>{$c.init(t,e),_e.init(t,e)});function Gs(t,e){return new Jb({type:"intersection",left:t,right:e})}var Wb=x("ZodRecord",(t,e)=>{Pc.init(t,e),_e.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function ue(t,e,r){return new Wb({type:"record",keyType:t,valueType:e,...J.normalizeParams(r)})}var zu=x("ZodEnum",(t,e)=>{Rc.init(t,e),_e.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=e.entries[i];else throw new Error(`Key ${i} not found in enum`);return new zu({...e,checks:[],...J.normalizeParams(o),entries:s})},t.exclude=(n,o)=>{let s={...e.entries};for(let i of n)if(r.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new zu({...e,checks:[],...J.normalizeParams(o),entries:s})}});function Ge(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new zu({type:"enum",entries:r,...J.normalizeParams(e)})}var Gb=x("ZodLiteral",(t,e)=>{Oc.init(t,e),_e.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function I(t,e){return new Gb({type:"literal",values:Array.isArray(t)?t:[t],...J.normalizeParams(e)})}var Yb=x("ZodTransform",(t,e)=>{Cc.init(t,e),_e.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(J.issue(s,r.value,e));else{let i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=t),i.continue??(i.continue=!0),r.issues.push(J.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});function Jm(t){return new Yb({type:"transform",transform:t})}var Wm=x("ZodOptional",(t,e)=>{Ic.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function he(t){return new Wm({type:"optional",innerType:t})}var Xb=x("ZodNullable",(t,e)=>{zc.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Hm(t){return new Xb({type:"nullable",innerType:t})}var Qb=x("ZodDefault",(t,e)=>{Nc.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function ew(t,e){return new Qb({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var tw=x("ZodPrefault",(t,e)=>{Ac.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function rw(t,e){return new tw({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Gm=x("ZodNonOptional",(t,e)=>{jc.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function nw(t,e){return new Gm({type:"nonoptional",innerType:t,...J.normalizeParams(e)})}var ow=x("ZodCatch",(t,e)=>{Mc.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function sw(t,e){return new ow({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var iw=x("ZodPipe",(t,e)=>{Dc.init(t,e),_e.init(t,e),t.in=e.in,t.out=e.out});function Nu(t,e){return new iw({type:"pipe",in:t,out:e})}var aw=x("ZodReadonly",(t,e)=>{Lc.init(t,e),_e.init(t,e)});function cw(t){return new aw({type:"readonly",innerType:t})}var Ym=x("ZodCustom",(t,e)=>{Zc.init(t,e),_e.init(t,e)});function uw(t){let e=new Oe({check:"custom"});return e._zod.check=t,e}function Xm(t,e){return Eu(Ym,t??(()=>!0),e)}function lw(t,e={}){return Tu(Ym,t,e)}function dw(t){let e=uw(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(J.issue(n,r.value,e._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=e),o.continue??(o.continue=!e._zod.def.abort),r.issues.push(J.issue(o))}},t(r.value,r)));return e}function ju(t,e){return Nu(Jm(t),e)}tt(km());var Du="2025-11-25";var Qm=[Du,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],sr="io.modelcontextprotocol/related-task",Xs="2.0",Te=Xm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),eh=le([_(),te().int()]),th=_(),$N=Ue({ttl:te().optional(),pollInterval:te().optional()}),pw=P({ttl:te().optional()}),fw=P({taskId:_()}),Lu=Ue({progressToken:eh.optional(),[sr]:fw.optional()}),nt=P({_meta:Lu.optional()}),So=nt.extend({task:pw.optional()}),rh=t=>So.safeParse(t).success,Ce=P({method:_(),params:nt.loose().optional()}),ct=P({_meta:Lu.optional()}),ut=P({method:_(),params:ct.loose().optional()}),Ie=Ue({_meta:Lu.optional()}),Qs=le([_(),te().int()]),nh=P({jsonrpc:I(Xs),id:Qs,...Ce.shape}).strict(),Zu=t=>nh.safeParse(t).success,oh=P({jsonrpc:I(Xs),...ut.shape}).strict(),sh=t=>oh.safeParse(t).success,Uu=P({jsonrpc:I(Xs),id:Qs,result:Ie}).strict(),bo=t=>Uu.safeParse(t).success;var N;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(N||(N={}));var Hu=P({jsonrpc:I(Xs),id:Qs.optional(),error:P({code:te().int(),message:_(),data:me().optional()})}).strict();var ih=t=>Hu.safeParse(t).success;var ah=le([nh,oh,Uu,Hu]),PN=le([Uu,Hu]),ei=Ie.strict(),mw=ct.extend({requestId:Qs.optional(),reason:_().optional()}),ti=ut.extend({method:I("notifications/cancelled"),params:mw}),hw=P({src:_(),mimeType:_().optional(),sizes:W(_()).optional(),theme:Ge(["light","dark"]).optional()}),wo=P({icons:W(hw).optional()}),bn=P({name:_(),title:_().optional()}),ch=bn.extend({...bn.shape,...wo.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),gw=Gs(P({applyDefaults:$e().optional()}),ue(_(),me())),_w=ju(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Gs(P({form:gw.optional(),url:Te.optional()}),ue(_(),me()).optional())),yw=Ue({list:Te.optional(),cancel:Te.optional(),requests:Ue({sampling:Ue({createMessage:Te.optional()}).optional(),elicitation:Ue({create:Te.optional()}).optional()}).optional()}),xw=Ue({list:Te.optional(),cancel:Te.optional(),requests:Ue({tools:Ue({call:Te.optional()}).optional()}).optional()}),vw=P({experimental:ue(_(),Te).optional(),sampling:P({context:Te.optional(),tools:Te.optional()}).optional(),elicitation:_w.optional(),roots:P({listChanged:$e().optional()}).optional(),tasks:yw.optional(),extensions:ue(_(),Te).optional()}),kw=nt.extend({protocolVersion:_(),capabilities:vw,clientInfo:ch}),qu=Ce.extend({method:I("initialize"),params:kw});var Sw=P({experimental:ue(_(),Te).optional(),logging:Te.optional(),completions:Te.optional(),prompts:P({listChanged:$e().optional()}).optional(),resources:P({subscribe:$e().optional(),listChanged:$e().optional()}).optional(),tools:P({listChanged:$e().optional()}).optional(),tasks:xw.optional(),extensions:ue(_(),Te).optional()}),bw=Ie.extend({protocolVersion:_(),capabilities:Sw,serverInfo:ch,instructions:_().optional()}),Fu=ut.extend({method:I("notifications/initialized"),params:ct.optional()});var ri=Ce.extend({method:I("ping"),params:nt.optional()}),ww=P({progress:te(),total:he(te()),message:he(_())}),Ew=P({...ct.shape,...ww.shape,progressToken:eh}),ni=ut.extend({method:I("notifications/progress"),params:Ew}),Tw=nt.extend({cursor:th.optional()}),Eo=Ce.extend({params:Tw.optional()}),To=Ie.extend({nextCursor:th.optional()}),$w=Ge(["working","input_required","completed","failed","cancelled"]),$o=P({taskId:_(),status:$w,ttl:le([te(),Bm()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:he(te()),statusMessage:he(_())}),wn=Ie.extend({task:$o}),Pw=ct.merge($o),Po=ut.extend({method:I("notifications/tasks/status"),params:Pw}),oi=Ce.extend({method:I("tasks/get"),params:nt.extend({taskId:_()})}),si=Ie.merge($o),ii=Ce.extend({method:I("tasks/result"),params:nt.extend({taskId:_()})}),RN=Ie.loose(),ai=Eo.extend({method:I("tasks/list")}),ci=To.extend({tasks:W($o)}),ui=Ce.extend({method:I("tasks/cancel"),params:nt.extend({taskId:_()})}),uh=Ie.merge($o),lh=P({uri:_(),mimeType:he(_()),_meta:ue(_(),me()).optional()}),dh=lh.extend({text:_()}),Bu=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),ph=lh.extend({blob:Bu}),Ro=Ge(["user","assistant"]),En=P({audience:W(Ro).optional(),priority:te().min(0).max(1).optional(),lastModified:vo.datetime({offset:!0}).optional()}),fh=P({...bn.shape,...wo.shape,uri:_(),description:he(_()),mimeType:he(_()),size:he(te()),annotations:En.optional(),_meta:he(Ue({}))}),Rw=P({...bn.shape,...wo.shape,uriTemplate:_(),description:he(_()),mimeType:he(_()),annotations:En.optional(),_meta:he(Ue({}))}),Tn=Eo.extend({method:I("resources/list")}),Ow=To.extend({resources:W(fh)}),$n=Eo.extend({method:I("resources/templates/list")}),Cw=To.extend({resourceTemplates:W(Rw)}),Vu=nt.extend({uri:_()}),Iw=Vu,li=Ce.extend({method:I("resources/read"),params:Iw}),zw=Ie.extend({contents:W(le([dh,ph]))}),Nw=ut.extend({method:I("notifications/resources/list_changed"),params:ct.optional()}),Aw=Vu,jw=Ce.extend({method:I("resources/subscribe"),params:Aw}),Mw=Vu,Dw=Ce.extend({method:I("resources/unsubscribe"),params:Mw}),Lw=ct.extend({uri:_()}),Zw=ut.extend({method:I("notifications/resources/updated"),params:Lw}),Uw=P({name:_(),description:he(_()),required:he($e())}),Hw=P({...bn.shape,...wo.shape,description:he(_()),arguments:he(W(Uw)),_meta:he(Ue({}))}),Pn=Eo.extend({method:I("prompts/list")}),qw=To.extend({prompts:W(Hw)}),Fw=nt.extend({name:_(),arguments:ue(_(),_()).optional()}),di=Ce.extend({method:I("prompts/get"),params:Fw}),Ku=P({type:I("text"),text:_(),annotations:En.optional(),_meta:ue(_(),me()).optional()}),Ju=P({type:I("image"),data:Bu,mimeType:_(),annotations:En.optional(),_meta:ue(_(),me()).optional()}),Wu=P({type:I("audio"),data:Bu,mimeType:_(),annotations:En.optional(),_meta:ue(_(),me()).optional()}),Bw=P({type:I("tool_use"),name:_(),id:_(),input:ue(_(),me()),_meta:ue(_(),me()).optional()}),Vw=P({type:I("resource"),resource:le([dh,ph]),annotations:En.optional(),_meta:ue(_(),me()).optional()}),Kw=fh.extend({type:I("resource_link")}),Gu=le([Ku,Ju,Wu,Kw,Vw]),Jw=P({role:Ro,content:Gu}),Ww=Ie.extend({description:_().optional(),messages:W(Jw)}),Gw=ut.extend({method:I("notifications/prompts/list_changed"),params:ct.optional()}),Yw=P({title:_().optional(),readOnlyHint:$e().optional(),destructiveHint:$e().optional(),idempotentHint:$e().optional(),openWorldHint:$e().optional()}),Xw=P({taskSupport:Ge(["required","optional","forbidden"]).optional()}),mh=P({...bn.shape,...wo.shape,description:_().optional(),inputSchema:P({type:I("object"),properties:ue(_(),Te).optional(),required:W(_()).optional()}).catchall(me()),outputSchema:P({type:I("object"),properties:ue(_(),Te).optional(),required:W(_()).optional()}).catchall(me()).optional(),annotations:Yw.optional(),execution:Xw.optional(),_meta:ue(_(),me()).optional()}),pi=Eo.extend({method:I("tools/list")}),Qw=To.extend({tools:W(mh)}),fi=Ie.extend({content:W(Gu).default([]),structuredContent:ue(_(),me()).optional(),isError:$e().optional()}),ON=fi.or(Ie.extend({toolResult:me()})),eE=So.extend({name:_(),arguments:ue(_(),me()).optional()}),Rn=Ce.extend({method:I("tools/call"),params:eE}),tE=ut.extend({method:I("notifications/tools/list_changed"),params:ct.optional()}),CN=P({autoRefresh:$e().default(!0),debounceMs:te().int().nonnegative().default(300)}),Oo=Ge(["debug","info","notice","warning","error","critical","alert","emergency"]),rE=nt.extend({level:Oo}),Yu=Ce.extend({method:I("logging/setLevel"),params:rE}),nE=ct.extend({level:Oo,logger:_().optional(),data:me()}),oE=ut.extend({method:I("notifications/message"),params:nE}),sE=P({name:_().optional()}),iE=P({hints:W(sE).optional(),costPriority:te().min(0).max(1).optional(),speedPriority:te().min(0).max(1).optional(),intelligencePriority:te().min(0).max(1).optional()}),aE=P({mode:Ge(["auto","required","none"]).optional()}),cE=P({type:I("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:W(Gu).default([]),structuredContent:P({}).loose().optional(),isError:$e().optional(),_meta:ue(_(),me()).optional()}),uE=Au("type",[Ku,Ju,Wu]),Ys=Au("type",[Ku,Ju,Wu,Bw,cE]),lE=P({role:Ro,content:le([Ys,W(Ys)]),_meta:ue(_(),me()).optional()}),dE=So.extend({messages:W(lE),modelPreferences:iE.optional(),systemPrompt:_().optional(),includeContext:Ge(["none","thisServer","allServers"]).optional(),temperature:te().optional(),maxTokens:te().int(),stopSequences:W(_()).optional(),metadata:Te.optional(),tools:W(mh).optional(),toolChoice:aE.optional()}),pE=Ce.extend({method:I("sampling/createMessage"),params:dE}),Co=Ie.extend({model:_(),stopReason:he(Ge(["endTurn","stopSequence","maxTokens"]).or(_())),role:Ro,content:uE}),Xu=Ie.extend({model:_(),stopReason:he(Ge(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:Ro,content:le([Ys,W(Ys)])}),fE=P({type:I("boolean"),title:_().optional(),description:_().optional(),default:$e().optional()}),mE=P({type:I("string"),title:_().optional(),description:_().optional(),minLength:te().optional(),maxLength:te().optional(),format:Ge(["email","uri","date","date-time"]).optional(),default:_().optional()}),hE=P({type:Ge(["number","integer"]),title:_().optional(),description:_().optional(),minimum:te().optional(),maximum:te().optional(),default:te().optional()}),gE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:W(_()),default:_().optional()}),_E=P({type:I("string"),title:_().optional(),description:_().optional(),oneOf:W(P({const:_(),title:_()})),default:_().optional()}),yE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:W(_()),enumNames:W(_()).optional(),default:_().optional()}),xE=le([gE,_E]),vE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({type:I("string"),enum:W(_())}),default:W(_()).optional()}),kE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({anyOf:W(P({const:_(),title:_()}))}),default:W(_()).optional()}),SE=le([vE,kE]),bE=le([yE,xE,SE]),wE=le([bE,fE,mE,hE]),EE=So.extend({mode:I("form").optional(),message:_(),requestedSchema:P({type:I("object"),properties:ue(_(),wE),required:W(_()).optional()})}),TE=So.extend({mode:I("url"),message:_(),elicitationId:_(),url:_().url()}),$E=le([EE,TE]),PE=Ce.extend({method:I("elicitation/create"),params:$E}),RE=ct.extend({elicitationId:_()}),OE=ut.extend({method:I("notifications/elicitation/complete"),params:RE}),On=Ie.extend({action:Ge(["accept","decline","cancel"]),content:ju(t=>t===null?void 0:t,ue(_(),le([_(),te(),$e(),W(_())])).optional())}),CE=P({type:I("ref/resource"),uri:_()});var IE=P({type:I("ref/prompt"),name:_()}),zE=nt.extend({ref:le([IE,CE]),argument:P({name:_(),value:_()}),context:P({arguments:ue(_(),_()).optional()}).optional()}),mi=Ce.extend({method:I("completion/complete"),params:zE});function hh(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function gh(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var NE=Ie.extend({completion:Ue({values:W(_()).max(100),total:he(te().int()),hasMore:he($e())})}),AE=P({uri:_().startsWith("file://"),name:_().optional(),_meta:ue(_(),me()).optional()}),jE=Ce.extend({method:I("roots/list"),params:nt.optional()}),Qu=Ie.extend({roots:W(AE)}),ME=ut.extend({method:I("notifications/roots/list_changed"),params:ct.optional()}),IN=le([ri,qu,mi,Yu,di,Pn,Tn,$n,li,jw,Dw,Rn,pi,oi,ii,ai,ui]),zN=le([ti,ni,Fu,ME,Po]),NN=le([ei,Co,Xu,On,Qu,si,ci,wn]),AN=le([ri,pE,PE,jE,oi,ii,ai,ui]),jN=le([ti,ni,oE,Zw,Nw,tE,Gw,Po,OE]),MN=le([ei,bw,NE,Ww,qw,Ow,Cw,zw,fi,Qw,si,ci,wn]),O=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===N.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Mu(o.elicitations,r)}return new t(e,r,n)}},Mu=class extends O{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(N.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function ir(t){return t==="completed"||t==="failed"||t==="cancelled"}var yh=Symbol("Let zodToJsonSchema decide on which parser to use");var _h={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"},xh=t=>typeof t=="string"?{..._h,name:t}:{..._h,...t};var vh=t=>{let e=xh(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 el(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function G(t,e,r,n,o){t[e]=r,el(t,e,n,o)}var hi=(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 ge(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?hi(e,t.currentPath):e.join("/")}}function kh(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==b.ZodAny&&(r.items=M(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&G(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&G(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(G(r,"minItems",t.exactLength.value,t.exactLength.message,e),G(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Sh(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?G(r,"minimum",n.value,n.message,e):G(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),G(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?G(r,"maximum",n.value,n.message,e):G(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),G(r,"maximum",n.value,n.message,e));break;case"multipleOf":G(r,"multipleOf",n.value,n.message,e);break}return r}function bh(){return{type:"boolean"}}function gi(t,e){return M(t.type._def,e)}var wh=(t,e)=>M(t.innerType._def,e);function tl(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>tl(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 DE(t,e)}}var DE=(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":G(r,"minimum",n.value,n.message,e);break;case"max":G(r,"maximum",n.value,n.message,e);break}return r};function Eh(t,e){return{...M(t.innerType._def,e),default:t.defaultValue()}}function Th(t,e){return e.effectStrategy==="input"?M(t.schema._def,e):ge(e)}function $h(t){return{type:"string",enum:Array.from(t.values)}}var LE=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Ph(t,e){let r=[M(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),M(t.right._def,{...e,currentPath:[...e.currentPath,"allOf","1"]})].filter(s=>!!s),n=e.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,o=[];return r.forEach(s=>{if(LE(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 Rh(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 rl,_t={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(rl===void 0&&(rl=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),rl),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function _i(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":G(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":G(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":yt(r,"email",n.message,e);break;case"format:idn-email":yt(r,"idn-email",n.message,e);break;case"pattern:zod":He(r,_t.email,n.message,e);break}break;case"url":yt(r,"uri",n.message,e);break;case"uuid":yt(r,"uuid",n.message,e);break;case"regex":He(r,n.regex,n.message,e);break;case"cuid":He(r,_t.cuid,n.message,e);break;case"cuid2":He(r,_t.cuid2,n.message,e);break;case"startsWith":He(r,RegExp(`^${nl(n.value,e)}`),n.message,e);break;case"endsWith":He(r,RegExp(`${nl(n.value,e)}$`),n.message,e);break;case"datetime":yt(r,"date-time",n.message,e);break;case"date":yt(r,"date",n.message,e);break;case"time":yt(r,"time",n.message,e);break;case"duration":yt(r,"duration",n.message,e);break;case"length":G(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),G(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{He(r,RegExp(nl(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&yt(r,"ipv4",n.message,e),n.version!=="v4"&&yt(r,"ipv6",n.message,e);break}case"base64url":He(r,_t.base64url,n.message,e);break;case"jwt":He(r,_t.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&He(r,_t.ipv4Cidr,n.message,e),n.version!=="v4"&&He(r,_t.ipv6Cidr,n.message,e);break}case"emoji":He(r,_t.emoji(),n.message,e);break;case"ulid":{He(r,_t.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{yt(r,"binary",n.message,e);break}case"contentEncoding:base64":{G(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{He(r,_t.base64,n.message,e);break}}break}case"nanoid":He(r,_t.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function nl(t,e){return e.patternStrategy==="escape"?UE(t):t}var ZE=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function UE(t){let e="";for(let r=0;r<t.length;r++)ZE.has(t[r])||(e+="\\"),e+=t[r];return e}function yt(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):G(t,"format",e,r,n)}function He(t,e,r,n){t.pattern||t.allOf?.some(o=>o.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&n.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:Oh(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):G(t,"pattern",Oh(e,n),r,n)}function Oh(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},n=r.i?t.source.toLowerCase():t.source,o="",s=!1,i=!1,a=!1;for(let c=0;c<n.length;c++){if(s){o+=n[c],s=!1;continue}if(r.i){if(i){if(n[c].match(/[a-z]/)){a?(o+=n[c],o+=`${n[c-2]}-${n[c]}`.toUpperCase(),a=!1):n[c+1]==="-"&&n[c+2]?.match(/[a-z]/)?(o+=n[c],a=!0):o+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){o+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(r.m){if(n[c]==="^"){o+=`(^|(?<=[\r
72
54
  ]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
73
55
  ]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
74
56
  `:`[${n[c]}\r
75
- ]`;continue}o+=n[c],n[c]==="\\"?s=!0:i&&n[c]==="]"?i=!1:!i&&n[c]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return o}function Ei(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===b.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??ye(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===b.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=wi(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===b.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===b.ZodBranded&&t.keyType._def.type._def.typeName===b.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=bi(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Hh(t,e){if(e.mapStrategy==="record")return Ei(t,e);let r=M(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||ye(e),n=M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||ye(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function qh(t){let e=t.values,n=Object.keys(t.values).filter(s=>typeof e[e[s]]!="number").map(s=>e[s]),o=Array.from(new Set(n.map(s=>typeof s)));return{type:o.length===1?o[0]==="string"?"string":"number":["string","number"],enum:n}}function Fh(t){return t.target==="openAi"?void 0:{not:ye({...t,currentPath:[...t.currentPath,"not"]})}}function Bh(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var jo={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Kh(t,e){if(e.target==="openApi3")return Vh(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in jo&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=jo[s._def.typeName];return i&&!o.includes(i)?[...o,i]:o},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){let n=r.reduce((o,s)=>{let i=typeof s._def.value;switch(i){case"string":case"number":case"boolean":return[...o,i];case"bigint":return[...o,"integer"];case"object":if(s._def.value===null)return[...o,"null"];default:return o}},[]);if(n.length===r.length){let o=n.filter((s,i,a)=>a.indexOf(s)===i);return{type:o.length>1?o:o[0],enum:r.reduce((s,i)=>s.includes(i._def.value)?s:[...s,i._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,o)=>[...n,...o._def.values.filter(s=>!n.includes(s))],[])};return Vh(t,e)}var Vh=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>M(n._def,{...e,currentPath:[...e.currentPath,"anyOf",`${o}`]})).filter(n=>!!n&&(!e.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function Jh(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:jo[t.innerType._def.typeName],nullable:!0}:{type:[jo[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=M(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function Gh(t,e){let r={type:"number"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"int":r.type="integer",hl(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?W(r,"minimum",n.value,n.message,e):W(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),W(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?W(r,"maximum",n.value,n.message,e):W(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),W(r,"maximum",n.value,n.message,e));break;case"multipleOf":W(r,"multipleOf",n.value,n.message,e);break}return r}function Wh(t,e){let r=e.target==="openAi",n={type:"object",properties:{}},o=[],s=t.shape();for(let a in s){let c=s[a];if(c===void 0||c._def===void 0)continue;let u=ZE(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=M(c._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});l!==void 0&&(n.properties[a]=l,u||o.push(a))}o.length&&(n.required=o);let i=DE(t,e);return i!==void 0&&(n.additionalProperties=i),n}function DE(t,e){if(t.catchall._def.typeName!=="ZodNever")return M(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]});switch(t.unknownKeys){case"passthrough":return e.allowedAdditionalProperties;case"strict":return e.rejectedAdditionalProperties;case"strip":return e.removeAdditionalStrategy==="strict"?e.allowedAdditionalProperties:e.rejectedAdditionalProperties}}function ZE(t){try{return t.isOptional()}catch{return!0}}var Yh=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return M(t.innerType._def,e);let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:ye(e)},r]}:ye(e)};var Xh=(t,e)=>{if(e.pipeStrategy==="input")return M(t.in._def,e);if(e.pipeStrategy==="output")return M(t.out._def,e);let r=M(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=M(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function Qh(t,e){return M(t.type._def,e)}function eg(t,e){let n={type:"array",uniqueItems:!0,items:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&W(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&W(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function tg(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>M(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:M(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>M(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function rg(t){return{not:ye(t)}}function ng(t){return ye(t)}var og=(t,e)=>M(t.innerType._def,e);var sg=(t,e,r)=>{switch(e){case b.ZodString:return wi(t,r);case b.ZodNumber:return Gh(t,r);case b.ZodObject:return Wh(t,r);case b.ZodBigInt:return zh(t,r);case b.ZodBoolean:return Nh();case b.ZodDate:return gl(t,r);case b.ZodUndefined:return rg(r);case b.ZodNull:return Bh(r);case b.ZodArray:return Ih(t,r);case b.ZodUnion:case b.ZodDiscriminatedUnion:return Kh(t,r);case b.ZodIntersection:return Dh(t,r);case b.ZodTuple:return tg(t,r);case b.ZodRecord:return Ei(t,r);case b.ZodLiteral:return Zh(t,r);case b.ZodEnum:return Lh(t);case b.ZodNativeEnum:return qh(t);case b.ZodNullable:return Jh(t,r);case b.ZodOptional:return Yh(t,r);case b.ZodMap:return Hh(t,r);case b.ZodSet:return eg(t,r);case b.ZodLazy:return()=>t.getter()._def;case b.ZodPromise:return Qh(t,r);case b.ZodNaN:case b.ZodNever:return Fh(r);case b.ZodEffects:return Mh(t,r);case b.ZodAny:return ye(r);case b.ZodUnknown:return ng(r);case b.ZodDefault:return jh(t,r);case b.ZodBranded:return bi(t,r);case b.ZodReadonly:return og(t,r);case b.ZodCatch:return Ah(t,r);case b.ZodPipeline:return Xh(t,r);case b.ZodFunction:case b.ZodVoid:case b.ZodSymbol:return;default:return(n=>{})(e)}};function M(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Rh)return a}if(n&&!r){let a=UE(n,e);if(a!==void 0)return a}let o={def:t,path:e.currentPath,jsonSchema:void 0};e.seen.set(t,o);let s=sg(t,t.typeName,e),i=typeof s=="function"?M(s(),e):s;if(i&&HE(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var UE=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:ki(e.currentPath,t.path)};case"none":case"seen":return t.path.length<e.currentPath.length&&t.path.every((r,n)=>e.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),ye(e)):e.$refStrategy==="seen"?ye(e):void 0}},HE=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var xl=(t,e)=>{let r=Ch(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:M(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??ye(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=M(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??ye(r),i=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;i!==void 0&&(s.title=i),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let a=o===void 0?n?{...s,[r.definitionPath]:n}:s:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,o].join("/"),[r.definitionPath]:{...n,[o]:s}};return r.target==="jsonSchema7"?a.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(a.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in a||"oneOf"in a||"allOf"in a||"type"in a&&Array.isArray(a.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),a};function qE(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function vl(t,e){return ct(t)?Zu(t,{target:qE(e?.target),io:e?.pipeStrategy??"input"}):xl(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Sl(t){let r=ar(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ei(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function kl(t,e){let r=ir(t,e);if(!r.success)throw r.error;return r.data}var FE=6e4,Ti=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(ai,r=>{this._oncancel(r)}),this.setNotificationHandler(ui,r=>{this._onprogress(r)}),this.setRequestHandler(ci,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(li,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new C(N.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(pi,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,m=new C(d.error.code,d.error.message,d.error.data);l(m)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new C(N.InvalidParams,`Task not found: ${s}`);if(!ur(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(ur(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[cr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(fi,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new C(N.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(hi,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new C(N.InvalidParams,`Task not found: ${r.params.taskId}`);if(ur(o.status))throw new C(N.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new C(N.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof C?o:new C(N.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),C.fromError(N.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),Po(s)||_h(s)?this._onresponse(s):el(s)?this._onrequest(s,i):gh(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=C.fromError(N.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[cr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:N.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=fh(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,m)=>{if(i.signal.aborted)throw new C(N.ConnectionClosed,"Request was cancelled");let f={...m,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let p=f.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,f)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:N.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),Po(e))n(e);else{let i=new C(e.error.code,e.error.message,e.error.data);n(i)}return}let o=this._responseHandlers.get(r);if(o===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let s=!1;if(Po(e)&&e.result&&typeof e.result=="object"){let i=e.result;if(i.task&&typeof i.task=="object"){let a=i.task;typeof a.taskId=="string"&&(s=!0,this._taskProgressTokens.set(a.taskId,r))}}if(s||this._progressHandlers.delete(r),Po(e))o(e);else{let i=C.fromError(e.error.code,e.error.message,e.error.data);o(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(e,r,n)}}catch(i){yield{type:"error",error:i instanceof C?i:new C(N.InternalError,String(i))}}return}let s;try{let i=await this.request(e,Pn,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new C(N.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},ur(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new C(N.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new C(N.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof C?i:new C(N.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=v=>{l(v)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(v){d(v);return}n?.signal?.throwIfAborted();let m=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:m};n?.onprogress&&(this._progressHandlers.set(m,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:m}}),a&&(f.params={...f.params,task:a}),c&&(f.params={...f.params,_meta:{...f.params?._meta||{},[cr]:c}});let p=v=>{this._responseHandlers.delete(m),this._progressHandlers.delete(m),this._cleanupTimeout(m),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:m,reason:String(v)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(w=>this._onerror(new Error(`Failed to send cancellation: ${w}`)));let S=v instanceof C?v:new C(N.RequestTimeout,String(v));l(S)};this._responseHandlers.set(m,v=>{if(!n?.signal?.aborted){if(v instanceof Error)return l(v);try{let S=ir(r,v.result);S.success?u(S.data):l(S.error)}catch(S){l(S)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??FE,g=()=>p(C.fromError(N.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(m,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let y=c?.taskId;if(y){let v=S=>{let w=this._responseHandlers.get(m);w?w(S):this._onerror(new Error(`Response handler missing for side-channeled request ${m}`))};this._requestResolvers.set(m,v),this._enqueueTaskMessage(y,{type:"request",message:f,timestamp:Date.now()}).catch(S=>{this._cleanupTimeout(m),l(S)})}else this._transport.send(f,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(v=>{this._cleanupTimeout(m),l(v)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},di,r)}async getTaskResult(e,r,n){return this.request({method:"tasks/result",params:e},r,n)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},mi,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},vh,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let n=r?.relatedTask?.taskId;if(n){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[cr]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[cr]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let i={...e,jsonrpc:"2.0"};r?.relatedTask&&(i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[cr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=Sl(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=kl(e,o);return Promise.resolve(r(i,s))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw new Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,r){let n=Sl(e);this._notificationHandlers.set(n,o=>{let s=kl(e,o);return Promise.resolve(r(s))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let r=this._taskProgressTokens.get(e);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,r,n){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let o=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,n,o)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,r);for(let o of n)if(o.type==="request"&&el(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new C(N.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new C(N.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new C(N.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new C(N.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=zo.parse({method:"notifications/tasks/status",params:a});await this.notification(c),ur(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,i)=>{let a=await n.getTask(o,r);if(!a)throw new C(N.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(ur(a.status))throw new C(N.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=zo.parse({method:"notifications/tasks/status",params:c});await this.notification(u),ur(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function ig(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function ag(t,e){let r={...t};for(let n in e){let o=n,s=e[o];if(s===void 0)continue;let i=r[o];ig(i)&&ig(s)?r[o]={...i,...s}:r[o]=s}return r}var Ky=ff(ap(),1),Jy=ff(Vy(),1);function AO(){let t=new Ky.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Jy.default)(t),t}var ca=class{constructor(e){this._ajv=e??AO()}getValidator(e){let r="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var ua=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function Gy(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"tools/call":if(!t.tools?.call)throw new Error(`${r} does not support task creation for tools/call (required for ${e})`);break;default:break}}function Wy(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!t.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!t.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}var la=class extends Ti{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Ao.options.map((n,o)=>[n,o])),this.isMessageIgnored=(n,o)=>{let s=this._loggingLevels.get(o);return s?this.LOG_LEVEL_SEVERITY.get(n)<this.LOG_LEVEL_SEVERITY.get(s):!1},this._capabilities=r?.capabilities??{},this._instructions=r?.instructions,this._jsonSchemaValidator=r?.jsonSchemaValidator??new ca,this.setRequestHandler(nl,n=>this._oninitialize(n)),this.setNotificationHandler(ol,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(dl,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Ao.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new ua(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=ag(this._capabilities,e)}setRequestHandler(e,r){let o=ar(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(ct(o)){let a=o;s=a._zod?.def?.value??a.value}else{let a=o;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=ir(zn,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new C(N.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,m=await Promise.resolve(r(c,u));if(d.task){let p=ir(Pn,m);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new C(N.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let f=ir(xi,m);if(!f.success){let p=f.error instanceof Error?f.error.message:String(f.error);throw new C(N.InvalidParams,`Invalid tools/call result: ${p}`)}return f.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){Wy(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Gy(this._capabilities.tasks?.requests,e,"Server")}async _oninitialize(e){let r=e.params.protocolVersion;return this._clientCapabilities=e.params.capabilities,this._clientVersion=e.params.clientInfo,{protocolVersion:lh.includes(r)?r:Xu,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},ii)}async createMessage(e,r){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let n=e.messages[e.messages.length-1],o=Array.isArray(n.content)?n.content:[n.content],s=o.some(u=>u.type==="tool_result"),i=e.messages.length>1?e.messages[e.messages.length-2]:void 0,a=i?Array.isArray(i.content)?i.content:[i.content]:[],c=a.some(u=>u.type==="tool_use");if(s){if(o.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let u=new Set(a.filter(d=>d.type==="tool_use").map(d=>d.id)),l=new Set(o.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(u.size!==l.size||![...u].every(d=>l.has(d)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},fl,r):this.request({method:"sampling/createMessage",params:e},pl,r)}async elicitInput(e,r){switch(e.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let o=e;return this.request({method:"elicitation/create",params:o},vi,r)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let o=e.mode==="form"?e:{...e,mode:"form"},s=await this.request({method:"elicitation/create",params:o},vi,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new C(N.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof C?i:new C(N.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},ml,r)}async sendLoggingMessage(e,r){if(this._capabilities.logging&&!this.isMessageIgnored(e.level,r))return this.notification({method:"notifications/message",params:e})}async sendResourceUpdated(e){return this.notification({method:"notifications/resources/updated",params:e})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}};var Xy=Symbol.for("mcp.completable");function hp(t){return!!t&&typeof t=="object"&&Xy in t}function Qy(t){return t[Xy]?.complete}var Yy;(function(t){t.Completable="McpCompletable"})(Yy||(Yy={}));var jO=/^[A-Za-z0-9._-]{1,128}$/;function MO(t){let e=[];if(t.length===0)return{isValid:!1,warnings:["Tool name cannot be empty"]};if(t.length>128)return{isValid:!1,warnings:[`Tool name exceeds maximum length of 128 characters (current: ${t.length})`]};if(t.includes(" ")&&e.push("Tool name contains spaces, which may cause parsing issues"),t.includes(",")&&e.push("Tool name contains commas, which may cause parsing issues"),(t.startsWith("-")||t.endsWith("-"))&&e.push("Tool name starts or ends with a dash, which may cause parsing issues in some contexts"),(t.startsWith(".")||t.endsWith("."))&&e.push("Tool name starts or ends with a dot, which may cause parsing issues in some contexts"),!jO.test(t)){let r=t.split("").filter(n=>!/[A-Za-z0-9._-]/.test(n)).filter((n,o,s)=>s.indexOf(n)===o);return e.push(`Tool name contains invalid characters: ${r.map(n=>`"${n}"`).join(", ")}`,"Allowed characters are: A-Z, a-z, 0-9, underscore (_), dash (-), and dot (.)"),{isValid:!1,warnings:e}}return{isValid:!0,warnings:e}}function LO(t,e){if(e.length>0){console.warn(`Tool name validation warning for "${t}":`);for(let r of e)console.warn(` - ${r}`);console.warn("Tool registration will proceed, but this may cause compatibility issues."),console.warn("Consider updating the tool name to conform to the MCP tool naming standard."),console.warn("See SEP: Specify Format for Tool Names (https://github.com/modelcontextprotocol/modelcontextprotocol/issues/986) for more details.")}}function gp(t){let e=MO(t);return LO(t,e.warnings),e.isValid}var da=class{constructor(e){this._mcpServer=e}registerToolTask(e,r,n){let o={taskSupport:"required",...r.execution};if(o.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${e}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(e,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,o,r._meta,n)}};var pa=class{constructor(e,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new la(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new da(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(yr(yi)),this.server.assertCanSetRequestHandler(yr(zn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(yi,()=>({tools:Object.entries(this._registeredTools).filter(([,e])=>e.enabled).map(([e,r])=>{let n={name:e,title:r.title,description:r.description,inputSchema:(()=>{let o=Tn(r.inputSchema);return o?vl(o,{strictUnions:!0,pipeStrategy:"input"}):DO})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=Tn(r.outputSchema);o&&(n.outputSchema=vl(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(zn,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new C(N.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new C(N.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new C(N.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new C(N.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof C&&n.code===N.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=Tn(e.inputSchema)??e.inputSchema,i=await Xs(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Qs(a);throw new C(N.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new C(N.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=Tn(e.outputSchema),s=await Xs(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Qs(i);throw new C(N.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(m=>setTimeout(m,l));let d=await n.taskStore.getTask(c);if(!d)throw new C(N.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(yr(Si)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(Si,async e=>{switch(e.params.ref.type){case"ref/prompt":return Th(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return $h(e),this.handleResourceCompletion(e,e.params.ref);default:throw new C(N.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new C(N.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new C(N.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return ps;let s=ar(n.argsSchema)?.[e.params.argument.name];if(!hp(s))return ps;let i=Qy(s);if(!i)return ps;let a=await i(e.params.argument.value,e.params.context);return tx(a)}async handleResourceCompletion(e,r){let n=Object.values(this._registeredResourceTemplates).find(i=>i.resourceTemplate.uriTemplate.toString()===r.uri);if(!n){if(this._registeredResources[r.uri])return ps;throw new C(N.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return ps;let s=await o(e.params.argument.value,e.params.context);return tx(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(yr(On)),this.server.assertCanSetRequestHandler(yr(Cn)),this.server.assertCanSetRequestHandler(yr(gi)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(On,async(e,r)=>{let n=Object.entries(this._registeredResources).filter(([s,i])=>i.enabled).map(([s,i])=>({uri:s,name:i.name,...i.metadata})),o=[];for(let s of Object.values(this._registeredResourceTemplates)){if(!s.resourceTemplate.listCallback)continue;let i=await s.resourceTemplate.listCallback(r);for(let a of i.resources)o.push({...s.metadata,...a})}return{resources:[...n,...o]}}),this.server.setRequestHandler(Cn,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(gi,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new C(N.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new C(N.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(yr(In)),this.server.assertCanSetRequestHandler(yr(_i)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(In,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?UO(r.argsSchema):void 0}))})),this.server.setRequestHandler(_i,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new C(N.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new C(N.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=Tn(n.argsSchema),s=await Xs(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Qs(c);throw new C(N.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:Kr(o),callback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:a=>{typeof a.name<"u"&&a.name!==e&&(delete this._registeredPrompts[e],a.name&&(this._registeredPrompts[a.name]=i)),typeof a.title<"u"&&(i.title=a.title),typeof a.description<"u"&&(i.description=a.description),typeof a.argsSchema<"u"&&(i.argsSchema=Kr(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof Je?c._def?.innerType:c;return hp(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){gp(e);let l={title:r,description:n,inputSchema:ex(o),outputSchema:ex(s),annotations:i,execution:a,_meta:c,handler:u,enabled:!0,disable:()=>l.update({enabled:!1}),enable:()=>l.update({enabled:!0}),remove:()=>l.update({name:null}),update:d=>{typeof d.name<"u"&&d.name!==e&&(typeof d.name=="string"&&gp(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=l)),typeof d.title<"u"&&(l.title=d.title),typeof d.description<"u"&&(l.description=d.description),typeof d.paramsSchema<"u"&&(l.inputSchema=Kr(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Kr(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];_p(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!_p(r[0])&&(i=r.shift())):typeof c=="object"&&c!==null&&(i=r.shift())}let a=r[0];return this._createRegisteredTool(e,void 0,n,o,s,i,{taskSupport:"forbidden"},void 0,a)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:i,outputSchema:a,annotations:c,_meta:u}=r;return this._createRegisteredTool(e,o,s,i,a,c,{taskSupport:"forbidden"},u,n)}prompt(e,...r){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let o;r.length>1&&(o=r.shift());let s=r[0],i=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:i}=r,a=this._createRegisteredPrompt(e,o,s,i,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,r){return this.server.sendLoggingMessage(e,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}};var DO={type:"object",properties:{}};function rx(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function ZO(t){return"_def"in t||"_zod"in t||rx(t)}function _p(t){return typeof t!="object"||t===null||ZO(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(rx)}function ex(t){if(t)return _p(t)?Kr(t):t}function UO(t){let e=ar(t);return e?Object.entries(e).map(([r,n])=>{let o=Um(n),s=Hm(n);return{name:r,description:o,required:!s}}):[]}function yr(t){let r=ar(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ei(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function tx(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var ps={completion:{values:[],hasMore:!1}};import ox from"node:process";var fa=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
76
- `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),HO(r)}clear(){this._buffer=void 0}};function HO(t){return yh.parse(JSON.parse(t))}function nx(t){return JSON.stringify(t)+`
77
- `}var ma=class{constructor(e=ox.stdin,r=ox.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new fa,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(e){return new Promise(r=>{let n=nx(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as Lv}from"node:module";import{createHash as Dv}from"node:crypto";import{existsSync as br,unlinkSync as sI,readdirSync as iI,readFileSync as Zv,rmSync as aI,mkdirSync as cI}from"node:fs";import{join as mn,dirname as uf,resolve as pn}from"node:path";import{fileURLToPath as uI}from"node:url";import{homedir as Ma,tmpdir as lI}from"node:os";import{spawn as BO,execSync as px}from"node:child_process";import{mkdtempSync as VO,writeFileSync as ux,rmSync as lx,existsSync as dx}from"node:fs";import{join as _a,resolve as KO}from"node:path";import{tmpdir as JO}from"node:os";import{execSync as yp}from"node:child_process";import{existsSync as qO}from"node:fs";var sx=process.platform==="win32";function Ae(t){try{let e=sx?`where ${t}`:`command -v ${t}`;return yp(e,{stdio:"pipe"}),!0}catch{return!1}}function FO(){let t=["C:\\Program Files\\Git\\usr\\bin\\bash.exe","C:\\Program Files (x86)\\Git\\usr\\bin\\bash.exe"];for(let e of t)if(qO(e))return e;try{let r=yp("where bash",{encoding:"utf-8",stdio:"pipe"}).trim().split(/\r?\n/).map(n=>n.trim()).filter(Boolean);for(let n of r){let o=n.toLowerCase();if(!(o.includes("system32")||o.includes("windowsapps")))return n}return null}catch{return null}}function Et(t){try{return yp(`${t} --version`,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function ha(){let t=Ae("bun");return{javascript:t?"bun":"node",typescript:t?"bun":Ae("tsx")?"tsx":Ae("ts-node")?"ts-node":null,python:Ae("python3")?"python3":Ae("python")?"python":null,shell:sx?FO()??(Ae("sh")?"sh":Ae("powershell")?"powershell":"cmd.exe"):Ae("bash")?"bash":"sh",ruby:Ae("ruby")?"ruby":null,go:Ae("go")?"go":null,rust:Ae("rustc")?"rustc":null,php:Ae("php")?"php":null,perl:Ae("perl")?"perl":null,r:Ae("Rscript")?"Rscript":Ae("r")?"r":null,elixir:Ae("elixir")?"elixir":null}}function ga(){return Ae("bun")}function ix(t){let e=[],r=t.javascript==="bun";return e.push(` JavaScript: ${t.javascript} (${Et(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${Et(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${Et(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${Et(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${Et(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${Et(t.go)})`),t.rust&&e.push(` Rust: ${t.rust} (${Et(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${Et(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${Et(t.perl)})`),t.r&&e.push(` R: ${t.r} (${Et(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${Et(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
78
- `)}function ax(t){let e=["javascript","shell"];return t.typescript&&e.push("typescript"),t.python&&e.push("python"),t.ruby&&e.push("ruby"),t.go&&e.push("go"),t.rust&&e.push("rust"),t.php&&e.push("php"),t.perl&&e.push("perl"),t.r&&e.push("r"),t.elixir&&e.push("elixir"),e}function cx(t,e,r){switch(e){case"javascript":return t.javascript==="bun"?["bun","run",r]:["node",r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript==="bun"?["bun","run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}function fs(t,e){if(Buffer.byteLength(t)<=e)return t;let r=t.split(`
79
- `),n=Math.floor(e*.6),o=e-n,s=[],i=0;for(let m of r){let f=Buffer.byteLength(m)+1;if(i+f>n)break;s.push(m),i+=f}let a=[],c=0;for(let m=r.length-1;m>=s.length;m--){let f=Buffer.byteLength(r[m])+1;if(c+f>o)break;a.unshift(r[m]),c+=f}let u=r.length-s.length-a.length,l=Buffer.byteLength(t)-i-c,d=`
80
-
81
- ... [${u} lines / ${(l/1024).toFixed(1)}KB truncated \u2014 showing first ${s.length} + last ${a.length} lines] ...
82
-
83
- `;return s.join(`
84
- `)+d+a.join(`
85
- `)}var Tt=process.platform==="win32";function xp(t){if(Tt&&t.pid)try{px(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var ms=class{#e;#t;#r;#n;#o=new Set;constructor(e){this.#e=e?.maxOutputBytes??102400,this.#t=e?.hardCapBytes??100*1024*1024,this.#r=e?.projectRoot??process.cwd(),this.#n=e?.runtimes??ha()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill(Tt?e:-e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=VO(_a(JO(),"ctx-mode-"));try{let a=this.#i(i,n,r),c=cx(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#a(a,i,o);let u=r==="shell"?this.#r:i,l=await this.#s(c,u,o,s);if(!l.backgrounded)try{lx(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{lx(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=KO(this.#r,r),a=this.#u(i,n,o);return this.execute({language:n,code:a,timeout:s})}#i(e,r,n){let o={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};n==="go"&&!r.includes("package ")&&(r=`package main
57
+ ]`;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 yi(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===b.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??ge(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===b.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=_i(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===b.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===b.ZodBranded&&t.keyType._def.type._def.typeName===b.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=gi(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Ch(t,e){if(e.mapStrategy==="record")return yi(t,e);let r=M(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||ge(e),n=M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||ge(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function Ih(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 zh(t){return t.target==="openAi"?void 0:{not:ge({...t,currentPath:[...t.currentPath,"not"]})}}function Nh(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Io={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function jh(t,e){if(e.target==="openApi3")return Ah(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Io&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Io[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 Ah(t,e)}var Ah=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>M(n._def,{...e,currentPath:[...e.currentPath,"anyOf",`${o}`]})).filter(n=>!!n&&(!e.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function Mh(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:Io[t.innerType._def.typeName],nullable:!0}:{type:[Io[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=M(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function Dh(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",el(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?G(r,"minimum",n.value,n.message,e):G(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),G(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?G(r,"maximum",n.value,n.message,e):G(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),G(r,"maximum",n.value,n.message,e));break;case"multipleOf":G(r,"multipleOf",n.value,n.message,e);break}return r}function Lh(t,e){let r=e.target==="openAi",n={type:"object",properties:{}},o=[],s=t.shape();for(let a in s){let c=s[a];if(c===void 0||c._def===void 0)continue;let u=qE(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=M(c._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});l!==void 0&&(n.properties[a]=l,u||o.push(a))}o.length&&(n.required=o);let i=HE(t,e);return i!==void 0&&(n.additionalProperties=i),n}function HE(t,e){if(t.catchall._def.typeName!=="ZodNever")return M(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]});switch(t.unknownKeys){case"passthrough":return e.allowedAdditionalProperties;case"strict":return e.rejectedAdditionalProperties;case"strip":return e.removeAdditionalStrategy==="strict"?e.allowedAdditionalProperties:e.rejectedAdditionalProperties}}function qE(t){try{return t.isOptional()}catch{return!0}}var Zh=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return M(t.innerType._def,e);let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:ge(e)},r]}:ge(e)};var Uh=(t,e)=>{if(e.pipeStrategy==="input")return M(t.in._def,e);if(e.pipeStrategy==="output")return M(t.out._def,e);let r=M(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=M(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function Hh(t,e){return M(t.type._def,e)}function qh(t,e){let n={type:"array",uniqueItems:!0,items:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&G(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&G(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function Fh(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>M(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:M(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>M(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function Bh(t){return{not:ge(t)}}function Vh(t){return ge(t)}var Kh=(t,e)=>M(t.innerType._def,e);var Jh=(t,e,r)=>{switch(e){case b.ZodString:return _i(t,r);case b.ZodNumber:return Dh(t,r);case b.ZodObject:return Lh(t,r);case b.ZodBigInt:return Sh(t,r);case b.ZodBoolean:return bh();case b.ZodDate:return tl(t,r);case b.ZodUndefined:return Bh(r);case b.ZodNull:return Nh(r);case b.ZodArray:return kh(t,r);case b.ZodUnion:case b.ZodDiscriminatedUnion:return jh(t,r);case b.ZodIntersection:return Ph(t,r);case b.ZodTuple:return Fh(t,r);case b.ZodRecord:return yi(t,r);case b.ZodLiteral:return Rh(t,r);case b.ZodEnum:return $h(t);case b.ZodNativeEnum:return Ih(t);case b.ZodNullable:return Mh(t,r);case b.ZodOptional:return Zh(t,r);case b.ZodMap:return Ch(t,r);case b.ZodSet:return qh(t,r);case b.ZodLazy:return()=>t.getter()._def;case b.ZodPromise:return Hh(t,r);case b.ZodNaN:case b.ZodNever:return zh(r);case b.ZodEffects:return Th(t,r);case b.ZodAny:return ge(r);case b.ZodUnknown:return Vh(r);case b.ZodDefault:return Eh(t,r);case b.ZodBranded:return gi(t,r);case b.ZodReadonly:return Kh(t,r);case b.ZodCatch:return wh(t,r);case b.ZodPipeline:return Uh(t,r);case b.ZodFunction:case b.ZodVoid:case b.ZodSymbol:return;default:return(n=>{})(e)}};function M(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==yh)return a}if(n&&!r){let a=FE(n,e);if(a!==void 0)return a}let o={def:t,path:e.currentPath,jsonSchema:void 0};e.seen.set(t,o);let s=Jh(t,t.typeName,e),i=typeof s=="function"?M(s(),e):s;if(i&&BE(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var FE=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:hi(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`),ge(e)):e.$refStrategy==="seen"?ge(e):void 0}},BE=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var ol=(t,e)=>{let r=vh(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:M(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??ge(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=M(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??ge(r),i=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;i!==void 0&&(s.title=i),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let a=o===void 0?n?{...s,[r.definitionPath]:n}:s:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,o].join("/"),[r.definitionPath]:{...n,[o]:s}};return r.target==="jsonSchema7"?a.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(a.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in a||"oneOf"in a||"allOf"in a||"type"in a&&Array.isArray(a.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),a};function VE(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function sl(t,e){return at(t)?$u(t,{target:VE(e?.target),io:e?.pipeStrategy??"input"}):ol(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function il(t){let r=or(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Js(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function al(t,e){let r=nr(t,e);if(!r.success)throw r.error;return r.data}var KE=6e4,xi=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(ti,r=>{this._oncancel(r)}),this.setNotificationHandler(ni,r=>{this._onprogress(r)}),this.setRequestHandler(ri,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(oi,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(N.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(ii,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,f=new O(d.error.code,d.error.message,d.error.data);l(f)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new O(N.InvalidParams,`Task not found: ${s}`);if(!ir(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(ir(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[sr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(ai,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new O(N.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(ui,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(N.InvalidParams,`Task not found: ${r.params.taskId}`);if(ir(o.status))throw new O(N.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new O(N.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof O?o:new O(N.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),O.fromError(N.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),bo(s)||ih(s)?this._onresponse(s):Zu(s)?this._onrequest(s,i):sh(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=O.fromError(N.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[sr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:N.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=rh(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,f)=>{if(i.signal.aborted)throw new O(N.ConnectionClosed,"Request was cancelled");let m={...f,relatedRequestId:e.id};s&&!m.relatedTask&&(m.relatedTask={taskId:s});let p=m.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,m)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:N.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.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),bo(e))n(e);else{let i=new O(e.error.code,e.error.message,e.error.data);n(i)}return}let o=this._responseHandlers.get(r);if(o===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let s=!1;if(bo(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),bo(e))o(e);else{let i=O.fromError(e.error.code,e.error.message,e.error.data);o(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(e,r,n)}}catch(i){yield{type:"error",error:i instanceof O?i:new O(N.InternalError,String(i))}}return}let s;try{let i=await this.request(e,wn,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new O(N.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},ir(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new O(N.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new O(N.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof O?i:new O(N.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=y=>{l(y)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(y){d(y);return}n?.signal?.throwIfAborted();let f=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:f}}),a&&(m.params={...m.params,task:a}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[sr]:c}});let p=y=>{this._responseHandlers.delete(f),this._progressHandlers.delete(f),this._cleanupTimeout(f),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:f,reason:String(y)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(E=>this._onerror(new Error(`Failed to send cancellation: ${E}`)));let k=y instanceof O?y:new O(N.RequestTimeout,String(y));l(k)};this._responseHandlers.set(f,y=>{if(!n?.signal?.aborted){if(y instanceof Error)return l(y);try{let k=nr(r,y.result);k.success?u(k.data):l(k.error)}catch(k){l(k)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??KE,g=()=>p(O.fromError(N.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let v=c?.taskId;if(v){let y=k=>{let E=this._responseHandlers.get(f);E?E(k):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,y),this._enqueueTaskMessage(v,{type:"request",message:m,timestamp:Date.now()}).catch(k=>{this._cleanupTimeout(f),l(k)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(y=>{this._cleanupTimeout(f),l(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},si,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},ci,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},uh,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||{},[sr]: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||{},[sr]: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||{},[sr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=il(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=al(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=il(e);this._notificationHandlers.set(n,o=>{let s=al(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"&&Zu(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new O(N.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new O(N.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new O(N.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new O(N.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=Po.parse({method:"notifications/tasks/status",params:a});await this.notification(c),ir(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,i)=>{let a=await n.getTask(o,r);if(!a)throw new O(N.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(ir(a.status))throw new O(N.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=Po.parse({method:"notifications/tasks/status",params:c});await this.notification(u),ir(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function Wh(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Gh(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];Wh(i)&&Wh(s)?r[o]={...i,...s}:r[o]=s}return r}var jy=ef(Vd(),1),My=ef(Ay(),1);function DO(){let t=new jy.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,My.default)(t),t}var ta=class{constructor(e){this._ajv=e??DO()}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 ra=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(l=>l.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(l=>l.type==="tool_use");if(i){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let l=new Set(c.filter(f=>f.type==="tool_use").map(f=>f.id)),d=new Set(s.filter(f=>f.type==="tool_result").map(f=>f.toolUseId));if(l.size!==d.size||![...l].every(f=>d.has(f)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},Co,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},On,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 Dy(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 Ly(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 na=class extends xi{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Oo.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 ta,this.setRequestHandler(qu,n=>this._oninitialize(n)),this.setNotificationHandler(Fu,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Yu,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Oo.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new ra(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Gh(this._capabilities,e)}setRequestHandler(e,r){let o=or(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(at(o)){let a=o;s=a._zod?.def?.value??a.value}else{let a=o;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=nr(Rn,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new O(N.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,f=await Promise.resolve(r(c,u));if(d.task){let p=nr(wn,f);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new O(N.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let m=nr(fi,f);if(!m.success){let p=m.error instanceof Error?m.error.message:String(m.error);throw new O(N.InvalidParams,`Invalid tools/call result: ${p}`)}return m.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){Ly(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Dy(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:Qm.includes(r)?r:Du,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"},ei)}async createMessage(e,r){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let n=e.messages[e.messages.length-1],o=Array.isArray(n.content)?n.content:[n.content],s=o.some(u=>u.type==="tool_result"),i=e.messages.length>1?e.messages[e.messages.length-2]:void 0,a=i?Array.isArray(i.content)?i.content:[i.content]:[],c=a.some(u=>u.type==="tool_use");if(s){if(o.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let u=new Set(a.filter(d=>d.type==="tool_use").map(d=>d.id)),l=new Set(o.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(u.size!==l.size||![...u].every(d=>l.has(d)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},Xu,r):this.request({method:"sampling/createMessage",params:e},Co,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},On,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},On,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new O(N.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof O?i:new O(N.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},Qu,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 Uy=Symbol.for("mcp.completable");function ep(t){return!!t&&typeof t=="object"&&Uy in t}function Hy(t){return t[Uy]?.complete}var Zy;(function(t){t.Completable="McpCompletable"})(Zy||(Zy={}));var LO=/^[A-Za-z0-9._-]{1,128}$/;function ZO(t){let e=[];if(t.length===0)return{isValid:!1,warnings:["Tool name cannot be empty"]};if(t.length>128)return{isValid:!1,warnings:[`Tool name exceeds maximum length of 128 characters (current: ${t.length})`]};if(t.includes(" ")&&e.push("Tool name contains spaces, which may cause parsing issues"),t.includes(",")&&e.push("Tool name contains commas, which may cause parsing issues"),(t.startsWith("-")||t.endsWith("-"))&&e.push("Tool name starts or ends with a dash, which may cause parsing issues in some contexts"),(t.startsWith(".")||t.endsWith("."))&&e.push("Tool name starts or ends with a dot, which may cause parsing issues in some contexts"),!LO.test(t)){let r=t.split("").filter(n=>!/[A-Za-z0-9._-]/.test(n)).filter((n,o,s)=>s.indexOf(n)===o);return e.push(`Tool name contains invalid characters: ${r.map(n=>`"${n}"`).join(", ")}`,"Allowed characters are: A-Z, a-z, 0-9, underscore (_), dash (-), and dot (.)"),{isValid:!1,warnings:e}}return{isValid:!0,warnings:e}}function UO(t,e){if(e.length>0){console.warn(`Tool name validation warning for "${t}":`);for(let r of e)console.warn(` - ${r}`);console.warn("Tool registration will proceed, but this may cause compatibility issues."),console.warn("Consider updating the tool name to conform to the MCP tool naming standard."),console.warn("See SEP: Specify Format for Tool Names (https://github.com/modelcontextprotocol/modelcontextprotocol/issues/986) for more details.")}}function tp(t){let e=ZO(t);return UO(t,e.warnings),e.isValid}var oa=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 sa=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 na(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new oa(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(hr(pi)),this.server.assertCanSetRequestHandler(hr(Rn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(pi,()=>({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=Sn(r.inputSchema);return o?sl(o,{strictUnions:!0,pipeStrategy:"input"}):HO})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=Sn(r.outputSchema);o&&(n.outputSchema=sl(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(Rn,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new O(N.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new O(N.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new O(N.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new O(N.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof O&&n.code===N.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=Sn(e.inputSchema)??e.inputSchema,i=await Vs(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Ks(a);throw new O(N.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new O(N.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=Sn(e.outputSchema),s=await Vs(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Ks(i);throw new O(N.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(f=>setTimeout(f,l));let d=await n.taskStore.getTask(c);if(!d)throw new O(N.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(hr(mi)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(mi,async e=>{switch(e.params.ref.type){case"ref/prompt":return hh(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return gh(e),this.handleResourceCompletion(e,e.params.ref);default:throw new O(N.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new O(N.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new O(N.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return cs;let s=or(n.argsSchema)?.[e.params.argument.name];if(!ep(s))return cs;let i=Hy(s);if(!i)return cs;let a=await i(e.params.argument.value,e.params.context);return Fy(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 cs;throw new O(N.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return cs;let s=await o(e.params.argument.value,e.params.context);return Fy(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(hr(Tn)),this.server.assertCanSetRequestHandler(hr($n)),this.server.assertCanSetRequestHandler(hr(li)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Tn,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($n,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(li,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new O(N.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new O(N.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(hr(Pn)),this.server.assertCanSetRequestHandler(hr(di)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Pn,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?qO(r.argsSchema):void 0}))})),this.server.setRequestHandler(di,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new O(N.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new O(N.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=Sn(n.argsSchema),s=await Vs(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Ks(c);throw new O(N.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:Hr(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=Hr(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof Je?c._def?.innerType:c;return ep(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){tp(e);let l={title:r,description:n,inputSchema:qy(o),outputSchema:qy(s),annotations:i,execution:a,_meta:c,handler:u,enabled:!0,disable:()=>l.update({enabled:!1}),enable:()=>l.update({enabled:!0}),remove:()=>l.update({name:null}),update:d=>{typeof d.name<"u"&&d.name!==e&&(typeof d.name=="string"&&tp(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=l)),typeof d.title<"u"&&(l.title=d.title),typeof d.description<"u"&&(l.description=d.description),typeof d.paramsSchema<"u"&&(l.inputSchema=Hr(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Hr(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];if(rp(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!rp(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 HO={type:"object",properties:{}};function By(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function Vy(t){return"_def"in t||"_zod"in t||By(t)}function rp(t){return typeof t!="object"||t===null||Vy(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(By)}function qy(t){if(t){if(rp(t))return Hr(t);if(!Vy(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function qO(t){let e=or(t);return e?Object.entries(e).map(([r,n])=>{let o=Rm(n),s=Om(n);return{name:r,description:o,required:!s}}):[]}function hr(t){let r=or(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Js(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function Fy(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var cs={completion:{values:[],hasMore:!1}};import Jy from"node:process";var ia=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
58
+ `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),FO(r)}clear(){this._buffer=void 0}};function FO(t){return ah.parse(JSON.parse(t))}function Ky(t){return JSON.stringify(t)+`
59
+ `}var aa=class{constructor(e=Jy.stdin,r=Jy.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new ia,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=Ky(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as Zv}from"node:module";import{createHash as Uv}from"node:crypto";import{existsSync as xr,unlinkSync as mI,readdirSync as hI,readFileSync as Hv,rmSync as gI,mkdirSync as _I}from"node:fs";import{join as un,dirname as Gp,resolve as an}from"node:path";import{fileURLToPath as yI}from"node:url";import{homedir as wa,tmpdir as xI}from"node:os";import{spawn as KO,execSync as JO,execFileSync as nx}from"node:child_process";import{mkdtempSync as WO,writeFileSync as ex,rmSync as tx,existsSync as rx}from"node:fs";import{join as la,resolve as ox}from"node:path";import{tmpdir as GO}from"node:os";import{execSync as np}from"node:child_process";import{existsSync as Wy}from"node:fs";var op=process.platform==="win32";function Ae(t){try{let e=op?`where ${t}`:`command -v ${t}`;return np(e,{stdio:"pipe"}),!0}catch{return!1}}function Gy(){if(Ae("bun"))return!0;if(!op){let t=process.env.HOME??process.env.USERPROFILE??"";if(t&&Wy(`${t}/.bun/bin/bun`))return!0}return!1}function BO(){return Ae("bun")?"bun":`${process.env.HOME??process.env.USERPROFILE??""}/.bun/bin/bun`}function VO(){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(Wy(e))return e;try{let r=np("where bash",{encoding:"utf-8",stdio:"pipe"}).trim().split(/\r?\n/).map(n=>n.trim()).filter(Boolean);for(let n of r){let o=n.toLowerCase();if(!(o.includes("system32")||o.includes("windowsapps")))return n}return null}catch{return null}}function wt(t){try{return np(`${t} --version`,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function ca(){let e=Gy()?BO():null;return{javascript:e??process.execPath,typescript:e||(Ae("tsx")?"tsx":Ae("ts-node")?"ts-node":null),python:Ae("python3")?"python3":Ae("python")?"python":null,shell:op?VO()??(Ae("sh")?"sh":Ae("powershell")?"powershell":"cmd.exe"):Ae("bash")?"bash":"sh",ruby:Ae("ruby")?"ruby":null,go:Ae("go")?"go":null,rust:Ae("rustc")?"rustc":null,php:Ae("php")?"php":null,perl:Ae("perl")?"perl":null,r:Ae("Rscript")?"Rscript":Ae("r")?"r":null,elixir:Ae("elixir")?"elixir":null}}function ua(){return Gy()}function Yy(t){let e=[],r=t.javascript?.endsWith("bun")??!1;return e.push(` JavaScript: ${t.javascript} (${wt(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${wt(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${wt(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${wt(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${wt(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${wt(t.go)})`),t.rust&&e.push(` Rust: ${t.rust} (${wt(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${wt(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${wt(t.perl)})`),t.r&&e.push(` R: ${t.r} (${wt(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${wt(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
60
+ `)}function Xy(t){let e=["javascript","shell"];return t.typescript&&e.push("typescript"),t.python&&e.push("python"),t.ruby&&e.push("ruby"),t.go&&e.push("go"),t.rust&&e.push("rust"),t.php&&e.push("php"),t.perl&&e.push("perl"),t.r&&e.push("r"),t.elixir&&e.push("elixir"),e}function Qy(t,e,r){switch(e){case"javascript":return t.javascript.endsWith("bun")?[t.javascript,"run",r]:[t.javascript,r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript?.endsWith("bun")?[t.typescript,"run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}var mt=process.platform==="win32",YO=(()=>{if(mt)return process.env.TEMP??process.env.TMP??GO();try{let t=nx(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:ox(t,"..");if(e&&e!==process.cwd())return e}catch{}return"/tmp"})();function sp(t){if(mt&&t.pid)try{JO(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var us=class{#e;#t;#r;#n=new Set;constructor(e){this.#e=e?.hardCapBytes??100*1024*1024,this.#t=e?.projectRoot??process.cwd(),this.#r=e?.runtimes??ca()}get runtimes(){return{...this.#r}}cleanupBackgrounded(){for(let e of this.#n)try{process.kill(mt?e:-e,"SIGTERM")}catch{}this.#n.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=WO(la(YO,".ctx-mode-"));try{let a=this.#s(i,n,r),c=Qy(this.#r,r,a);if(c[0]==="__rust_compile_run__")return await this.#i(a,i,o);let u=r==="shell"?this.#t:i,l=await this.#o(c,u,i,o,s);if(!l.backgrounded)try{tx(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{tx(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=ox(this.#t,r),a=this.#c(i,n,o);return this.execute({language:n,code:a,timeout:s})}#s(e,r,n){let o={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};n==="go"&&!r.includes("package ")&&(r=`package main
86
61
 
87
62
  import "fmt"
88
63
 
@@ -90,12 +65,12 @@ func main() {
90
65
  ${r}
91
66
  }
92
67
  `),n==="php"&&!r.trimStart().startsWith("<?")&&(r=`<?php
93
- ${r}`),n==="elixir"&&dx(_a(this.#r,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(_a(this.#r,"_build/dev/lib"))}, "*/ebin"))
68
+ ${r}`),n==="elixir"&&rx(la(this.#t,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(la(this.#t,"_build/dev/lib"))}, "*/ebin"))
94
69
  |> Enum.each(&Code.prepend_path/1)
95
70
 
96
- ${r}`);let s=_a(e,`script.${o[n]}`);return n==="shell"?ux(s,r,{encoding:"utf-8",mode:448}):ux(s,r,"utf-8"),s}async#a(e,r,n){let o=Tt?".exe":"",s=e.replace(/\.rs$/,"")+o;try{px(`rustc ${e} -o ${s}`,{cwd:r,timeout:Math.min(n,6e4),encoding:"utf-8",stdio:["pipe","pipe","pipe"]})}catch(i){return{stdout:"",stderr:`Compilation failed:
97
- ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#s([s],r,n)}async#s(e,r,n,o=!1){return new Promise(s=>{let i=Tt&&["tsx","ts-node","elixir"].includes(e[0]),a=e[0],c;Tt&&e.length===2&&e[1]?c=[e[1].replace(/\\/g,"/")]:c=Tt?e.slice(1).map(y=>y.replace(/\\/g,"/")):e.slice(1);let u=BO(a,c,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(r),shell:i,detached:!Tt}),l=!1,d=!1,m=setTimeout(()=>{if(l=!0,o){d=!0,u.pid&&this.#o.add(u.pid),u.unref(),u.stdout.destroy(),u.stderr.destroy();let y=Buffer.concat(f).toString("utf-8"),v=Buffer.concat(p).toString("utf-8"),S=this.#e;s({stdout:fs(y,S),stderr:fs(v,S),exitCode:0,timedOut:!0,backgrounded:!0})}else xp(u)},n),f=[],p=[],h=0,g=!1;u.stdout.on("data",y=>{h+=y.length,h<=this.#t?f.push(y):g||(g=!0,xp(u))}),u.stderr.on("data",y=>{h+=y.length,h<=this.#t?p.push(y):g||(g=!0,xp(u))}),u.on("close",y=>{if(clearTimeout(m),d)return;let v=Buffer.concat(f).toString("utf-8"),S=Buffer.concat(p).toString("utf-8");g&&(S+=`
98
- [output capped at ${(this.#t/1024/1024).toFixed(0)}MB \u2014 process killed]`);let w=this.#e,R=fs(v,w),ae=fs(S,w);s({stdout:R,stderr:ae,exitCode:l?1:y??1,timedOut:l})}),u.on("error",y=>{clearTimeout(m),!d&&s({stdout:"",stderr:y.message,exitCode:1,timedOut:!1})})})}#c(e){let r=process.env.HOME??process.env.USERPROFILE??e,n=new Set(["BASH_ENV","ENV","PROMPT_COMMAND","PS4","SHELLOPTS","BASHOPTS","CDPATH","INPUTRC","BASH_XTRACEFD","NODE_OPTIONS","NODE_PATH","PYTHONSTARTUP","PYTHONHOME","PYTHONWARNINGS","PYTHONBREAKPOINT","PYTHONINSPECT","RUBYOPT","RUBYLIB","PERL5OPT","PERL5LIB","PERLLIB","PERL5DB","ERL_AFLAGS","ERL_FLAGS","ELIXIR_ERL_OPTIONS","ERL_LIBS","GOFLAGS","CGO_CFLAGS","CGO_LDFLAGS","RUSTC","RUSTC_WRAPPER","RUSTC_WORKSPACE_WRAPPER","CARGO_BUILD_RUSTC","CARGO_BUILD_RUSTC_WRAPPER","RUSTFLAGS","PHPRC","PHP_INI_SCAN_DIR","R_PROFILE","R_PROFILE_USER","R_HOME","LD_PRELOAD","DYLD_INSERT_LIBRARIES","OPENSSL_CONF","OPENSSL_ENGINES","CC","CXX","AR","GIT_TEMPLATE_DIR","GIT_CONFIG_GLOBAL","GIT_CONFIG_SYSTEM","GIT_EXEC_PATH","GIT_SSH","GIT_SSH_COMMAND","GIT_ASKPASS"]),o={};for(let[s,i]of Object.entries(process.env))i!==void 0&&!n.has(s)&&!s.startsWith("BASH_FUNC_")&&(o[s]=i);if(o.TMPDIR=e,o.HOME=r,o.LANG="en_US.UTF-8",o.PYTHONDONTWRITEBYTECODE="1",o.PYTHONUNBUFFERED="1",o.PYTHONUTF8="1",o.NO_COLOR="1",Tt&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=Tt?"":"/usr/local/bin:/usr/bin:/bin"),Tt){o.MSYS_NO_PATHCONV="1",o.MSYS2_ARG_CONV_EXCL="*";let s="C:\\Program Files\\Git\\usr\\bin",i="C:\\Program Files\\Git\\bin";o.PATH.includes(s)||(o.PATH=`${s};${i};${o.PATH}`)}if(!o.SSL_CERT_FILE){let s=Tt?[]:["/etc/ssl/cert.pem","/etc/ssl/certs/ca-certificates.crt","/etc/pki/tls/certs/ca-bundle.crt","/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"];for(let i of s)if(dx(i)){o.SSL_CERT_FILE=i;break}}return o}#u(e,r,n){let o=JSON.stringify(e);switch(r){case"javascript":case"typescript":return`const FILE_CONTENT_PATH = ${o};
71
+ ${r}`);let s=la(e,`script.${o[n]}`);return n==="shell"?ex(s,r,{encoding:"utf-8",mode:448}):ex(s,r,"utf-8"),s}async#i(e,r,n){let o=mt?".exe":"",s=e.replace(/\.rs$/,"")+o;try{nx("rustc",[e,"-o",s],{cwd:r,timeout:Math.min(n,6e4),encoding:"utf-8",stdio:["pipe","pipe","pipe"]})}catch(i){return{stdout:"",stderr:`Compilation failed:
72
+ ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#o([s],r,r,n)}async#o(e,r,n,o,s=!1){return new Promise(i=>{let a=mt&&["tsx","ts-node","elixir"].includes(e[0]),c=e[0],u;mt&&e.length===2&&e[1]?u=[e[1].replace(/\\/g,"/")]:u=mt?e.slice(1).map(y=>y.replace(/\\/g,"/")):e.slice(1);let l=KO(c,u,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#a(n),shell:a,detached:!mt}),d=!1,f=!1,m=setTimeout(()=>{if(d=!0,s){f=!0,l.pid&&this.#n.add(l.pid),l.unref(),l.stdout.destroy(),l.stderr.destroy();let y=Buffer.concat(p).toString("utf-8"),k=Buffer.concat(h).toString("utf-8");i({stdout:y,stderr:k,exitCode:0,timedOut:!0,backgrounded:!0})}else sp(l)},o),p=[],h=[],g=0,v=!1;l.stdout.on("data",y=>{g+=y.length,g<=this.#e?p.push(y):v||(v=!0,sp(l))}),l.stderr.on("data",y=>{g+=y.length,g<=this.#e?h.push(y):v||(v=!0,sp(l))}),l.on("close",y=>{if(clearTimeout(m),f)return;let k=Buffer.concat(p).toString("utf-8"),E=Buffer.concat(h).toString("utf-8");v&&(E+=`
73
+ [output capped at ${(this.#e/1024/1024).toFixed(0)}MB \u2014 process killed]`),i({stdout:k,stderr:E,exitCode:d?1:y??1,timedOut:d})}),l.on("error",y=>{clearTimeout(m),!f&&i({stdout:"",stderr:y.message,exitCode:1,timedOut:!1})})})}#a(e){let r=process.env.HOME??process.env.USERPROFILE??e,n=new Set(["BASH_ENV","ENV","PROMPT_COMMAND","PS4","SHELLOPTS","BASHOPTS","CDPATH","INPUTRC","BASH_XTRACEFD","NODE_OPTIONS","NODE_PATH","PYTHONSTARTUP","PYTHONHOME","PYTHONWARNINGS","PYTHONBREAKPOINT","PYTHONINSPECT","RUBYOPT","RUBYLIB","PERL5OPT","PERL5LIB","PERLLIB","PERL5DB","ERL_AFLAGS","ERL_FLAGS","ELIXIR_ERL_OPTIONS","ERL_LIBS","GOFLAGS","CGO_CFLAGS","CGO_LDFLAGS","RUSTC","RUSTC_WRAPPER","RUSTC_WORKSPACE_WRAPPER","CARGO_BUILD_RUSTC","CARGO_BUILD_RUSTC_WRAPPER","RUSTFLAGS","PHPRC","PHP_INI_SCAN_DIR","R_PROFILE","R_PROFILE_USER","R_HOME","LD_PRELOAD","DYLD_INSERT_LIBRARIES","OPENSSL_CONF","OPENSSL_ENGINES","CC","CXX","AR","GIT_TEMPLATE_DIR","GIT_CONFIG_GLOBAL","GIT_CONFIG_SYSTEM","GIT_EXEC_PATH","GIT_SSH","GIT_SSH_COMMAND","GIT_ASKPASS"]),o={};for(let[s,i]of Object.entries(process.env))i!==void 0&&!n.has(s)&&!s.startsWith("BASH_FUNC_")&&(o[s]=i);if(o.TMPDIR=e,o.HOME=r,o.LANG="en_US.UTF-8",o.PYTHONDONTWRITEBYTECODE="1",o.PYTHONUNBUFFERED="1",o.PYTHONUTF8="1",o.NO_COLOR="1",mt&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=mt?"":"/usr/local/bin:/usr/bin:/bin"),mt){o.MSYS_NO_PATHCONV="1",o.MSYS2_ARG_CONV_EXCL="*";let s="C:\\Program Files\\Git\\usr\\bin",i="C:\\Program Files\\Git\\bin";o.PATH.includes(s)||(o.PATH=`${s};${i};${o.PATH}`)}if(!o.SSL_CERT_FILE){let s=mt?[]:["/etc/ssl/cert.pem","/etc/ssl/certs/ca-certificates.crt","/etc/pki/tls/certs/ca-bundle.crt","/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"];for(let i of s)if(rx(i)){o.SSL_CERT_FILE=i;break}}return o}#c(e,r,n){let o=JSON.stringify(e);switch(r){case"javascript":case"typescript":return`const FILE_CONTENT_PATH = ${o};
99
74
  const file_path = FILE_CONTENT_PATH;
100
75
  const FILE_CONTENT = require("fs").readFileSync(FILE_CONTENT_PATH, "utf-8");
101
76
  ${n}`;case"python":return`FILE_CONTENT_PATH = ${o}
@@ -150,7 +125,7 @@ FILE_CONTENT <- paste(FILE_CONTENT, collapse="\\n")
150
125
  ${n}`;case"elixir":return`file_content_path = ${o}
151
126
  file_path = file_content_path
152
127
  file_content = File.read!(file_content_path)
153
- ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructor(e){this.#e=e}pragma(e){let n=this.#e.prepare(`PRAGMA ${e}`).all();if(!n||n.length===0)return;if(n.length>1)return n;let o=Object.values(n[0]);return o.length===1?o[0]:n[0]}exec(e){let r="",n=null;for(let s=0;s<e.length;s++){let i=e[s];if(n)r+=i,i===n&&(n=null);else if(i==="'"||i==='"')r+=i,n=i;else if(i===";"){let a=r.trim();a&&this.#e.prepare(a).run(),r=""}else r+=i}let o=r.trim();return o&&this.#e.prepare(o).run(),this}prepare(e){let r=this.#e.prepare(e);return{run:(...n)=>r.run(...n),get:(...n)=>{let o=r.get(...n);return o===null?void 0:o},all:(...n)=>r.all(...n),iterate:(...n)=>r.iterate(...n)}}transaction(e){return this.#e.transaction(e)}close(){this.#e.close()}},ya=null;function hs(){if(!ya){let t=GO(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;ya=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0});return new vp(s)}}else ya=t("better-sqlite3")}return ya}function fx(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL")}function mx(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}import{readFileSync as WO,readdirSync as _x,unlinkSync as Sp,existsSync as YO,statSync as yx}from"node:fs";import{tmpdir as xx}from"node:os";import{join as kp}from"node:path";var hx=new Set(["the","and","for","are","but","not","you","all","can","had","her","was","one","our","out","has","his","how","its","may","new","now","old","see","way","who","did","get","got","let","say","she","too","use","will","with","this","that","from","they","been","have","many","some","them","than","each","make","like","just","over","such","take","into","year","your","good","could","would","about","which","their","there","other","after","should","through","also","more","most","only","very","when","what","then","these","those","being","does","done","both","same","still","while","where","here","were","much","update","updates","updated","deps","dev","tests","test","add","added","fix","fixed","run","running","using"]);function XO(t,e="AND"){let r=t.replace(/['"(){}[\]*:^~]/g," ").split(/\s+/).filter(n=>n.length>0&&!["AND","OR","NOT","NEAR"].includes(n.toUpperCase()));return r.length===0?'""':r.map(n=>`"${n}"`).join(e==="OR"?" OR ":" ")}function QO(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=r.split(/\s+/).filter(o=>o.length>=3);return n.length===0?"":n.map(o=>`"${o}"`).join(e==="OR"?" OR ":" ")}function eC(t,e){if(t.length===0)return e.length;if(e.length===0)return t.length;let r=Array.from({length:e.length+1},(n,o)=>o);for(let n=1;n<=t.length;n++){let o=[n];for(let s=1;s<=e.length;s++)o[s]=t[n-1]===e[s-1]?r[s-1]:1+Math.min(r[s],o[s-1],r[s-1]);r=o}return r[e.length]}function tC(t){return t<=4?1:t<=12?2:3}var gx=4096;function bp(){let t=xx(),e=0;try{let r=_x(t);for(let n of r){let o=n.match(/^context-mode-(\d+)\.db$/);if(!o)continue;let s=parseInt(o[1],10);if(s!==process.pid)try{process.kill(s,0)}catch{let i=kp(t,n);for(let a of["","-wal","-shm"])try{Sp(i+a)}catch{}e++}}}catch{}return e}function vx(t,e){let r=0;try{if(!YO(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=_x(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=kp(t,s);if(yx(i).mtimeMs<n){for(let c of["","-wal","-shm"])try{Sp(i+c)}catch{}r++}}catch{}}catch{}return r}function rC(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function nC(t){if(t.length===0)return 1/0;if(t.length===1)return 0;let e=t.map(o=>[...o].sort((s,i)=>s-i)),r=new Array(e.length).fill(0),n=1/0;for(;;){let o=1/0,s=-1/0,i=0;for(let c=0;c<e.length;c++){let u=e[c][r[c]];u<o&&(o=u,i=c),u>s&&(s=u)}let a=s-o;if(a<n&&(n=a),r[i]++,r[i]>=e[i].length)break}return n}var xa=class{#e;#t;#r;#n;#o;#i;#a;#s;#c;#u;#d;#p;#f;#m;#h;#g;#_;#y;#x;#v;#S;#k;#b;#w;#E;constructor(e){let r=hs();this.#t=e??kp(xx(),`context-mode-${process.pid}.db`),this.#e=new r(this.#t,{timeout:5e3}),fx(this.#e),this.#R(),this.#O()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{Sp(this.#t+e)}catch{}}#R(){this.#e.exec(`
128
+ ${n}`}}};import{createRequire as XO}from"node:module";var ip=class{#e;constructor(e){this.#e=e}pragma(e){let n=this.#e.prepare(`PRAGMA ${e}`).all();if(!n||n.length===0)return;if(n.length>1)return n;let o=Object.values(n[0]);return o.length===1?o[0]:n[0]}exec(e){let r="",n=null;for(let s=0;s<e.length;s++){let i=e[s];if(n)r+=i,i===n&&(n=null);else if(i==="'"||i==='"')r+=i,n=i;else if(i===";"){let a=r.trim();a&&this.#e.prepare(a).run(),r=""}else r+=i}let o=r.trim();return o&&this.#e.prepare(o).run(),this}prepare(e){let r=this.#e.prepare(e);return{run:(...n)=>r.run(...n),get:(...n)=>{let o=r.get(...n);return o===null?void 0:o},all:(...n)=>r.all(...n),iterate:(...n)=>r.iterate(...n)}}transaction(e){return this.#e.transaction(e)}close(){this.#e.close()}},da=null;function ls(){if(!da){let t=XO(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;da=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0});return new ip(s)}}else da=t("better-sqlite3")}return da}function sx(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL")}function ix(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}import{readFileSync as QO,readdirSync as ux,unlinkSync as ap,existsSync as eC,statSync as lx}from"node:fs";import{tmpdir as dx}from"node:os";import{join as cp}from"node:path";var ax=new Set(["the","and","for","are","but","not","you","all","can","had","her","was","one","our","out","has","his","how","its","may","new","now","old","see","way","who","did","get","got","let","say","she","too","use","will","with","this","that","from","they","been","have","many","some","them","than","each","make","like","just","over","such","take","into","year","your","good","could","would","about","which","their","there","other","after","should","through","also","more","most","only","very","when","what","then","these","those","being","does","done","both","same","still","while","where","here","were","much","update","updates","updated","deps","dev","tests","test","add","added","fix","fixed","run","running","using"]);function tC(t,e="AND"){let r=t.replace(/['"(){}[\]*:^~]/g," ").split(/\s+/).filter(n=>n.length>0&&!["AND","OR","NOT","NEAR"].includes(n.toUpperCase()));return r.length===0?'""':r.map(n=>`"${n}"`).join(e==="OR"?" OR ":" ")}function rC(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=r.split(/\s+/).filter(o=>o.length>=3);return n.length===0?"":n.map(o=>`"${o}"`).join(e==="OR"?" OR ":" ")}function nC(t,e){if(t.length===0)return e.length;if(e.length===0)return t.length;let r=Array.from({length:e.length+1},(n,o)=>o);for(let n=1;n<=t.length;n++){let o=[n];for(let s=1;s<=e.length;s++)o[s]=t[n-1]===e[s-1]?r[s-1]:1+Math.min(r[s],o[s-1],r[s-1]);r=o}return r[e.length]}function oC(t){return t<=4?1:t<=12?2:3}var cx=4096;function up(){let t=dx(),e=0;try{let r=ux(t);for(let n of r){let o=n.match(/^context-mode-(\d+)\.db$/);if(!o)continue;let s=parseInt(o[1],10);if(s!==process.pid)try{process.kill(s,0)}catch{let i=cp(t,n);for(let a of["","-wal","-shm"])try{ap(i+a)}catch{}e++}}}catch{}return e}function px(t,e){let r=0;try{if(!eC(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=ux(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=cp(t,s);if(lx(i).mtimeMs<n){for(let c of["","-wal","-shm"])try{ap(i+c)}catch{}r++}}catch{}}catch{}return r}function sC(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function iC(t){if(t.length===0)return 1/0;if(t.length===1)return 0;let e=t.map(o=>[...o].sort((s,i)=>s-i)),r=new Array(e.length).fill(0),n=1/0;for(;;){let o=1/0,s=-1/0,i=0;for(let c=0;c<e.length;c++){let u=e[c][r[c]];u<o&&(o=u,i=c),u>s&&(s=u)}let a=s-o;if(a<n&&(n=a),r[i]++,r[i]>=e[i].length)break}return n}var pa=class{#e;#t;#r;#n;#s;#i;#o;#a;#c;#d;#p;#f;#m;#h;#g;#_;#y;#x;#v;#k;#S;#b;#w;#E;#T;#$;#P;#R;#O;constructor(e){let r=ls();this.#t=e??cp(dx(),`context-mode-${process.pid}.db`),this.#e=new r(this.#t,{timeout:5e3}),sx(this.#e),this.#A(),this.#j()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{ap(this.#t+e)}catch{}}#A(){this.#e.exec(`
154
129
  CREATE TABLE IF NOT EXISTS sources (
155
130
  id INTEGER PRIMARY KEY AUTOINCREMENT,
156
131
  label TEXT NOT NULL,
@@ -178,7 +153,9 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
178
153
  CREATE TABLE IF NOT EXISTS vocabulary (
179
154
  word TEXT PRIMARY KEY
180
155
  );
181
- `)}#O(){this.#r=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, 0, 0)"),this.#n=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, ?, ?)"),this.#o=this.#e.prepare("INSERT INTO chunks (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#i=this.#e.prepare("INSERT INTO chunks_trigram (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#a=this.#e.prepare("INSERT OR IGNORE INTO vocabulary (word) VALUES (?)"),this.#s=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#c=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#u=this.#e.prepare("DELETE FROM sources WHERE label = ?"),this.#d=this.#e.prepare(`
156
+
157
+ CREATE INDEX IF NOT EXISTS idx_sources_label ON sources(label);
158
+ `)}#j(){this.#r=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, 0, 0)"),this.#n=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, ?, ?)"),this.#s=this.#e.prepare("INSERT INTO chunks (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#i=this.#e.prepare("INSERT INTO chunks_trigram (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#o=this.#e.prepare("INSERT OR IGNORE INTO vocabulary (word) VALUES (?)"),this.#a=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#c=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#d=this.#e.prepare("DELETE FROM sources WHERE label = ?"),this.#p=this.#e.prepare(`
182
159
  SELECT
183
160
  chunks.title,
184
161
  chunks.content,
@@ -191,7 +168,7 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
191
168
  WHERE chunks MATCH ?
192
169
  ORDER BY rank
193
170
  LIMIT ?
194
- `),this.#p=this.#e.prepare(`
171
+ `),this.#f=this.#e.prepare(`
195
172
  SELECT
196
173
  chunks.title,
197
174
  chunks.content,
@@ -204,7 +181,20 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
204
181
  WHERE chunks MATCH ? AND sources.label LIKE ?
205
182
  ORDER BY rank
206
183
  LIMIT ?
207
- `),this.#f=this.#e.prepare(`
184
+ `),this.#m=this.#e.prepare(`
185
+ SELECT
186
+ chunks.title,
187
+ chunks.content,
188
+ chunks.content_type,
189
+ sources.label,
190
+ bm25(chunks, 5.0, 1.0) AS rank,
191
+ highlight(chunks, 1, char(2), char(3)) AS highlighted
192
+ FROM chunks
193
+ JOIN sources ON sources.id = chunks.source_id
194
+ WHERE chunks MATCH ? AND sources.label = ?
195
+ ORDER BY rank
196
+ LIMIT ?
197
+ `),this.#h=this.#e.prepare(`
208
198
  SELECT
209
199
  chunks_trigram.title,
210
200
  chunks_trigram.content,
@@ -217,7 +207,7 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
217
207
  WHERE chunks_trigram MATCH ?
218
208
  ORDER BY rank
219
209
  LIMIT ?
220
- `),this.#m=this.#e.prepare(`
210
+ `),this.#g=this.#e.prepare(`
221
211
  SELECT
222
212
  chunks_trigram.title,
223
213
  chunks_trigram.content,
@@ -230,7 +220,20 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
230
220
  WHERE chunks_trigram MATCH ? AND sources.label LIKE ?
231
221
  ORDER BY rank
232
222
  LIMIT ?
233
- `),this.#g=this.#e.prepare(`
223
+ `),this.#_=this.#e.prepare(`
224
+ SELECT
225
+ chunks_trigram.title,
226
+ chunks_trigram.content,
227
+ chunks_trigram.content_type,
228
+ sources.label,
229
+ bm25(chunks_trigram, 5.0, 1.0) AS rank,
230
+ highlight(chunks_trigram, 1, char(2), char(3)) AS highlighted
231
+ FROM chunks_trigram
232
+ JOIN sources ON sources.id = chunks_trigram.source_id
233
+ WHERE chunks_trigram MATCH ? AND sources.label = ?
234
+ ORDER BY rank
235
+ LIMIT ?
236
+ `),this.#x=this.#e.prepare(`
234
237
  SELECT
235
238
  chunks.title,
236
239
  chunks.content,
@@ -243,7 +246,7 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
243
246
  WHERE chunks MATCH ? AND chunks.content_type = ?
244
247
  ORDER BY rank
245
248
  LIMIT ?
246
- `),this.#_=this.#e.prepare(`
249
+ `),this.#v=this.#e.prepare(`
247
250
  SELECT
248
251
  chunks.title,
249
252
  chunks.content,
@@ -256,7 +259,20 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
256
259
  WHERE chunks MATCH ? AND sources.label LIKE ? AND chunks.content_type = ?
257
260
  ORDER BY rank
258
261
  LIMIT ?
259
- `),this.#y=this.#e.prepare(`
262
+ `),this.#k=this.#e.prepare(`
263
+ SELECT
264
+ chunks.title,
265
+ chunks.content,
266
+ chunks.content_type,
267
+ sources.label,
268
+ bm25(chunks, 5.0, 1.0) AS rank,
269
+ highlight(chunks, 1, char(2), char(3)) AS highlighted
270
+ FROM chunks
271
+ JOIN sources ON sources.id = chunks.source_id
272
+ WHERE chunks MATCH ? AND sources.label = ? AND chunks.content_type = ?
273
+ ORDER BY rank
274
+ LIMIT ?
275
+ `),this.#S=this.#e.prepare(`
260
276
  SELECT
261
277
  chunks_trigram.title,
262
278
  chunks_trigram.content,
@@ -269,7 +285,7 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
269
285
  WHERE chunks_trigram MATCH ? AND chunks_trigram.content_type = ?
270
286
  ORDER BY rank
271
287
  LIMIT ?
272
- `),this.#x=this.#e.prepare(`
288
+ `),this.#b=this.#e.prepare(`
273
289
  SELECT
274
290
  chunks_trigram.title,
275
291
  chunks_trigram.content,
@@ -282,40 +298,55 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
282
298
  WHERE chunks_trigram MATCH ? AND sources.label LIKE ? AND chunks_trigram.content_type = ?
283
299
  ORDER BY rank
284
300
  LIMIT ?
285
- `),this.#h=this.#e.prepare("SELECT word FROM vocabulary WHERE length(word) BETWEEN ? AND ?"),this.#v=this.#e.prepare("SELECT label, chunk_count as chunkCount FROM sources ORDER BY id DESC"),this.#S=this.#e.prepare(`SELECT c.title, c.content, c.content_type, s.label
301
+ `),this.#w=this.#e.prepare(`
302
+ SELECT
303
+ chunks_trigram.title,
304
+ chunks_trigram.content,
305
+ chunks_trigram.content_type,
306
+ sources.label,
307
+ bm25(chunks_trigram, 5.0, 1.0) AS rank,
308
+ highlight(chunks_trigram, 1, char(2), char(3)) AS highlighted
309
+ FROM chunks_trigram
310
+ JOIN sources ON sources.id = chunks_trigram.source_id
311
+ WHERE chunks_trigram MATCH ? AND sources.label = ? AND chunks_trigram.content_type = ?
312
+ ORDER BY rank
313
+ LIMIT ?
314
+ `),this.#y=this.#e.prepare("SELECT word FROM vocabulary WHERE length(word) BETWEEN ? AND ?"),this.#E=this.#e.prepare("SELECT label, chunk_count as chunkCount FROM sources ORDER BY id DESC"),this.#T=this.#e.prepare(`SELECT c.title, c.content, c.content_type, s.label
286
315
  FROM chunks c
287
316
  JOIN sources s ON s.id = c.source_id
288
317
  WHERE c.source_id = ?
289
- ORDER BY c.rowid`),this.#k=this.#e.prepare("SELECT chunk_count FROM sources WHERE id = ?"),this.#b=this.#e.prepare("SELECT content FROM chunks WHERE source_id = ?"),this.#E=this.#e.prepare("SELECT label, chunk_count, code_chunk_count, indexed_at FROM sources WHERE label = ?"),this.#w=this.#e.prepare(`
318
+ ORDER BY c.rowid`),this.#$=this.#e.prepare("SELECT chunk_count FROM sources WHERE id = ?"),this.#P=this.#e.prepare("SELECT content FROM chunks WHERE source_id = ?"),this.#O=this.#e.prepare("SELECT label, chunk_count, code_chunk_count, indexed_at FROM sources WHERE label = ?"),this.#R=this.#e.prepare(`
290
319
  SELECT
291
320
  (SELECT COUNT(*) FROM sources) AS sources,
292
321
  (SELECT COUNT(*) FROM chunks) AS chunks,
293
322
  (SELECT COUNT(*) FROM chunks WHERE content_type = 'code') AS codeChunks
294
- `)}index(e){let{content:r,path:n,source:o}=e;if(!r&&!n)throw new Error("Either content or path must be provided");let s=r??WO(n,"utf-8"),i=o??n??"untitled",a=this.#I(s);return this.#l(a,i,s)}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#l([],r,"");let o=this.#z(e,n);return this.#l(o.map(s=>({...s,hasCode:!1})),r,e)}indexJSON(e,r,n=gx){if(!e||e.trim().length===0)return this.indexPlainText("",r);let o;try{o=JSON.parse(e)}catch{return this.indexPlainText(e,r)}let s=[];return this.#P(o,[],s,n),s.length===0?this.indexPlainText(e,r):this.#l(s,r,e)}#l(e,r,n){let o=e.filter(a=>a.hasCode).length,i=this.#e.transaction(()=>{if(this.#s.run(r),this.#c.run(r),this.#u.run(r),e.length===0){let u=this.#r.run(r);return Number(u.lastInsertRowid)}let a=this.#n.run(r,e.length,o),c=Number(a.lastInsertRowid);for(let u of e){let l=u.hasCode?"code":"prose";this.#o.run(u.title,u.content,c,l),this.#i.run(u.title,u.content,c,l)}return c})();return n&&this.#C(n),{sourceId:i,label:r,totalChunks:e.length,codeChunks:o}}search(e,r=3,n,o="AND",s){let i=XO(e,o),a,c;return n&&s?(a=this.#_,c=[i,`%${n}%`,s,r]):n?(a=this.#p,c=[i,`%${n}%`,r]):s?(a=this.#g,c=[i,s,r]):(a=this.#d,c=[i,r]),a.all(...c).map(l=>({title:l.title,content:l.content,source:l.label,rank:l.rank,contentType:l.content_type,highlighted:l.highlighted}))}searchTrigram(e,r=3,n,o="AND",s){let i=QO(e,o);if(!i)return[];let a,c;return n&&s?(a=this.#x,c=[i,`%${n}%`,s,r]):n?(a=this.#m,c=[i,`%${n}%`,r]):s?(a=this.#y,c=[i,s,r]):(a=this.#f,c=[i,r]),a.all(...c).map(l=>({title:l.title,content:l.content,source:l.label,rank:l.rank,contentType:l.content_type,highlighted:l.highlighted}))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;let n=tC(r.length),o=this.#h.all(r.length-n,r.length+n),s=null,i=n+1;for(let{word:a}of o){if(a===r)return null;let c=eC(r,a);c<i&&(i=c,s=a)}return i<=n?s:null}#T(e,r,n,o){let i=Math.max(r*2,10),a=this.search(e,i,n,"OR",o),c=this.searchTrigram(e,i,n,"OR",o),u=new Map,l=d=>`${d.source}::${d.title}`;for(let[d,m]of a.entries()){let f=l(m),p=u.get(f);p?p.score+=1/(60+d+1):u.set(f,{result:m,score:1/(60+d+1)})}for(let[d,m]of c.entries()){let f=l(m),p=u.get(f);p?p.score+=1/(60+d+1):u.set(f,{result:m,score:1/(60+d+1)})}return Array.from(u.values()).sort((d,m)=>m.score-d.score).slice(0,r).map(({result:d,score:m})=>({...d,rank:-m}))}#$(e,r){let n=r.toLowerCase().split(/\s+/).filter(o=>o.length>=2);return n.length<2?e:e.map(o=>{let s=o.content.toLowerCase(),i=n.map(u=>rC(s,u));if(i.some(u=>u.length===0))return{result:o,boost:0};let c=1/(1+nC(i)/Math.max(s.length,1));return{result:o,boost:c}}).sort((o,s)=>s.boost-o.boost||o.result.rank-s.result.rank).map(({result:o})=>o)}searchWithFallback(e,r=3,n,o){let s=this.#T(e,r,n,o);if(s.length>0)return this.#$(s,e).map(d=>({...d,matchLayer:"rrf"}));let i=e.toLowerCase().trim().split(/\s+/).filter(l=>l.length>=3),a=i.join(" "),u=i.map(l=>this.fuzzyCorrect(l)??l).join(" ");if(u!==a){let l=this.#T(u,r,n,o);if(l.length>0)return this.#$(l,u).map(m=>({...m,matchLayer:"rrf-fuzzy"}))}return[]}getSourceMeta(e){let r=this.#E.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at}:null}listSources(){return this.#v.all()}getChunksBySource(e){return this.#S.all(e).map(n=>({title:n.title,content:n.content,source:n.label,rank:0,contentType:n.content_type}))}getDistinctiveTerms(e,r=40){let n=this.#k.get(e);if(!n||n.chunk_count<3)return[];let o=n.chunk_count,s=2,i=Math.max(3,Math.ceil(o*.4)),a=new Map;for(let l of this.#b.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(m=>m.length>=3&&!hx.has(m)));for(let m of d)a.set(m,(a.get(m)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let m=Math.log(o/d),f=Math.min(l.length/20,.5),p=/[_]/.test(l),h=l.length>=12,g=p?1.5:h?.8:0;return{word:l,score:m+f+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#w.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}cleanupStaleSources(e){let r=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),n=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),o=this.#e.prepare("DELETE FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days')");return this.#e.transaction(a=>(r.run(a),n.run(a),o.run(a)))(e).changes}getDBSizeBytes(){try{return yx(this.#t).size}catch{return 0}}close(){mx(this.#e)}#C(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(o=>o.length>=3&&!hx.has(o)),n=[...new Set(r)];this.#e.transaction(()=>{for(let o of n)this.#a.run(o)})()}#I(e,r=gx){let n=[],o=e.split(`
323
+ `)}index(e){let{content:r,path:n,source:o}=e;if(!r&&!n)throw new Error("Either content or path must be provided");let s=r??QO(n,"utf-8"),i=o??n??"untitled",a=this.#D(s);return this.#u(a,i,s)}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#u([],r,"");let o=this.#L(e,n);return this.#u(o.map(s=>({...s,hasCode:!1})),r,e)}indexJSON(e,r,n=cx){if(!e||e.trim().length===0)return this.indexPlainText("",r);let o;try{o=JSON.parse(e)}catch{return this.indexPlainText(e,r)}let s=[];return this.#N(o,[],s,n),s.length===0?this.indexPlainText(e,r):this.#u(s,r,e)}#u(e,r,n){let o=e.filter(a=>a.hasCode).length,i=this.#e.transaction(()=>{if(this.#a.run(r),this.#c.run(r),this.#d.run(r),e.length===0){let u=this.#r.run(r);return Number(u.lastInsertRowid)}let a=this.#n.run(r,e.length,o),c=Number(a.lastInsertRowid);for(let u of e){let l=u.hasCode?"code":"prose";this.#s.run(u.title,u.content,c,l),this.#i.run(u.title,u.content,c,l)}return c})();return n&&this.#M(n),{sourceId:i,label:r,totalChunks:e.length,codeChunks:o}}#C(e){return e.map(r=>({title:r.title,content:r.content,source:r.label,rank:r.rank,contentType:r.content_type,highlighted:r.highlighted}))}#l(e,r){return r==="exact"?e:`%${e}%`}search(e,r=3,n,o="AND",s,i="like"){let a=tC(e,o),c,u;return n&&s?(c=i==="exact"?this.#k:this.#v,u=[a,this.#l(n,i),s,r]):n?(c=i==="exact"?this.#m:this.#f,u=[a,this.#l(n,i),r]):s?(c=this.#x,u=[a,s,r]):(c=this.#p,u=[a,r]),this.#C(c.all(...u))}searchTrigram(e,r=3,n,o="AND",s,i="like"){let a=rC(e,o);if(!a)return[];let c,u;return n&&s?(c=i==="exact"?this.#w:this.#b,u=[a,this.#l(n,i),s,r]):n?(c=i==="exact"?this.#_:this.#g,u=[a,this.#l(n,i),r]):s?(c=this.#S,u=[a,s,r]):(c=this.#h,u=[a,r]),this.#C(c.all(...u))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;let n=oC(r.length),o=this.#y.all(r.length-n,r.length+n),s=null,i=n+1;for(let{word:a}of o){if(a===r)return null;let c=nC(r,a);c<i&&(i=c,s=a)}return i<=n?s:null}#I(e,r,n,o,s="like"){let a=Math.max(r*2,10),c=this.search(e,a,n,"OR",o,s),u=this.searchTrigram(e,a,n,"OR",o,s),l=new Map,d=f=>`${f.source}::${f.title}`;for(let[f,m]of c.entries()){let p=d(m),h=l.get(p);h?h.score+=1/(60+f+1):l.set(p,{result:m,score:1/(60+f+1)})}for(let[f,m]of u.entries()){let p=d(m),h=l.get(p);h?h.score+=1/(60+f+1):l.set(p,{result:m,score:1/(60+f+1)})}return Array.from(l.values()).sort((f,m)=>m.score-f.score).slice(0,r).map(({result:f,score:m})=>({...f,rank:-m}))}#z(e,r){let n=r.toLowerCase().split(/\s+/).filter(o=>o.length>=2);return n.length<2?e:e.map(o=>{let s=o.content.toLowerCase(),i=n.map(u=>sC(s,u));if(i.some(u=>u.length===0))return{result:o,boost:0};let c=1/(1+iC(i)/Math.max(s.length,1));return{result:o,boost:c}}).sort((o,s)=>s.boost-o.boost||o.result.rank-s.result.rank).map(({result:o})=>o)}searchWithFallback(e,r=3,n,o,s="like"){let i=this.#I(e,r,n,o,s);if(i.length>0)return this.#z(i,e).map(f=>({...f,matchLayer:"rrf"}));let a=e.toLowerCase().trim().split(/\s+/).filter(d=>d.length>=3),c=a.join(" "),l=a.map(d=>this.fuzzyCorrect(d)??d).join(" ");if(l!==c){let d=this.#I(l,r,n,o,s);if(d.length>0)return this.#z(d,l).map(m=>({...m,matchLayer:"rrf-fuzzy"}))}return[]}getSourceMeta(e){let r=this.#O.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at}:null}listSources(){return this.#E.all()}getChunksBySource(e){return this.#T.all(e).map(n=>({title:n.title,content:n.content,source:n.label,rank:0,contentType:n.content_type}))}getDistinctiveTerms(e,r=40){let n=this.#$.get(e);if(!n||n.chunk_count<3)return[];let o=n.chunk_count,s=2,i=Math.max(3,Math.ceil(o*.4)),a=new Map;for(let l of this.#P.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(f=>f.length>=3&&!ax.has(f)));for(let f of d)a.set(f,(a.get(f)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let f=Math.log(o/d),m=Math.min(l.length/20,.5),p=/[_]/.test(l),h=l.length>=12,g=p?1.5:h?.8:0;return{word:l,score:f+m+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#R.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}cleanupStaleSources(e){let r=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),n=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),o=this.#e.prepare("DELETE FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days')");return this.#e.transaction(a=>(r.run(a),n.run(a),o.run(a)))(e).changes}getDBSizeBytes(){try{return lx(this.#t).size}catch{return 0}}close(){ix(this.#e)}#M(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(o=>o.length>=3&&!ax.has(o)),n=[...new Set(r)];this.#e.transaction(()=>{for(let o of n)this.#o.run(o)})()}#D(e,r=cx){let n=[],o=e.split(`
295
324
  `),s=[],i=[],a="",c=()=>{let l=i.join(`
296
- `).trim();if(l.length===0)return;let d=this.#M(s,a),m=i.some(y=>/^`{3,}/.test(y));if(Buffer.byteLength(l)<=r){n.push({title:d,content:l,hasCode:m}),i=[];return}let f=l.split(/\n\n+/),p=[],h=1,g=()=>{if(p.length===0)return;let y=p.join(`
325
+ `).trim();if(l.length===0)return;let d=this.#q(s,a),f=i.some(v=>/^`{3,}/.test(v));if(Buffer.byteLength(l)<=r){n.push({title:d,content:l,hasCode:f}),i=[];return}let m=l.split(/\n\n+/),p=[],h=1,g=()=>{if(p.length===0)return;let v=p.join(`
297
326
 
298
- `).trim();if(y.length===0)return;let v=f.length>1?`${d} (${h})`:d;h++,n.push({title:v,content:y,hasCode:y.includes("```")}),p=[]};for(let y of f){p.push(y);let v=p.join(`
327
+ `).trim();if(v.length===0)return;let y=m.length>1?`${d} (${h})`:d;h++,n.push({title:y,content:v,hasCode:v.includes("```")}),p=[]};for(let v of m){p.push(v);let y=p.join(`
299
328
 
300
- `);Buffer.byteLength(v)>r&&p.length>1&&(p.pop(),g(),p=[y])}g(),i=[]},u=0;for(;u<o.length;){let l=o[u];if(/^[-_*]{3,}\s*$/.test(l)){c(),u++;continue}let d=l.match(/^(#{1,4})\s+(.+)$/);if(d){c();let f=d[1].length,p=d[2].trim();for(;s.length>0&&s[s.length-1].level>=f;)s.pop();s.push({level:f,text:p}),a=p,i.push(l),u++;continue}let m=l.match(/^(`{3,})(.*)?$/);if(m){let f=m[1],p=[l];for(u++;u<o.length;){if(p.push(o[u]),o[u].startsWith(f)&&o[u].trim()===f){u++;break}u++}i.push(...p);continue}i.push(l),u++}return c(),n}#z(e,r){let n=e.split(/\n\s*\n/);if(n.length>=3&&n.length<=200&&n.every(c=>Buffer.byteLength(c)<5e3))return n.map((c,u)=>{let l=c.trim();return{title:l.split(`
329
+ `);Buffer.byteLength(y)>r&&p.length>1&&(p.pop(),g(),p=[v])}g(),i=[]},u=0;for(;u<o.length;){let l=o[u];if(/^[-_*]{3,}\s*$/.test(l)){c(),u++;continue}let d=l.match(/^(#{1,4})\s+(.+)$/);if(d){c();let m=d[1].length,p=d[2].trim();for(;s.length>0&&s[s.length-1].level>=m;)s.pop();s.push({level:m,text:p}),a=p,i.push(l),u++;continue}let f=l.match(/^(`{3,})(.*)?$/);if(f){let m=f[1],p=[l];for(u++;u<o.length;){if(p.push(o[u]),o[u].startsWith(m)&&o[u].trim()===m){u++;break}u++}i.push(...p);continue}i.push(l),u++}return c(),n}#L(e,r){let n=e.split(/\n\s*\n/);if(n.length>=3&&n.length<=200&&n.every(c=>Buffer.byteLength(c)<5e3))return n.map((c,u)=>{let l=c.trim();return{title:l.split(`
301
330
  `)[0].slice(0,80)||`Section ${u+1}`,content:l}}).filter(c=>c.content.length>0);let o=e.split(`
302
- `);if(o.length<=r)return[{title:"Output",content:e}];let s=[],a=Math.max(r-2,1);for(let c=0;c<o.length;c+=a){let u=o.slice(c,c+r);if(u.length===0)break;let l=c+1,d=Math.min(c+u.length,o.length),m=u[0]?.trim().slice(0,80);s.push({title:m||`Lines ${l}-${d}`,content:u.join(`
303
- `)})}return s}#P(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=JSON.stringify(e,null,2);if(Buffer.byteLength(i)<=o&&!(typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.values(e).some(c=>typeof c=="object"&&c!==null))){n.push({title:s,content:i,hasCode:!0});return}if(typeof e=="object"&&e!==null&&!Array.isArray(e)){let a=Object.entries(e);if(a.length>0){for(let[c,u]of a)this.#P(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#j(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#N(e){if(e.length===0)return null;let r=e[0];if(typeof r!="object"||r===null||Array.isArray(r))return null;let n=["id","name","title","path","slug","key","label"],o=r;for(let s of n)if(s in o&&(typeof o[s]=="string"||typeof o[s]=="number"))return s;return null}#A(e,r,n,o,s){let i=e?`${e} > `:"";if(!s)return r===n?`${i}[${r}]`:`${i}[${r}-${n}]`;let a=c=>String(c[s]);return o.length===1?`${i}${a(o[0])}`:o.length<=3?i+o.map(a).join(", "):`${i}${a(o[0])}\u2026${a(o[o.length-1])}`}#j(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#N(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#A(s,c,l,a,i);n.push({title:d,content:JSON.stringify(a,null,2),hasCode:!0})};for(let l=0;l<e.length;l++){a.push(e[l]);let d=JSON.stringify(a,null,2);Buffer.byteLength(d)>o&&a.length>1&&(a.pop(),u(l-1),a=[e[l]],c=l)}u(c+a.length-1)}#M(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}};import{readFileSync as kx}from"node:fs";import{resolve as Yn}from"node:path";import{homedir as bx}from"node:os";function wx(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function oC(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function sC(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function Sx(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function iC(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=sC(o),a=Sx(s);r=`^${i}(\\s${a})?$`}else r=`^${Sx(t)}$`;return new RegExp(r,e?"i":"")}function aC(t,e=!1){let r="",n=0;for(;n<t.length;)t[n]==="*"&&t[n+1]==="*"?n+2<t.length&&t[n+2]==="/"?(r+="(.*/)?",n+=3):(r+=".*",n+=2):t[n]==="*"?(r+="[^/]*",n++):t[n]==="?"?(r+="[^/]",n++):(r+=t[n].replace(/[.+^${}()|[\]\\\/\-]/g,"\\$&"),n++);return new RegExp(`^${r}$`,e?"i":"")}function cC(t,e,r=!1){for(let n of e){let o=wx(n);if(o&&iC(o,r).test(t))return n}return null}function uC(t){let e=[],r="",n=!1,o=!1,s=!1;for(let i=0;i<t.length;i++){let a=t[i],c=i>0?t[i-1]:"";a==="'"&&!o&&!s&&c!=="\\"?(n=!n,r+=a):a==='"'&&!n&&!s&&c!=="\\"?(o=!o,r+=a):a==="`"&&!n&&!o&&c!=="\\"?(s=!s,r+=a):!n&&!o&&!s?a===";"?(e.push(r.trim()),r=""):a==="|"&&t[i+1]==="|"||a==="&"&&t[i+1]==="&"?(e.push(r.trim()),r="",i++):a==="|"?(e.push(r.trim()),r=""):r+=a:r+=a}return r.trim()&&e.push(r.trim()),e.filter(i=>i.length>0)}function wp(t){let e;try{e=kx(t,"utf-8")}catch{return null}let r;try{r=JSON.parse(e)}catch{return null}let n=r?.permissions;if(!n||typeof n!="object")return null;let o=s=>Array.isArray(s)?s.filter(i=>typeof i=="string"&&wx(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function Ep(t,e){let r=[];if(t){let s=Yn(t,".claude","settings.local.json"),i=wp(s);i&&r.push(i);let a=Yn(t,".claude","settings.json"),c=wp(a);c&&r.push(c)}let n=e??Yn(bx(),".claude","settings.json"),o=wp(n);return o&&r.push(o),r}function Ex(t,e,r){let n=[],o=a=>{let c;try{c=kx(a,"utf-8")}catch{return null}let u;try{u=JSON.parse(c)}catch{return null}let l=u?.permissions?.deny;if(!Array.isArray(l))return[];let d=[];for(let m of l){if(typeof m!="string")continue;let f=oC(m);f&&f.tool===t&&d.push(f.glob)}return d};if(e){let a=o(Yn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Yn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Yn(bx(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function Tp(t,e,r=process.platform==="win32"){let n=uC(t);for(let o of n)for(let s of e){let i=cC(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function Tx(t,e,r=process.platform==="win32"){let n=t.replace(/\\/g,"/");for(let o of e)for(let s of o)if(aC(s,r).test(n))return{denied:!0,matchedPattern:s};return{denied:!1}}var lC={python:[/os\.system\(\s*(['"])(.*?)\1\s*\)/g,/subprocess\.(?:run|call|Popen|check_output|check_call)\(\s*(['"])(.*?)\1/g],javascript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],typescript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],ruby:[/system\(\s*(['"])(.*?)\1/g,/`(.*?)`/g],go:[/exec\.Command\(\s*(['"`])(.*?)\1/g],php:[/shell_exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])system\(\s*(['"`])(.*?)\1/g,/passthru\(\s*(['"`])(.*?)\1/g,/proc_open\(\s*(['"`])(.*?)\1/g],rust:[/Command::new\(\s*(['"`])(.*?)\1/g]};function dC(t){let e=[],r=/subprocess\.(?:run|call|Popen|check_output|check_call)\(\s*\[([^\]]+)\]/g,n;for(;(n=r.exec(t))!==null;){let s=[...n[1].matchAll(/(['"])(.*?)\1/g)].map(i=>i[2]);s.length>0&&e.push(s.join(" "))}return e}function $x(t,e){let r=lC[e];if(!r&&e!=="python")return[];let n=[];if(r)for(let o of r){o.lastIndex=0;let s;for(;(s=o.exec(t))!==null;){let i=s[s.length-1];i&&n.push(i)}}return e==="python"&&n.push(...dC(t)),n}function $p(t){let{language:e,exitCode:r,stdout:n,stderr:o}=t,s=e==="shell"&&r===1&&n.trim().length>0;return{isError:!s,output:s?n:`Exit code: ${r}
331
+ `);if(o.length<=r)return[{title:"Output",content:e}];let s=[],a=Math.max(r-2,1);for(let c=0;c<o.length;c+=a){let u=o.slice(c,c+r);if(u.length===0)break;let l=c+1,d=Math.min(c+u.length,o.length),f=u[0]?.trim().slice(0,80);s.push({title:f||`Lines ${l}-${d}`,content:u.join(`
332
+ `)})}return s}#N(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=JSON.stringify(e,null,2);if(Buffer.byteLength(i)<=o&&!(typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.values(e).some(c=>typeof c=="object"&&c!==null))){n.push({title:s,content:i,hasCode:!0});return}if(typeof e=="object"&&e!==null&&!Array.isArray(e)){let a=Object.entries(e);if(a.length>0){for(let[c,u]of a)this.#N(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#H(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#Z(e){if(e.length===0)return null;let r=e[0];if(typeof r!="object"||r===null||Array.isArray(r))return null;let n=["id","name","title","path","slug","key","label"],o=r;for(let s of n)if(s in o&&(typeof o[s]=="string"||typeof o[s]=="number"))return s;return null}#U(e,r,n,o,s){let i=e?`${e} > `:"";if(!s)return r===n?`${i}[${r}]`:`${i}[${r}-${n}]`;let a=c=>String(c[s]);return o.length===1?`${i}${a(o[0])}`:o.length<=3?i+o.map(a).join(", "):`${i}${a(o[0])}\u2026${a(o[o.length-1])}`}#H(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#Z(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#U(s,c,l,a,i);n.push({title:d,content:JSON.stringify(a,null,2),hasCode:!0})};for(let l=0;l<e.length;l++){a.push(e[l]);let d=JSON.stringify(a,null,2);Buffer.byteLength(d)>o&&a.length>1&&(a.pop(),u(l-1),a=[e[l]],c=l)}u(c+a.length-1)}#q(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}};import{readFileSync as mx}from"node:fs";import{resolve as Jn}from"node:path";import{homedir as hx}from"node:os";function gx(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function aC(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function cC(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function fx(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function uC(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=cC(o),a=fx(s);r=`^${i}(\\s${a})?$`}else r=`^${fx(t)}$`;return new RegExp(r,e?"i":"")}function lC(t,e=!1){let r="",n=0;for(;n<t.length;)t[n]==="*"&&t[n+1]==="*"?n+2<t.length&&t[n+2]==="/"?(r+="(.*/)?",n+=3):(r+=".*",n+=2):t[n]==="*"?(r+="[^/]*",n++):t[n]==="?"?(r+="[^/]",n++):(r+=t[n].replace(/[.+^${}()|[\]\\\/\-]/g,"\\$&"),n++);return new RegExp(`^${r}$`,e?"i":"")}function dC(t,e,r=!1){for(let n of e){let o=gx(n);if(o&&uC(o,r).test(t))return n}return null}function pC(t){let e=[],r="",n=!1,o=!1,s=!1;for(let i=0;i<t.length;i++){let a=t[i],c=i>0?t[i-1]:"";a==="'"&&!o&&!s&&c!=="\\"?(n=!n,r+=a):a==='"'&&!n&&!s&&c!=="\\"?(o=!o,r+=a):a==="`"&&!n&&!o&&c!=="\\"?(s=!s,r+=a):!n&&!o&&!s?a===";"?(e.push(r.trim()),r=""):a==="|"&&t[i+1]==="|"||a==="&"&&t[i+1]==="&"?(e.push(r.trim()),r="",i++):a==="|"?(e.push(r.trim()),r=""):r+=a:r+=a}return r.trim()&&e.push(r.trim()),e.filter(i=>i.length>0)}function lp(t){let e;try{e=mx(t,"utf-8")}catch{return null}let r;try{r=JSON.parse(e)}catch{return null}let n=r?.permissions;if(!n||typeof n!="object")return null;let o=s=>Array.isArray(s)?s.filter(i=>typeof i=="string"&&gx(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function dp(t,e){let r=[];if(t){let s=Jn(t,".claude","settings.local.json"),i=lp(s);i&&r.push(i);let a=Jn(t,".claude","settings.json"),c=lp(a);c&&r.push(c)}let n=e??Jn(hx(),".claude","settings.json"),o=lp(n);return o&&r.push(o),r}function _x(t,e,r){let n=[],o=a=>{let c;try{c=mx(a,"utf-8")}catch{return null}let u;try{u=JSON.parse(c)}catch{return null}let l=u?.permissions?.deny;if(!Array.isArray(l))return[];let d=[];for(let f of l){if(typeof f!="string")continue;let m=aC(f);m&&m.tool===t&&d.push(m.glob)}return d};if(e){let a=o(Jn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Jn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Jn(hx(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function pp(t,e,r=process.platform==="win32"){let n=pC(t);for(let o of n)for(let s of e){let i=dC(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function yx(t,e,r=process.platform==="win32"){let n=t.replace(/\\/g,"/");for(let o of e)for(let s of o)if(lC(s,r).test(n))return{denied:!0,matchedPattern:s};return{denied:!1}}var fC={python:[/os\.system\(\s*(['"])(.*?)\1\s*\)/g,/subprocess\.(?:run|call|Popen|check_output|check_call)\(\s*(['"])(.*?)\1/g],javascript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],typescript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],ruby:[/system\(\s*(['"])(.*?)\1/g,/`(.*?)`/g],go:[/exec\.Command\(\s*(['"`])(.*?)\1/g],php:[/shell_exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])system\(\s*(['"`])(.*?)\1/g,/passthru\(\s*(['"`])(.*?)\1/g,/proc_open\(\s*(['"`])(.*?)\1/g],rust:[/Command::new\(\s*(['"`])(.*?)\1/g]};function mC(t){let e=[],r=/subprocess\.(?:run|call|Popen|check_output|check_call)\(\s*\[([^\]]+)\]/g,n;for(;(n=r.exec(t))!==null;){let s=[...n[1].matchAll(/(['"])(.*?)\1/g)].map(i=>i[2]);s.length>0&&e.push(s.join(" "))}return e}function xx(t,e){let r=fC[e];if(!r&&e!=="python")return[];let n=[];if(r)for(let o of r){o.lastIndex=0;let s;for(;(s=o.exec(t))!==null;){let i=s[s.length-1];i&&n.push(i)}}return e==="python"&&n.push(...mC(t)),n}function fp(t){let{language:e,exitCode:r,stdout:n,stderr:o}=t,s=e==="shell"&&r===1&&n.trim().length>0;return{isError:!s,output:s?n:`Exit code: ${r}
304
333
 
305
334
  stdout:
306
335
  ${n}
307
336
 
308
337
  stderr:
309
- ${o}`}}var pC=process.ppid;function fC(){let t=process.ppid;return!(t!==pC||t===0||t===1)}function Px(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??fC,n=!1,o=()=>{n||(n=!0,t.onShutdown())},s=setInterval(()=>{r()||o()},e);s.unref();let i=()=>o();process.stdin.resume(),process.stdin.on("end",i),process.stdin.on("close",i),process.stdin.on("error",i);let a=["SIGTERM","SIGINT"];process.platform!=="win32"&&a.push("SIGHUP");for(let c of a)process.on(c,o);return()=>{n=!0,clearInterval(s),process.stdin.removeListener("end",i),process.stdin.removeListener("close",i),process.stdin.removeListener("error",i);for(let c of a)process.removeListener(c,o)}}import{createHash as mC}from"node:crypto";import{execFileSync as hC}from"node:child_process";function Rx(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=hC("git",["worktree","list","--porcelain"],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).split(/\r?\n/).find(n=>n.startsWith("worktree "))?.replace("worktree ","")?.trim();if(r&&e!==r)return`__${mC("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var fn=uf(uI(import.meta.url)),lf=(()=>{for(let t of["../package.json","./package.json"]){let e=pn(fn,t);if(br(e))try{return JSON.parse(Zv(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
338
+ ${o}`}}var hC=process.ppid;function gC(){let t=process.ppid;return!(t!==hC||t===0||t===1)}function vx(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??gC,n=!1,o=()=>{n||(n=!0,t.onShutdown())},s=setInterval(()=>{r()||o()},e);s.unref();let i=()=>o();process.stdin.resume(),process.stdin.on("end",i),process.stdin.on("close",i),process.stdin.on("error",i);let a=["SIGTERM","SIGINT"];process.platform!=="win32"&&a.push("SIGHUP");for(let c of a)process.on(c,o);return()=>{n=!0,clearInterval(s),process.stdin.removeListener("end",i),process.stdin.removeListener("close",i),process.stdin.removeListener("error",i);for(let c of a)process.removeListener(c,o)}}import{createHash as _C}from"node:crypto";import{execFileSync as yC}from"node:child_process";function kx(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=yC("git",["worktree","list","--porcelain"],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).split(/\r?\n/).find(n=>n.startsWith("worktree "))?.replace("worktree ","")?.trim();if(r&&e!==r)return`__${_C("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var cn=Gp(yI(import.meta.url)),Yp=(()=>{for(let t of["../package.json","./package.json"]){let e=an(cn,t);if(xr(e))try{return JSON.parse(Hv(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
310
339
  `)});process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
311
- `)});var La=ha(),Na=ax(La),Be=new pa({name:"context-mode",version:lf});Be.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});Be.server.setRequestHandler(In,async()=>({prompts:[]}));Be.server.setRequestHandler(On,async()=>({resources:[]}));Be.server.setRequestHandler(Cn,async()=>({resourceTemplates:[]}));var $s=new ms({runtimes:La,projectRoot:process.env.CLAUDE_PROJECT_DIR}),dn=null;function dI(t){try{let e=mn(Ma(),".claude","context-mode","sessions");if(!br(e))return;let r=iI(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=mn(e,n);try{t.index({path:o,source:"session-events"}),sI(o)}catch{}}}catch{}}function pI(){let e=(process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.OPENCLAW_HOME||process.cwd()).replace(/\\/g,"/"),r=Dv("sha256").update(e).digest("hex").slice(0,16),n=mn(Ma(),".context-mode","content");return cI(n,{recursive:!0}),mn(n,`${r}.db`)}function co(){if(!dn){let t=pI();dn=new xa(t);try{let e=mn(Ma(),".context-mode","content");vx(e,14),dn.cleanupStaleSources(14)}catch{}bp()}return dI(dn),dn}var ie={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()};function V(t,e){let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return ie.calls[t]=(ie.calls[t]||0)+1,ie.bytesReturned[t]=(ie.bytesReturned[t]||0)+r,e}function wr(t){ie.bytesIndexed+=t}function df(t,e){try{let r=Ep(process.env.CLAUDE_PROJECT_DIR),n=Tp(t,r);if(n.decision==="deny")return V(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function Uv(t,e,r){try{let n=$x(t,e);if(n.length===0)return null;let o=Ep(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=Tp(s,o);if(i.decision==="deny")return V(r,{content:[{type:"text",text:`Command blocked by security policy: embedded shell command "${s}" matches deny pattern ${i.matchedPattern}`}],isError:!0})}}catch{}return null}function fI(t,e){try{let r=Ex("Read",process.env.CLAUDE_PROJECT_DIR),n=Tx(t,r);if(n.denied)return V(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}var mI=Na.join(", "),hI=ga()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",gI="",_I="";function yI(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===gI){for(e.push(r),n++;n<t.length&&t[n]!==_I;)r++,n++;n<t.length&&n++}else r++,n++;return e}function Hv(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of yI(n))o.push(u);if(o.length===0){let u=e.toLowerCase().split(/\s+/).filter(d=>d.length>2),l=t.toLowerCase();for(let d of u){let m=l.indexOf(d);for(;m!==-1;)o.push(m),m=l.indexOf(d,m+1)}}if(o.length===0)return t.slice(0,r)+`
340
+ `)});var Ea=ca(),ka=Xy(Ea),Be=new sa({name:"context-mode",version:Yp});Be.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});Be.server.setRequestHandler(Pn,async()=>({prompts:[]}));Be.server.setRequestHandler(Tn,async()=>({resources:[]}));Be.server.setRequestHandler($n,async()=>({resourceTemplates:[]}));var ks=new us({runtimes:Ea,projectRoot:process.env.CLAUDE_PROJECT_DIR}),sn=null;function vI(t){try{let e=un(wa(),".claude","context-mode","sessions");if(!xr(e))return;let r=hI(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=un(e,n);try{t.index({path:o,source:"session-events"}),mI(o)}catch{}}}catch{}}function kI(){let e=(process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.OPENCLAW_HOME||process.cwd()).replace(/\\/g,"/"),r=Uv("sha256").update(e).digest("hex").slice(0,16),n=un(wa(),".context-mode","content");return _I(n,{recursive:!0}),un(n,`${r}.db`)}function ln(){if(!sn){let t=kI();sn=new pa(t);try{let e=un(wa(),".context-mode","content");px(e,14),sn.cleanupStaleSources(14)}catch{}up()}return vI(sn),sn}var ie={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()};function U(t,e){let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return ie.calls[t]=(ie.calls[t]||0)+1,ie.bytesReturned[t]=(ie.bytesReturned[t]||0)+r,e}function $t(t){ie.bytesIndexed+=t}function Xp(t,e){try{let r=dp(process.env.CLAUDE_PROJECT_DIR),n=pp(t,r);if(n.decision==="deny")return U(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function qv(t,e,r){try{let n=xx(t,e);if(n.length===0)return null;let o=dp(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=pp(s,o);if(i.decision==="deny")return U(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 SI(t,e){try{let r=_x("Read",process.env.CLAUDE_PROJECT_DIR),n=yx(t,r);if(n.denied)return U(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}var bI=ka.join(", "),wI=ua()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",EI="",TI="";function $I(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===EI){for(e.push(r),n++;n<t.length&&t[n]!==TI;)r++,n++;n<t.length&&n++}else r++,n++;return e}function Fv(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of $I(n))o.push(u);if(o.length===0){let u=e.toLowerCase().split(/\s+/).filter(d=>d.length>2),l=t.toLowerCase();for(let d of u){let f=l.indexOf(d);for(;f!==-1;)o.push(f),f=l.indexOf(d,f+1)}}if(o.length===0)return t.slice(0,r)+`
312
341
  \u2026`;o.sort((u,l)=>u-l);let s=300,i=[];for(let u of o){let l=Math.max(0,u-s),d=Math.min(t.length,u+s);i.length>0&&l<=i[i.length-1][1]?i[i.length-1][1]=d:i.push([l,d])}let a=[],c=0;for(let[u,l]of i){if(c>=r)break;let d=t.slice(u,Math.min(l,u+(r-c)));a.push((u>0?"\u2026":"")+d+(l<t.length?"\u2026":"")),c+=d.length}return a.join(`
313
342
 
314
- `)}Be.registerTool("ctx_execute",{title:"Execute Code",description:`MANDATORY: Use for any command where output exceeds 20 lines. Execute code in a sandboxed subprocess. Only stdout enters context \u2014 raw data stays in the subprocess.${hI} Available: ${mI}.
343
+ `)}function PI(t,e,r,n=80*1024){let o=[],s=0;for(let i of e){if(s>n){o.push(`## ${i}
344
+ (output cap reached \u2014 use search(queries: ["${i}"]) for details)
345
+ `);continue}let a=t.searchWithFallback(i,3,r,void 0,"exact");if(o.push(`## ${i}`),o.push(""),a.length>0){for(let c of a){let u=Fv(c.content,i,3e3,c.highlighted);o.push(`### ${c.title}`),o.push(u),o.push(""),s+=u.length+c.title.length}continue}o.push("No matching sections found."),o.push("")}return o.push("\n> **Tip:** Results are scoped to this batch only. To search across all indexed sources, use `ctx_search(queries: [...])`."),o}Be.registerTool("ctx_execute",{title:"Execute Code",description:`MANDATORY: Use for any command where output exceeds 20 lines. Execute code in a sandboxed subprocess. Only stdout enters context \u2014 raw data stays in the subprocess.${wI} Available: ${bI}.
315
346
 
316
- PREFER THIS OVER BASH for: API calls (gh, curl, aws), test runners (npm test, pytest), git queries (git log, git diff), data processing, and ANY CLI command that may produce large output. Bash should only be used for file mutations, git writes, and navigation.`,inputSchema:D.object({language:D.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:D.string().describe("Source code to execute. Use console.log (JS/TS), print (Python/Ruby/Perl/R), echo (Shell), echo (PHP), fmt.Println (Go), or IO.puts (Elixir) to output a summary to context."),timeout:D.number().optional().default(3e4).describe("Max execution time in ms"),background:D.boolean().optional().default(!1).describe("Keep process running after timeout (for servers/daemons). Returns partial output without killing the process. IMPORTANT: Do NOT add setTimeout/self-close timers in background scripts \u2014 the process must stay alive until the timeout detaches it. For server+fetch patterns, prefer putting both server and fetch in ONE ctx_execute call instead of using background."),intent:D.string().optional().describe(`What you're looking for in the output. When provided and output is large (>5KB), indexes output into knowledge base and returns section titles + previews \u2014 not full content. Use search(queries: [...]) to retrieve specific sections. Example: 'failing tests', 'HTTP 500 errors'.
347
+ PREFER THIS OVER BASH for: API calls (gh, curl, aws), test runners (npm test, pytest), git queries (git log, git diff), data processing, and ANY CLI command that may produce large output. Bash should only be used for file mutations, git writes, and navigation.`,inputSchema:L.object({language:L.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:L.string().describe("Source code to execute. Use console.log (JS/TS), print (Python/Ruby/Perl/R), echo (Shell), echo (PHP), fmt.Println (Go), or IO.puts (Elixir) to output a summary to context."),timeout:L.number().optional().default(3e4).describe("Max execution time in ms"),background:L.boolean().optional().default(!1).describe("Keep process running after timeout (for servers/daemons). Returns partial output without killing the process. IMPORTANT: Do NOT add setTimeout/self-close timers in background scripts \u2014 the process must stay alive until the timeout detaches it. For server+fetch patterns, prefer putting both server and fetch in ONE ctx_execute call instead of using background."),intent:L.string().optional().describe(`What you're looking for in the output. When provided and output is large (>5KB), indexes output into knowledge base and returns section titles + previews \u2014 not full content. Use search(queries: [...]) to retrieve specific sections. Example: 'failing tests', 'HTTP 500 errors'.
317
348
 
318
- TIP: Use specific technical terms, not just concepts. Check 'Searchable terms' in the response for available vocabulary.`)})},async({language:t,code:e,timeout:r,background:n,intent:o})=>{if(t==="shell"){let s=df(e,"execute");if(s)return s}else{let s=Uv(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
349
+ TIP: Use specific technical terms, not just concepts. Check 'Searchable terms' in the response for available vocabulary.`)})},async({language:t,code:e,timeout:r,background:n,intent:o})=>{if(t==="shell"){let s=Xp(e,"execute");if(s)return s}else{let s=qv(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
319
350
  let __cm_net=0;
320
351
  // Report network bytes on process exit \u2014 works with both promise and callback patterns.
321
352
  // process.on('exit') fires after all I/O completes, unlike .finally() which fires
@@ -361,20 +392,21 @@ ${e}
361
392
  }
362
393
  __cm_main().catch(e=>{console.error(e);process.exitCode=1});${n?`
363
394
  setInterval(()=>{},2147483647);`:""}
364
- })(typeof require!=='undefined'?require:null);`);let i=await $s.execute({language:t,code:s,timeout:r,background:n}),a=i.stderr?.match(/__CM_NET__:(\d+)/);if(a&&(ie.bytesSandboxed+=parseInt(a[1]),i.stderr=i.stderr.replace(/\n?__CM_NET__:\d+\n?/g,"")),i.timedOut){let u=i.stdout?.trim();return i.backgrounded&&u?V("ctx_execute",{content:[{type:"text",text:`${u}
395
+ })(typeof require!=='undefined'?require:null);`);let i=await ks.execute({language:t,code:s,timeout:r,background:n}),a=i.stderr?.match(/__CM_NET__:(\d+)/);if(a&&(ie.bytesSandboxed+=parseInt(a[1]),i.stderr=i.stderr.replace(/\n?__CM_NET__:\d+\n?/g,"")),i.timedOut){let u=i.stdout?.trim();return i.backgrounded&&u?U("ctx_execute",{content:[{type:"text",text:`${u}
365
396
 
366
- _(process backgrounded after ${r}ms \u2014 still running)_`}]}):u?V("ctx_execute",{content:[{type:"text",text:`${u}
397
+ _(process backgrounded after ${r}ms \u2014 still running)_`}]}):u?U("ctx_execute",{content:[{type:"text",text:`${u}
367
398
 
368
- _(timed out after ${r}ms \u2014 partial output shown above)_`}]}):V("ctx_execute",{content:[{type:"text",text:`Execution timed out after ${r}ms
399
+ _(timed out after ${r}ms \u2014 partial output shown above)_`}]}):U("ctx_execute",{content:[{type:"text",text:`Execution timed out after ${r}ms
369
400
 
370
401
  stderr:
371
- ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:u,output:l}=$p({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(l)>Aa?(wr(Buffer.byteLength(l)),V("ctx_execute",{content:[{type:"text",text:ja(l,o,u?`execute:${t}:error`:`execute:${t}`)}],isError:u})):V("ctx_execute",{content:[{type:"text",text:l}],isError:u})}let c=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(c)>Aa?(wr(Buffer.byteLength(c)),V("ctx_execute",{content:[{type:"text",text:ja(c,o,`execute:${t}`)}]})):V("ctx_execute",{content:[{type:"text",text:c}]})}catch(s){let i=s instanceof Error?s.message:String(s);return V("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});var Aa=5e3;function ja(t,e,r,n=5){let o=t.split(`
372
- `).length,s=Buffer.byteLength(t),i=co(),a=i.indexPlainText(t,r),c=i.searchWithFallback(e,n,r),u=i.getDistinctiveTerms(a.sourceId);if(c.length===0){let d=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`No sections matched intent "${e}" in ${o}-line output (${(s/1024).toFixed(1)}KB).`];return u.length>0&&(d.push(""),d.push(`Searchable terms: ${u.join(", ")}`)),d.push(""),d.push("Use search() to explore the indexed content."),d.join(`
373
- `)}let l=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`${c.length} sections matched "${e}" (${o} lines, ${(s/1024).toFixed(1)}KB):`,""];for(let d of c){let m=d.content.split(`
374
- `)[0].slice(0,120);l.push(` - ${d.title}: ${m}`)}return u.length>0&&(l.push(""),l.push(`Searchable terms: ${u.join(", ")}`)),l.push(""),l.push("Use search(queries: [...]) to retrieve full content of any section."),l.join(`
402
+ ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:u,output:l}=fp({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(l)>Sa?($t(Buffer.byteLength(l)),U("ctx_execute",{content:[{type:"text",text:ro(l,o,u?`execute:${t}:error`:`execute:${t}`)}],isError:u})):Buffer.byteLength(l)>ba?($t(Buffer.byteLength(l)),U("ctx_execute",{content:[{type:"text",text:ro(l,"errors failures exceptions",u?`execute:${t}:error`:`execute:${t}`)}],isError:u})):U("ctx_execute",{content:[{type:"text",text:l}],isError:u})}let c=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(c)>Sa?($t(Buffer.byteLength(c)),U("ctx_execute",{content:[{type:"text",text:ro(c,o,`execute:${t}`)}]})):Buffer.byteLength(c)>ba?U("ctx_execute",Bv(c,`execute:${t}`)):U("ctx_execute",{content:[{type:"text",text:c}]})}catch(s){let i=s instanceof Error?s.message:String(s);return U("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});function Bv(t,e){let r=ln();$t(Buffer.byteLength(t));let n=r.index({content:t,source:e});return{content:[{type:"text",text:`Indexed ${n.totalChunks} sections (${n.codeChunks} with code) from: ${n.label}
403
+ Use search(queries: ["..."]) to query this content. Use source: "${n.label}" to scope results.`}]}}var Sa=5e3,ba=102400;function ro(t,e,r,n=5){let o=t.split(`
404
+ `).length,s=Buffer.byteLength(t),i=ln(),a=i.indexPlainText(t,r),c=i.searchWithFallback(e,n,r),u=i.getDistinctiveTerms(a.sourceId);if(c.length===0){let d=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`No sections matched intent "${e}" in ${o}-line output (${(s/1024).toFixed(1)}KB).`];return u.length>0&&(d.push(""),d.push(`Searchable terms: ${u.join(", ")}`)),d.push(""),d.push("Use search() to explore the indexed content."),d.join(`
405
+ `)}let l=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`${c.length} sections matched "${e}" (${o} lines, ${(s/1024).toFixed(1)}KB):`,""];for(let d of c){let f=d.content.split(`
406
+ `)[0].slice(0,120);l.push(` - ${d.title}: ${f}`)}return u.length>0&&(l.push(""),l.push(`Searchable terms: ${u.join(", ")}`)),l.push(""),l.push("Use search(queries: [...]) to retrieve full content of any section."),l.join(`
375
407
  `)}Be.registerTool("ctx_execute_file",{title:"Execute File Processing",description:`Read a file and process it without loading contents into context. The file is read into a FILE_CONTENT variable inside the sandbox. Only your printed summary enters context.
376
408
 
377
- PREFER THIS OVER Read/cat for: log files, data files (CSV, JSON, XML), large source files for analysis, and any file where you need to extract specific information rather than read the entire content.`,inputSchema:D.object({path:D.string().describe("Absolute file path or relative to project root"),language:D.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:D.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:D.number().optional().default(3e4).describe("Max execution time in ms"),intent:D.string().optional().describe("What you're looking for in the output. When provided and output is large (>5KB), returns only matching sections via BM25 search instead of truncated output.")})},async({path:t,language:e,code:r,timeout:n,intent:o})=>{let s=fI(t,"execute_file");if(s)return s;if(e==="shell"){let i=df(r,"execute_file");if(i)return i}else{let i=Uv(r,e,"execute_file");if(i)return i}try{let i=await $s.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return V("ctx_execute_file",{content:[{type:"text",text:`Timed out processing ${t} after ${n}ms`}],isError:!0});if(i.exitCode!==0){let{isError:c,output:u}=$p({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>Aa?(wr(Buffer.byteLength(u)),V("ctx_execute_file",{content:[{type:"text",text:ja(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):V("ctx_execute_file",{content:[{type:"text",text:u}],isError:c})}let a=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(a)>Aa?(wr(Buffer.byteLength(a)),V("ctx_execute_file",{content:[{type:"text",text:ja(a,o,`file:${t}`)}]})):V("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return V("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});Be.registerTool("ctx_index",{title:"Index Content",description:`Index documentation or knowledge content into a searchable BM25 knowledge base. Chunks markdown by headings (keeping code blocks intact) and stores in ephemeral FTS5 database. The full content does NOT stay in context \u2014 only a brief summary is returned.
409
+ PREFER THIS OVER Read/cat for: log files, data files (CSV, JSON, XML), large source files for analysis, and any file where you need to extract specific information rather than read the entire content.`,inputSchema:L.object({path:L.string().describe("Absolute file path or relative to project root"),language:L.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:L.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:L.number().optional().default(3e4).describe("Max execution time in ms"),intent:L.string().optional().describe("What you're looking for in the output. When provided and output is large (>5KB), returns only matching sections via BM25 search instead of truncated output.")})},async({path:t,language:e,code:r,timeout:n,intent:o})=>{let s=SI(t,"execute_file");if(s)return s;if(e==="shell"){let i=Xp(r,"execute_file");if(i)return i}else{let i=qv(r,e,"execute_file");if(i)return i}try{let i=await ks.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return U("ctx_execute_file",{content:[{type:"text",text:`Timed out processing ${t} after ${n}ms`}],isError:!0});if(i.exitCode!==0){let{isError:c,output:u}=fp({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>Sa?($t(Buffer.byteLength(u)),U("ctx_execute_file",{content:[{type:"text",text:ro(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):Buffer.byteLength(u)>ba?($t(Buffer.byteLength(u)),U("ctx_execute_file",{content:[{type:"text",text:ro(u,"errors failures exceptions",c?`file:${t}:error`:`file:${t}`)}],isError:c})):U("ctx_execute_file",{content:[{type:"text",text:u}],isError:c})}let a=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(a)>Sa?($t(Buffer.byteLength(a)),U("ctx_execute_file",{content:[{type:"text",text:ro(a,o,`file:${t}`)}]})):Buffer.byteLength(a)>ba?U("ctx_execute_file",Bv(a,`file:${t}`)):U("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return U("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});Be.registerTool("ctx_index",{title:"Index Content",description:`Index documentation or knowledge content into a searchable BM25 knowledge base. Chunks markdown by headings (keeping code blocks intact) and stores in ephemeral FTS5 database. The full content does NOT stay in context \u2014 only a brief summary is returned.
378
410
 
379
411
  WHEN TO USE:
380
412
  - Documentation from Context7, Skills, or MCP tools (API docs, framework guides, code examples)
@@ -385,34 +417,34 @@ WHEN TO USE:
385
417
  - Any content with code examples you may need to reference precisely
386
418
 
387
419
  After indexing, use 'search' to retrieve specific sections on-demand.
388
- Do NOT use for: log files, test output, CSV, build output \u2014 use 'execute_file' for those.`,inputSchema:D.object({content:D.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:D.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:D.string().optional().describe("Label for the indexed content (e.g., 'Context7: React useEffect', 'Skill: frontend-design')")})},async({content:t,path:e,source:r})=>{if(!t&&!e)return V("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)wr(Buffer.byteLength(t));else if(e)try{let s=await import("fs");wr(s.readFileSync(e).byteLength)}catch{}let o=co().index({content:t,path:e,source:r});return V("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
389
- Use search(queries: ["..."]) to query this content. Use source: "${o.label}" to scope results.`}]})}catch(n){let o=n instanceof Error?n.message:String(n);return V("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});var ln=0,sf=Date.now(),xI=6e4,jv=3,Mv=8;function pf(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function vI(t){let e=pf(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}Be.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Requires prior indexing via ctx_batch_execute, ctx_index, or ctx_fetch_and_index. Pass ALL search questions as queries array in ONE call.
420
+ Do NOT use for: log files, test output, CSV, build output \u2014 use 'execute_file' for those.`,inputSchema:L.object({content:L.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:L.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:L.string().optional().describe("Label for the indexed content (e.g., 'Context7: React useEffect', 'Skill: frontend-design')")})},async({content:t,path:e,source:r})=>{if(!t&&!e)return U("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)$t(Buffer.byteLength(t));else if(e)try{let s=await import("fs");$t(s.readFileSync(e).byteLength)}catch{}let o=ln().index({content:t,path:e,source:r});return U("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
421
+ Use search(queries: ["..."]) to query this content. Use source: "${o.label}" to scope results.`}]})}catch(n){let o=n instanceof Error?n.message:String(n);return U("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});var on=0,Kp=Date.now(),RI=6e4,Dv=3,Lv=8;function Qp(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function OI(t){let e=Qp(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}Be.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Requires prior indexing via ctx_batch_execute, ctx_index, or ctx_fetch_and_index. Pass ALL search questions as queries array in ONE call.
390
422
 
391
- TIPS: 2-4 specific terms per query. Use 'source' to scope results.`,inputSchema:D.object({queries:D.preprocess(pf,D.array(D.string()).optional().describe("Array of search queries. Batch ALL questions in one call.")),limit:D.number().optional().default(3).describe("Results per query (default: 3)"),source:D.string().optional().describe("Filter to a specific indexed source (partial match)."),contentType:D.enum(["code","prose"]).optional().describe("Filter results by content type: 'code' or 'prose'.")})},async t=>{try{let e=co();if(e.getStats().chunks===0)return V("ctx_search",{content:[{type:"text",text:`Knowledge base is empty \u2014 no content has been indexed yet.
423
+ TIPS: 2-4 specific terms per query. Use 'source' to scope results.`,inputSchema:L.object({queries:L.preprocess(Qp,L.array(L.string()).optional().describe("Array of search queries. Batch ALL questions in one call.")),limit:L.number().optional().default(3).describe("Results per query (default: 3)"),source:L.string().optional().describe("Filter to a specific indexed source (partial match)."),contentType:L.enum(["code","prose"]).optional().describe("Filter results by content type: 'code' or 'prose'.")})},async t=>{try{let e=ln();if(e.getStats().chunks===0)return U("ctx_search",{content:[{type:"text",text:`Knowledge base is empty \u2014 no content has been indexed yet.
392
424
 
393
425
  ctx_search is a follow-up tool that queries previously indexed content. To gather and index content first, use:
394
426
  \u2022 ctx_batch_execute(commands, queries) \u2014 run commands, auto-index output, and search in one call
395
427
  \u2022 ctx_fetch_and_index(url) \u2014 fetch a URL, index it, then search with ctx_search
396
428
  \u2022 ctx_index(content, source) \u2014 manually index text content
397
429
 
398
- After indexing, ctx_search becomes available for follow-up queries.`}],isError:!0});let r=t,n=[];if(Array.isArray(r.queries)&&r.queries.length>0?n.push(...r.queries):typeof r.query=="string"&&r.query.length>0&&n.push(r.query),n.length===0)return V("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:o=3,source:s,contentType:i}=t,a=Date.now();if(a-sf>xI&&(ln=0,sf=a),ln++,ln>Mv)return V("ctx_search",{content:[{type:"text",text:`BLOCKED: ${ln} search calls in ${Math.round((a-sf)/1e3)}s. You're flooding context. STOP making individual search calls. Use batch_execute(commands, queries) for your next research step.`}],isError:!0});let c=ln>jv?1:Math.min(o,2),u=40*1024,l=0,d=[];for(let f of n){if(l>u){d.push(`## ${f}
430
+ After indexing, ctx_search becomes available for follow-up queries.`}],isError:!0});let r=t,n=[];if(Array.isArray(r.queries)&&r.queries.length>0?n.push(...r.queries):typeof r.query=="string"&&r.query.length>0&&n.push(r.query),n.length===0)return U("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:o=3,source:s,contentType:i}=t,a=Date.now();if(a-Kp>RI&&(on=0,Kp=a),on++,on>Lv)return U("ctx_search",{content:[{type:"text",text:`BLOCKED: ${on} search calls in ${Math.round((a-Kp)/1e3)}s. You're flooding context. STOP making individual search calls. Use batch_execute(commands, queries) for your next research step.`}],isError:!0});let c=on>Dv?1:Math.min(o,2),u=40*1024,l=0,d=[];for(let m of n){if(l>u){d.push(`## ${m}
399
431
  (output cap reached)
400
- `);continue}let p=e.searchWithFallback(f,c,s,i);if(p.length===0){d.push(`## ${f}
401
- No results found.`);continue}let h=p.map((g,y)=>{let v=`--- [${g.source}] ---`,S=`### ${g.title}`,w=Hv(g.content,f,1500,g.highlighted);return`${v}
402
- ${S}
432
+ `);continue}let p=e.searchWithFallback(m,c,s,i);if(p.length===0){d.push(`## ${m}
433
+ No results found.`);continue}let h=p.map((g,v)=>{let y=`--- [${g.source}] ---`,k=`### ${g.title}`,E=Fv(g.content,m,1500,g.highlighted);return`${y}
434
+ ${k}
403
435
 
404
- ${w}`}).join(`
436
+ ${E}`}).join(`
405
437
 
406
- `);d.push(`## ${f}
438
+ `);d.push(`## ${m}
407
439
 
408
- ${h}`),l+=h.length}let m=d.join(`
440
+ ${h}`),l+=h.length}let f=d.join(`
409
441
 
410
442
  ---
411
443
 
412
- `);if(ln>=jv&&(m+=`
444
+ `);if(on>=Dv&&(f+=`
413
445
 
414
- \u26A0 search call #${ln}/${Mv} in this window. Results limited to ${c}/query. Batch queries: search(queries: ["q1","q2","q3"]) or use batch_execute.`),m.trim().length===0){let f=e.listSources(),p=f.length>0?`
415
- Indexed sources: ${f.map(h=>`"${h.label}" (${h.chunkCount} sections)`).join(", ")}`:"";return V("ctx_search",{content:[{type:"text",text:`No results found.${p}`}]})}return V("ctx_search",{content:[{type:"text",text:m}]})}catch(e){let r=e instanceof Error?e.message:String(e);return V("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});var af=null,cf=null;function SI(){return af||(af=Lv(import.meta.url).resolve("turndown")),af}function kI(){return cf||(cf=Lv(import.meta.url).resolve("turndown-plugin-gfm")),cf}function bI(t,e){let r=JSON.stringify(SI()),n=JSON.stringify(kI()),o=JSON.stringify(e);return`
446
+ \u26A0 search call #${on}/${Lv} in this window. Results limited to ${c}/query. Batch queries: search(queries: ["q1","q2","q3"]) or use batch_execute.`),f.trim().length===0){let m=e.listSources(),p=m.length>0?`
447
+ Indexed sources: ${m.map(h=>`"${h.label}" (${h.chunkCount} sections)`).join(", ")}`:"";return U("ctx_search",{content:[{type:"text",text:`No results found.${p}`}]})}return U("ctx_search",{content:[{type:"text",text:f}]})}catch(e){let r=e instanceof Error?e.message:String(e);return U("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});var Jp=null,Wp=null;function CI(){return Jp||(Jp=Zv(import.meta.url).resolve("turndown")),Jp}function II(){return Wp||(Wp=Zv(import.meta.url).resolve("turndown-plugin-gfm")),Wp}function zI(t,e){let r=JSON.stringify(CI()),n=JSON.stringify(II()),o=JSON.stringify(e);return`
416
448
  const TurndownService = require(${r});
417
449
  const { gfm } = require(${n});
418
450
  const fs = require('fs');
@@ -462,37 +494,35 @@ main();
462
494
 
463
495
  Better than WebFetch: preview is immediate, full content is searchable, raw HTML never enters context.
464
496
 
465
- Content-type aware: HTML is converted to markdown, JSON is chunked by key paths, plain text is indexed directly.`,inputSchema:D.object({url:D.string().describe("The URL to fetch and index"),source:D.string().optional().describe("Label for the indexed content (e.g., 'React useEffect docs', 'Supabase Auth API')"),force:D.boolean().optional().describe("Skip cache and re-fetch even if content was recently indexed")})},async({url:t,source:e,force:r})=>{if(!r){let o=co(),s=e??t,i=o.getSourceMeta(s);if(i){let a=new Date(i.indexedAt+"Z"),c=Date.now()-a.getTime(),u=1440*60*1e3;if(c<u){let l=Math.floor(c/36e5),d=Math.floor(c/(60*1e3)),m=l>0?`${l}h ago`:d>0?`${d}m ago`:"just now",f=i.chunkCount*1600;return ie.cacheHits++,ie.cacheBytesSaved+=f,V("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${i.label}** \u2014 ${i.chunkCount} sections, indexed ${m} (fresh, TTL: 24h).
497
+ Content-type aware: HTML is converted to markdown, JSON is chunked by key paths, plain text is indexed directly.`,inputSchema:L.object({url:L.string().describe("The URL to fetch and index"),source:L.string().optional().describe("Label for the indexed content (e.g., 'React useEffect docs', 'Supabase Auth API')"),force:L.boolean().optional().describe("Skip cache and re-fetch even if content was recently indexed")})},async({url:t,source:e,force:r})=>{if(!r){let o=ln(),s=e??t,i=o.getSourceMeta(s);if(i){let a=new Date(i.indexedAt+"Z"),c=Date.now()-a.getTime(),u=1440*60*1e3;if(c<u){let l=Math.floor(c/36e5),d=Math.floor(c/(60*1e3)),f=l>0?`${l}h ago`:d>0?`${d}m ago`:"just now",m=i.chunkCount*1600;return ie.cacheHits++,ie.cacheBytesSaved+=m,U("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${i.label}** \u2014 ${i.chunkCount} sections, indexed ${f} (fresh, TTL: 24h).
466
498
  To refresh: call ctx_fetch_and_index again with \`force: true\`.
467
499
 
468
500
  You MUST call search() to answer questions about this content \u2014 this cached response contains no content.
469
- Use: search(queries: [...], source: "${i.label}")`}]})}}}let n=mn(lI(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let o=bI(t,n),s=await $s.execute({language:"javascript",code:o,timeout:3e4});if(s.exitCode!==0)return V("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${s.stderr||s.stdout}`}],isError:!0});let i=co(),a=(s.stdout||"").trim(),c;try{c=Zv(n,"utf-8").trim()}catch{return V("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(c.length===0)return V("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});wr(Buffer.byteLength(c));let u;a==="__CM_CT__:json"?u=i.indexJSON(c,e??t):a==="__CM_CT__:text"?u=i.indexPlainText(c,e??t):u=i.index({content:c,source:e??t});let l=3072,d=c.length>l?c.slice(0,l)+`
501
+ Use: search(queries: [...], source: "${i.label}")`}]})}}}let n=un(xI(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let o=zI(t,n),s=await ks.execute({language:"javascript",code:o,timeout:3e4});if(s.exitCode!==0)return U("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${s.stderr||s.stdout}`}],isError:!0});let i=ln(),a=(s.stdout||"").trim(),c;try{c=Hv(n,"utf-8").trim()}catch{return U("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(c.length===0)return U("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});$t(Buffer.byteLength(c));let u;a==="__CM_CT__:json"?u=i.indexJSON(c,e??t):a==="__CM_CT__:text"?u=i.indexPlainText(c,e??t):u=i.index({content:c,source:e??t});let l=3072,d=c.length>l?c.slice(0,l)+`
470
502
 
471
- \u2026[truncated \u2014 use search() for full content]`:c,m=(Buffer.byteLength(c)/1024).toFixed(1),f=[`Fetched and indexed **${u.totalChunks} sections** (${m}KB) from: ${u.label}`,`Full content indexed in sandbox \u2014 use search(queries: [...], source: "${u.label}") for specific lookups.`,"","---","",d].join(`
472
- `);return V("ctx_fetch_and_index",{content:[{type:"text",text:f}]})}catch(o){let s=o instanceof Error?o.message:String(o);return V("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${s}`}],isError:!0})}finally{try{aI(n)}catch{}}});Be.registerTool("ctx_batch_execute",{title:"Batch Execute & Search",description:`Execute multiple commands in ONE call, auto-index all output, and search with multiple queries. Returns search results directly \u2014 no follow-up calls needed.
503
+ \u2026[truncated \u2014 use search() for full content]`:c,f=(Buffer.byteLength(c)/1024).toFixed(1),m=[`Fetched and indexed **${u.totalChunks} sections** (${f}KB) from: ${u.label}`,`Full content indexed in sandbox \u2014 use search(queries: [...], source: "${u.label}") for specific lookups.`,"","---","",d].join(`
504
+ `);return U("ctx_fetch_and_index",{content:[{type:"text",text:m}]})}catch(o){let s=o instanceof Error?o.message:String(o);return U("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${s}`}],isError:!0})}finally{try{gI(n)}catch{}}});Be.registerTool("ctx_batch_execute",{title:"Batch Execute & Search",description:`Execute multiple commands in ONE call, auto-index all output, and search with multiple queries. Returns search results directly \u2014 no follow-up calls needed.
473
505
 
474
506
  THIS IS THE PRIMARY TOOL. Use this instead of multiple execute() calls.
475
507
 
476
508
  One batch_execute call replaces 30+ execute calls + 10+ search calls.
477
- Provide all commands to run and all queries to search \u2014 everything happens in one round trip.`,inputSchema:D.object({commands:D.preprocess(vI,D.array(D.object({label:D.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:D.string().describe("Shell command to execute")})).min(1).describe("Commands to execute as a batch. Each runs sequentially, output is labeled with the section header.")),queries:D.preprocess(pf,D.array(D.string()).min(1).describe("Search queries to extract information from indexed output. Use 5-8 comprehensive queries. Each returns top 5 matching sections with full content. This is your ONLY chance \u2014 put ALL your questions here. No follow-up calls needed.")),timeout:D.number().optional().default(6e4).describe("Max execution time in ms (default: 60s)")})},async({commands:t,queries:e,timeout:r})=>{for(let n of t){let o=df(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1;for(let w of t){let R=Date.now()-o,ae=r-R;if(ae<=0){n.push(`# ${w.label}
509
+ Provide all commands to run and all queries to search \u2014 everything happens in one round trip.`,inputSchema:L.object({commands:L.preprocess(OI,L.array(L.object({label:L.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:L.string().describe("Shell command to execute")})).min(1).describe("Commands to execute as a batch. Each runs sequentially, output is labeled with the section header.")),queries:L.preprocess(Qp,L.array(L.string()).min(1).describe("Search queries to extract information from indexed output. Use 5-8 comprehensive queries. Each returns top 5 matching sections with full content. This is your ONLY chance \u2014 put ALL your questions here. No follow-up calls needed.")),timeout:L.number().optional().default(6e4).describe("Max execution time in ms (default: 60s)")})},async({commands:t,queries:e,timeout:r})=>{for(let n of t){let o=Xp(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1;for(let y of t){let k=Date.now()-o,E=r-k;if(E<=0){n.push(`# ${y.label}
478
510
 
479
511
  (skipped \u2014 batch timeout exceeded)
480
- `),s=!0;continue}let ce=await $s.execute({language:"shell",code:`${w.command} 2>&1`,timeout:ae}),rt=ce.stdout||"(no output)";if(n.push(`# ${w.label}
512
+ `),s=!0;continue}let C=await ks.execute({language:"shell",code:`${y.command} 2>&1`,timeout:E}),ke=C.stdout||"(no output)";if(n.push(`# ${y.label}
481
513
 
482
- ${rt}
483
- `),ce.timedOut){s=!0;let Dt=t.indexOf(w);for(let me=Dt+1;me<t.length;me++)n.push(`# ${t[me].label}
514
+ ${ke}
515
+ `),C.timedOut){s=!0;let be=t.indexOf(y);for(let ot=be+1;ot<t.length;ot++)n.push(`# ${t[ot].label}
484
516
 
485
517
  (skipped \u2014 batch timeout exceeded)
486
518
  `);break}}let i=n.join(`
487
519
  `),a=Buffer.byteLength(i),c=i.split(`
488
- `).length;if(s&&n.length===0)return V("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});wr(a);let u=co(),l=`batch:${t.map(w=>w.label).join(",").slice(0,80)}`,d=u.index({content:i,source:l}),m=u.getChunksBySource(d.sourceId),f=["## Indexed Sections",""],p=[];for(let w of m){let R=Buffer.byteLength(w.content);f.push(`- ${w.title} (${(R/1024).toFixed(1)}KB)`),p.push(w.title)}let h=80*1024,g=[],y=0;for(let w of e){if(y>h){g.push(`## ${w}
489
- (output cap reached \u2014 use search(queries: ["${w}"]) for details)
490
- `);continue}let R=u.searchWithFallback(w,3,l),ae=!1;if(R.length===0&&(R=u.searchWithFallback(w,3),ae=R.length>0),g.push(`## ${w}`),ae&&g.push("> **Note:** No results in current batch output. Showing results from previously indexed content."),g.push(""),R.length>0)for(let ce of R){let rt=Hv(ce.content,w,3e3,ce.highlighted),Dt=ae?` _(source: ${ce.source})_`:"";g.push(`### ${ce.title}${Dt}`),g.push(rt),g.push(""),y+=rt.length+ce.title.length}else g.push("No matching sections found."),g.push("")}let v=u.getDistinctiveTerms?u.getDistinctiveTerms(d.sourceId):[],S=[`Executed ${t.length} commands (${c} lines, ${(a/1024).toFixed(1)}KB). Indexed ${d.totalChunks} sections. Searched ${e.length} queries.`,"",...f,"",...g,v.length>0?`
491
- Searchable terms for follow-up: ${v.join(", ")}`:""].join(`
492
- `);return V("ctx_batch_execute",{content:[{type:"text",text:S}]})}catch(n){let o=n instanceof Error?n.message:String(n);return V("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});Be.registerTool("ctx_stats",{title:"Session Statistics",description:"Returns context consumption statistics for the current session. Shows total bytes returned to context, breakdown by tool, call counts, estimated token usage, and context savings ratio.",inputSchema:D.object({})},async()=>{let t=Object.values(ie.bytesReturned).reduce((d,m)=>d+m,0),e=Object.values(ie.calls).reduce((d,m)=>d+m,0),n=((Date.now()-ie.sessionStart)/6e4).toFixed(1),o=ie.bytesIndexed+ie.bytesSandboxed,s=o+t,i=s/Math.max(t,1),a=s>0?((1-t/s)*100).toFixed(0):"0",c=d=>d>=1024*1024?`${(d/1024/1024).toFixed(1)}MB`:`${(d/1024).toFixed(1)}KB`,u=[`## context-mode \u2014 Session Report (${n} min)`];if(u.push("","### Context Window Protection",""),e===0)u.push("No context-mode tool calls yet. Use `batch_execute`, `execute`, or `fetch_and_index` to keep raw output out of your context window.");else{u.push("| Metric | Value |","|--------|------:|",`| Total data processed | **${c(s)}** |`,`| Kept in sandbox (never entered context) | **${c(o)}** |`,`| Entered context | ${c(t)} |`,`| Estimated tokens saved | ~${Math.round(o/4).toLocaleString()} |`,`| **Context savings** | **${i.toFixed(1)}x (${a}% reduction)** |`);let d=new Set([...Object.keys(ie.calls),...Object.keys(ie.bytesReturned)]);if(d.size>0){u.push("","| Tool | Calls | Context | Tokens |","|------|------:|--------:|-------:|");for(let m of Array.from(d).sort()){let f=ie.calls[m]||0,p=ie.bytesReturned[m]||0,h=Math.round(p/4);u.push(`| ${m} | ${f} | ${c(p)} | ~${h.toLocaleString()} |`)}u.push(`| **Total** | **${e}** | **${c(t)}** | **~${Math.round(t/4).toLocaleString()}** |`)}if(o>0&&u.push("",`Without context-mode, **${c(s)}** of raw output would flood your context window. Instead, **${a}%** stayed in sandbox.`),ie.cacheHits>0||ie.cacheBytesSaved>0){let m=s+ie.cacheBytesSaved,f=m/Math.max(t,1),p=Math.max(0,24-Math.floor((Date.now()-ie.sessionStart)/(3600*1e3)));u.push("","### TTL Cache","","| Metric | Value |","|--------|------:|",`| Cache hits | **${ie.cacheHits}** |`,`| Data avoided by cache | **${c(ie.cacheBytesSaved)}** |`,`| Network requests saved | **${ie.cacheHits}** |`,`| TTL remaining | **~${p}h** |`,"",`Content was already indexed in the knowledge base \u2014 ${ie.cacheHits} fetch${ie.cacheHits>1?"es":""} skipped entirely. **${c(ie.cacheBytesSaved)}** of network I/O avoided. Search results served directly from local FTS5 index.`),f>i&&u.push("",`**Total context savings (sandbox + cache): ${f.toFixed(1)}x** \u2014 ${c(m)} processed, only ${c(t)} entered context.`)}}try{let d=process.env.CLAUDE_PROJECT_DIR||process.cwd(),m=Dv("sha256").update(d).digest("hex").slice(0,16),f=Rx(),p=mn(Ma(),".claude","context-mode","sessions",`${m}${f}.db`);if(br(p)){let h=hs(),g=new h(p,{readonly:!0}),y=g.prepare("SELECT COUNT(*) as cnt FROM session_events").get(),v=g.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all(),S=g.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get(),w=g.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get();if(y.cnt>0){let R=S?.compact_count??0,ae=g.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),ce=new Map;for(let me of ae){ce.has(me.category)||ce.set(me.category,new Set);let Qt=ce.get(me.category);if(Qt.size<5){let Ze=me.data;me.category==="file"?Ze=me.data.split("/").pop()||me.data:me.category==="prompt"&&(Ze=Ze.length>50?Ze.slice(0,47)+"...":Ze),Ze.length>40&&(Ze=Ze.slice(0,37)+"..."),Qt.add(Ze)}}let rt={file:"Files tracked",rule:"Project rules (CLAUDE.md)",prompt:"Your requests saved",mcp:"Plugin tools used",git:"Git operations",env:"Environment setup",error:"Errors caught",task:"Tasks in progress",decision:"Your decisions",cwd:"Working directory",skill:"Skills used",subagent:"Delegated work",intent:"Session mode",data:"Data references",role:"Behavioral directives"},Dt={file:"Restored after compact \u2014 no need to re-read",rule:"Your project instructions survive context resets",prompt:"Continues exactly where you left off",decision:"Applied automatically \u2014 won't ask again",task:"Picks up from where it stopped",error:"Tracked and monitored across compacts",git:"Branch, commit, and repo state preserved",env:"Runtime config carried forward",mcp:"Tool usage patterns remembered",subagent:"Delegation history preserved",skill:"Skill invocations tracked"};u.push("","### Session Continuity","","| What's preserved | Count | I remember... | Why it matters |","|------------------|------:|---------------|----------------|");for(let me of v){let Qt=rt[me.category]||me.category,Ze=ce.get(me.category),Ps=Ze?Array.from(Ze).join(", "):"",Da=Dt[me.category]||"Survives context resets";u.push(`| ${Qt} | ${me.cnt} | ${Ps} | ${Da} |`)}u.push(`| **Total** | **${y.cnt}** | | **Zero knowledge lost on compact** |`),u.push(""),R>0?u.push(`Context has been compacted **${R} time(s)** \u2014 session knowledge was preserved each time.`):u.push("When your context compacts, all of this will restore Claude's awareness \u2014 no starting from scratch."),w&&!w.consumed&&u.push(`Resume snapshot ready (${w.event_count} events) for the next compaction.`),u.push(""),u.push("> **Note:** Previous session data is loaded when you start a new session. Without `--continue`, old session history is cleaned up to keep the database lean.")}g.close()}}catch{}u.push("","---","_Display this entire report as-is in your response. Do NOT summarize, collapse, or paraphrase any section._");let l=u.join(`
493
- `);return V("ctx_stats",{content:[{type:"text",text:l}]})});Be.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Runs all checks server-side and returns results as a markdown checklist. No CLI execution needed.",inputSchema:D.object({})},async()=>{let t=["## context-mode doctor",""],e=br(pn(fn,"package.json"))?fn:uf(fn),r=11,n=(Na.length/r*100).toFixed(0);t.push(`- [x] Runtimes: ${Na.length}/${r} (${n}%) \u2014 ${Na.join(", ")}`),ga()?t.push("- [x] Performance: FAST (Bun)"):t.push("- [-] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");try{let i=await new ms({runtimes:La}).execute({language:"javascript",code:'console.log("ok");',timeout:5e3});i.exitCode===0&&i.stdout.trim()==="ok"?t.push("- [x] Server test: PASS"):t.push(`- [ ] Server test: FAIL \u2014 exit ${i.exitCode}`)}catch(s){t.push(`- [ ] Server test: FAIL \u2014 ${s instanceof Error?s.message:s}`)}try{let s=hs(),i=new s(":memory:");i.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),i.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let a=i.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();i.close(),a&&a.content==="hello world"?t.push("- [x] FTS5 / SQLite: PASS \u2014 native module works"):t.push("- [ ] FTS5 / SQLite: FAIL \u2014 unexpected result")}catch(s){t.push(`- [ ] FTS5 / SQLite: FAIL \u2014 ${s instanceof Error?s.message:s}`)}let o=pn(e,"hooks","pretooluse.mjs");return br(o)?t.push(`- [x] Hook script: PASS \u2014 ${o}`):t.push(`- [ ] Hook script: FAIL \u2014 not found at ${o}`),t.push(`- [x] Version: v${lf}`),V("ctx_doctor",{content:[{type:"text",text:t.join(`
494
- `)}]})});Be.registerTool("ctx_upgrade",{title:"Upgrade Plugin",description:"Upgrade context-mode to the latest version. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a checklist. Tell the user to restart their session after upgrade.",inputSchema:D.object({})},async()=>{let t=br(pn(fn,"package.json"))?fn:uf(fn),e=pn(t,"cli.bundle.mjs"),r=pn(t,"build","cli.js"),n;if(br(e))n=`node "${e}" upgrade`;else if(br(r))n=`node "${r}" upgrade`;else{let s="https://github.com/mksglu/context-mode.git",i=["build","hooks","skills","scripts",".claude-plugin"],a=["start.mjs","server.bundle.mjs","cli.bundle.mjs","package.json"],c=['import{execSync}from"node:child_process";','import{cpSync,rmSync,existsSync,mkdtempSync}from"node:fs";','import{join}from"node:path";','import{tmpdir}from"node:os";',`const P=${JSON.stringify(t)};`,'const T=mkdtempSync(join(tmpdir(),"ctx-upgrade-"));',"try{",'console.log("- [x] Starting inline upgrade (no CLI found)");',`execSync("git clone --depth 1 ${s} \\""+T+"\\"",{stdio:"inherit"});`,'console.log("- [x] Cloned latest source");','execSync("npm install",{cwd:T,stdio:"inherit"});','execSync("npm run build",{cwd:T,stdio:"inherit"});','console.log("- [x] Built from source");',...i.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{recursive:true,force:true});`),...a.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{force:true});`),'console.log("- [x] Copied build artifacts");','execSync("npm install --production",{cwd:P,stdio:"inherit"});','console.log("- [x] Installed production dependencies");','console.log("## context-mode upgrade complete");',"}catch(e){",'console.error("- [ ] Upgrade failed:",e.message);',"process.exit(1);","}finally{","try{rmSync(T,{recursive:true,force:true})}catch{}","}"].join(`
495
- `),u=pn(t,".ctx-upgrade-inline.mjs"),{writeFileSync:l}=await import("node:fs");l(u,c),n=`node "${u}"`}let o=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",n,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for success, `[ ]` for failure","- Example format:"," ```"," ## context-mode upgrade"," - [x] Pulled latest from GitHub"," - [x] Built and installed v0.9.24"," - [x] npm global updated"," - [x] Hooks configured"," - [x] Doctor: all checks PASS"," ```","- Tell the user to restart their session to pick up the new version."].join(`
496
- `);return V("ctx_upgrade",{content:[{type:"text",text:o}]})});async function wI(){let t=bp();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=()=>{$s.cleanupBackgrounded(),dn&&dn.close()},r=async()=>{e(),process.exit(0)};process.on("exit",e),process.on("SIGINT",()=>{r()}),process.on("SIGTERM",()=>{r()}),Px({onShutdown:()=>r()});let n=new ma;await Be.connect(n);try{let{detectPlatform:o,getAdapter:s}=await Promise.resolve().then(()=>(Av(),Nv)),i=Be.server.getClientVersion(),a=o(i??void 0),c=await s(a.platform);i&&console.error(`MCP client: ${i.name} v${i.version} \u2192 ${a.platform}`)}catch{}console.error(`Context Mode MCP server v${lf} running on stdio`),console.error(`Detected runtimes:
497
- ${ix(La)}`),ga()||(console.error(`
498
- Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}wI().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{Hv as extractSnippet,yI as positionsFromHighlight};
520
+ `).length;if(s&&n.length===0)return U("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});$t(a);let u=ln(),l=`batch:${t.map(y=>y.label).join(",").slice(0,80)}`,d=u.index({content:i,source:l}),f=u.getChunksBySource(d.sourceId),m=["## Indexed Sections",""],p=[];for(let y of f){let k=Buffer.byteLength(y.content);m.push(`- ${y.title} (${(k/1024).toFixed(1)}KB)`),p.push(y.title)}let h=PI(u,e,l),g=u.getDistinctiveTerms?u.getDistinctiveTerms(d.sourceId):[],v=[`Executed ${t.length} commands (${c} lines, ${(a/1024).toFixed(1)}KB). Indexed ${d.totalChunks} sections. Searched ${e.length} queries.`,"",...m,"",...h,g.length>0?`
521
+ Searchable terms for follow-up: ${g.join(", ")}`:""].join(`
522
+ `);return U("ctx_batch_execute",{content:[{type:"text",text:v}]})}catch(n){let o=n instanceof Error?n.message:String(n);return U("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});Be.registerTool("ctx_stats",{title:"Session Statistics",description:"Returns context consumption statistics for the current session. Shows total bytes returned to context, breakdown by tool, call counts, estimated token usage, and context savings ratio.",inputSchema:L.object({})},async()=>{let t=Object.values(ie.bytesReturned).reduce((d,f)=>d+f,0),e=Object.values(ie.calls).reduce((d,f)=>d+f,0),n=((Date.now()-ie.sessionStart)/6e4).toFixed(1),o=ie.bytesIndexed+ie.bytesSandboxed,s=o+t,i=s/Math.max(t,1),a=s>0?((1-t/s)*100).toFixed(0):"0",c=d=>d>=1024*1024?`${(d/1024/1024).toFixed(1)}MB`:`${(d/1024).toFixed(1)}KB`,u=[`## context-mode \u2014 Session Report (${n} min)`];if(u.push("","### Context Window Protection",""),e===0)u.push("No context-mode tool calls yet. Use `batch_execute`, `execute`, or `fetch_and_index` to keep raw output out of your context window.");else{u.push("| Metric | Value |","|--------|------:|",`| Total data processed | **${c(s)}** |`,`| Kept in sandbox (never entered context) | **${c(o)}** |`,`| Entered context | ${c(t)} |`,`| Estimated tokens saved | ~${Math.round(o/4).toLocaleString()} |`,`| **Context savings** | **${i.toFixed(1)}x (${a}% reduction)** |`);let d=new Set([...Object.keys(ie.calls),...Object.keys(ie.bytesReturned)]);if(d.size>0){u.push("","| Tool | Calls | Context | Tokens |","|------|------:|--------:|-------:|");for(let f of Array.from(d).sort()){let m=ie.calls[f]||0,p=ie.bytesReturned[f]||0,h=Math.round(p/4);u.push(`| ${f} | ${m} | ${c(p)} | ~${h.toLocaleString()} |`)}u.push(`| **Total** | **${e}** | **${c(t)}** | **~${Math.round(t/4).toLocaleString()}** |`)}if(o>0&&u.push("",`Without context-mode, **${c(s)}** of raw output would flood your context window. Instead, **${a}%** stayed in sandbox.`),ie.cacheHits>0||ie.cacheBytesSaved>0){let f=s+ie.cacheBytesSaved,m=f/Math.max(t,1),p=Math.max(0,24-Math.floor((Date.now()-ie.sessionStart)/(3600*1e3)));u.push("","### TTL Cache","","| Metric | Value |","|--------|------:|",`| Cache hits | **${ie.cacheHits}** |`,`| Data avoided by cache | **${c(ie.cacheBytesSaved)}** |`,`| Network requests saved | **${ie.cacheHits}** |`,`| TTL remaining | **~${p}h** |`,"",`Content was already indexed in the knowledge base \u2014 ${ie.cacheHits} fetch${ie.cacheHits>1?"es":""} skipped entirely. **${c(ie.cacheBytesSaved)}** of network I/O avoided. Search results served directly from local FTS5 index.`),m>i&&u.push("",`**Total context savings (sandbox + cache): ${m.toFixed(1)}x** \u2014 ${c(f)} processed, only ${c(t)} entered context.`)}}try{let d=process.env.CLAUDE_PROJECT_DIR||process.cwd(),f=Uv("sha256").update(d).digest("hex").slice(0,16),m=kx(),p=un(wa(),".claude","context-mode","sessions",`${f}${m}.db`);if(xr(p)){let h=ls(),g=new h(p,{readonly:!0}),v=g.prepare("SELECT COUNT(*) as cnt FROM session_events").get(),y=g.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all(),k=g.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get(),E=g.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get();if(v.cnt>0){let C=k?.compact_count??0,ke=g.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),be=new Map;for(let Se of ke){be.has(Se.category)||be.set(Se.category,new Set);let Gt=be.get(Se.category);if(Gt.size<5){let Ze=Se.data;Se.category==="file"?Ze=Se.data.split("/").pop()||Se.data:Se.category==="prompt"&&(Ze=Ze.length>50?Ze.slice(0,47)+"...":Ze),Ze.length>40&&(Ze=Ze.slice(0,37)+"..."),Gt.add(Ze)}}let ot={file:"Files tracked",rule:"Project rules (CLAUDE.md)",prompt:"Your requests saved",mcp:"Plugin tools used",git:"Git operations",env:"Environment setup",error:"Errors caught",task:"Tasks in progress",decision:"Your decisions",cwd:"Working directory",skill:"Skills used",subagent:"Delegated work",intent:"Session mode",data:"Data references",role:"Behavioral directives"},no={file:"Restored after compact \u2014 no need to re-read",rule:"Your project instructions survive context resets",prompt:"Continues exactly where you left off",decision:"Applied automatically \u2014 won't ask again",task:"Picks up from where it stopped",error:"Tracked and monitored across compacts",git:"Branch, commit, and repo state preserved",env:"Runtime config carried forward",mcp:"Tool usage patterns remembered",subagent:"Delegation history preserved",skill:"Skill invocations tracked"};u.push("","### Session Continuity","","| What's preserved | Count | I remember... | Why it matters |","|------------------|------:|---------------|----------------|");for(let Se of y){let Gt=ot[Se.category]||Se.category,Ze=be.get(Se.category),Ss=Ze?Array.from(Ze).join(", "):"",Ta=no[Se.category]||"Survives context resets";u.push(`| ${Gt} | ${Se.cnt} | ${Ss} | ${Ta} |`)}u.push(`| **Total** | **${v.cnt}** | | **Zero knowledge lost on compact** |`),u.push(""),C>0?u.push(`Context has been compacted **${C} time(s)** \u2014 session knowledge was preserved each time.`):u.push("When your context compacts, all of this will restore Claude's awareness \u2014 no starting from scratch."),E&&!E.consumed&&u.push(`Resume snapshot ready (${E.event_count} events) for the next compaction.`),u.push(""),u.push("> **Note:** Previous session data is loaded when you start a new session. Without `--continue`, old session history is cleaned up to keep the database lean.")}g.close()}}catch{}u.push("","---","_Display this entire report as-is in your response. Do NOT summarize, collapse, or paraphrase any section._");let l=u.join(`
523
+ `);return U("ctx_stats",{content:[{type:"text",text:l}]})});Be.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Runs all checks server-side and returns results as a markdown checklist. No CLI execution needed.",inputSchema:L.object({})},async()=>{let t=["## context-mode doctor",""],e=xr(an(cn,"package.json"))?cn:Gp(cn),r=11,n=(ka.length/r*100).toFixed(0);t.push(`- [x] Runtimes: ${ka.length}/${r} (${n}%) \u2014 ${ka.join(", ")}`),ua()?t.push("- [x] Performance: FAST (Bun)"):t.push("- [-] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");try{let i=await new us({runtimes:Ea}).execute({language:"javascript",code:'console.log("ok");',timeout:5e3});i.exitCode===0&&i.stdout.trim()==="ok"?t.push("- [x] Server test: PASS"):t.push(`- [ ] Server test: FAIL \u2014 exit ${i.exitCode}`)}catch(s){t.push(`- [ ] Server test: FAIL \u2014 ${s instanceof Error?s.message:s}`)}try{let s=ls(),i=new s(":memory:");i.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),i.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let a=i.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();i.close(),a&&a.content==="hello world"?t.push("- [x] FTS5 / SQLite: PASS \u2014 native module works"):t.push("- [ ] FTS5 / SQLite: FAIL \u2014 unexpected result")}catch(s){t.push(`- [ ] FTS5 / SQLite: FAIL \u2014 ${s instanceof Error?s.message:s}`)}let o=an(e,"hooks","pretooluse.mjs");return xr(o)?t.push(`- [x] Hook script: PASS \u2014 ${o}`):t.push(`- [ ] Hook script: FAIL \u2014 not found at ${o}`),t.push(`- [x] Version: v${Yp}`),U("ctx_doctor",{content:[{type:"text",text:t.join(`
524
+ `)}]})});Be.registerTool("ctx_upgrade",{title:"Upgrade Plugin",description:"Upgrade context-mode to the latest version. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a checklist. Tell the user to restart their session after upgrade.",inputSchema:L.object({})},async()=>{let t=xr(an(cn,"package.json"))?cn:Gp(cn),e=an(t,"cli.bundle.mjs"),r=an(t,"build","cli.js"),n;if(xr(e))n=`node "${e}" upgrade`;else if(xr(r))n=`node "${r}" upgrade`;else{let s="https://github.com/mksglu/context-mode.git",i=["build","hooks","skills","scripts",".claude-plugin"],a=["start.mjs","server.bundle.mjs","cli.bundle.mjs","package.json"],c=['import{execFileSync}from"node:child_process";','import{cpSync,rmSync,existsSync,mkdtempSync}from"node:fs";','import{join}from"node:path";','import{tmpdir}from"node:os";',`const P=${JSON.stringify(t)};`,'const T=mkdtempSync(join(tmpdir(),"ctx-upgrade-"));',"try{",'console.log("- [x] Starting inline upgrade (no CLI found)");',`execFileSync("git",["clone","--depth","1","${s}",T],{stdio:"inherit"});`,'console.log("- [x] Cloned latest source");','execFileSync("npm",["install"],{cwd:T,stdio:"inherit"});','execFileSync("npm",["run","build"],{cwd:T,stdio:"inherit"});','console.log("- [x] Built from source");',...i.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{recursive:true,force:true});`),...a.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{force:true});`),'console.log("- [x] Copied build artifacts");','execFileSync("npm",["install","--production"],{cwd:P,stdio:"inherit"});','console.log("- [x] Installed production dependencies");','console.log("## context-mode upgrade complete");',"}catch(e){",'console.error("- [ ] Upgrade failed:",e.message);',"process.exit(1);","}finally{","try{rmSync(T,{recursive:true,force:true})}catch{}","}"].join(`
525
+ `),u=an(t,".ctx-upgrade-inline.mjs"),{writeFileSync:l}=await import("node:fs");l(u,c),n=`node "${u}"`}let o=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",n,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for success, `[ ]` for failure","- Example format:"," ```"," ## context-mode upgrade"," - [x] Pulled latest from GitHub"," - [x] Built and installed v0.9.24"," - [x] npm global updated"," - [x] Hooks configured"," - [x] Doctor: all checks PASS"," ```","- Tell the user to restart their session to pick up the new version."].join(`
526
+ `);return U("ctx_upgrade",{content:[{type:"text",text:o}]})});async function NI(){let t=up();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=()=>{ks.cleanupBackgrounded(),sn&&sn.close()},r=async()=>{e(),process.exit(0)};process.on("exit",e),process.on("SIGINT",()=>{r()}),process.on("SIGTERM",()=>{r()}),vx({onShutdown:()=>r()});let n=new aa;await Be.connect(n);try{let{detectPlatform:o,getAdapter:s}=await Promise.resolve().then(()=>(Mv(),jv)),i=Be.server.getClientVersion(),a=o(i??void 0);await s(a.platform),i&&console.error(`MCP client: ${i.name} v${i.version} \u2192 ${a.platform}`)}catch{}console.error(`Context Mode MCP server v${Yp} running on stdio`),console.error(`Detected runtimes:
527
+ ${Yy(Ea)}`),ua()||(console.error(`
528
+ Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}NI().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{Fv as extractSnippet,PI as formatBatchQueryResults,$I as positionsFromHighlight};