context-mode 1.0.109 → 1.0.110

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/cli.bundle.mjs CHANGED
@@ -1,24 +1,24 @@
1
1
  #!/usr/bin/env node
2
- var t$=Object.create;var Eu=Object.defineProperty;var r$=Object.getOwnPropertyDescriptor;var n$=Object.getOwnPropertyNames;var o$=Object.getPrototypeOf,s$=Object.prototype.hasOwnProperty;var Rg=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var v=(t,e)=>()=>(t&&(e=t(t=0)),e);var C=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ze=(t,e)=>{for(var r in e)Eu(t,r,{get:e[r],enumerable:!0})},i$=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of n$(e))!s$.call(t,o)&&o!==r&&Eu(t,o,{get:()=>e[o],enumerable:!(n=r$(e,o))||n.enumerable});return t};var fs=(t,e,r)=>(r=t!=null?t$(o$(t)):{},i$(e||!t||!t.__esModule?Eu(r,"default",{value:t,enumerable:!0}):r,t));var Au=C((nL,Zg)=>{"use strict";var Iu={to(t,e){return e?`\x1B[${e+1};${t+1}H`:`\x1B[${t+1}G`},move(t,e){let r="";return t<0?r+=`\x1B[${-t}D`:t>0&&(r+=`\x1B[${t}C`),e<0?r+=`\x1B[${-e}A`:e>0&&(r+=`\x1B[${e}B`),r},up:(t=1)=>`\x1B[${t}A`,down:(t=1)=>`\x1B[${t}B`,forward:(t=1)=>`\x1B[${t}C`,backward:(t=1)=>`\x1B[${t}D`,nextLine:(t=1)=>"\x1B[E".repeat(t),prevLine:(t=1)=>"\x1B[F".repeat(t),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},g$={up:(t=1)=>"\x1B[S".repeat(t),down:(t=1)=>"\x1B[T".repeat(t)},_$={screen:"\x1B[2J",up:(t=1)=>"\x1B[1J".repeat(t),down:(t=1)=>"\x1B[J".repeat(t),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(t){let e="";for(let r=0;r<t;r++)e+=this.line+(r<t-1?Iu.up():"");return t&&(e+=Iu.left),e}};Zg.exports={cursor:Iu,scroll:g$,erase:_$,beep:"\x07"}});var Kg=C((LL,Fu)=>{var Gi=process||{},Wg=Gi.argv||[],Wi=Gi.env||{},Z$=!(Wi.NO_COLOR||Wg.includes("--no-color"))&&(!!Wi.FORCE_COLOR||Wg.includes("--color")||Gi.platform==="win32"||(Gi.stdout||{}).isTTY&&Wi.TERM!=="dumb"||!!Wi.CI),H$=(t,e,r=t)=>n=>{let o=""+n,s=o.indexOf(e,t.length);return~s?t+q$(o,e,r,s)+e:t+o+e},q$=(t,e,r,n)=>{let o="",s=0;do o+=t.substring(s,n)+r,s=n+e.length,n=t.indexOf(e,s);while(~n);return o+t.substring(s)},Gg=(t=Z$)=>{let e=t?H$:()=>String;return{isColorSupported:t,reset:e("\x1B[0m","\x1B[0m"),bold:e("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:e("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:e("\x1B[3m","\x1B[23m"),underline:e("\x1B[4m","\x1B[24m"),inverse:e("\x1B[7m","\x1B[27m"),hidden:e("\x1B[8m","\x1B[28m"),strikethrough:e("\x1B[9m","\x1B[29m"),black:e("\x1B[30m","\x1B[39m"),red:e("\x1B[31m","\x1B[39m"),green:e("\x1B[32m","\x1B[39m"),yellow:e("\x1B[33m","\x1B[39m"),blue:e("\x1B[34m","\x1B[39m"),magenta:e("\x1B[35m","\x1B[39m"),cyan:e("\x1B[36m","\x1B[39m"),white:e("\x1B[37m","\x1B[39m"),gray:e("\x1B[90m","\x1B[39m"),bgBlack:e("\x1B[40m","\x1B[49m"),bgRed:e("\x1B[41m","\x1B[49m"),bgGreen:e("\x1B[42m","\x1B[49m"),bgYellow:e("\x1B[43m","\x1B[49m"),bgBlue:e("\x1B[44m","\x1B[49m"),bgMagenta:e("\x1B[45m","\x1B[49m"),bgCyan:e("\x1B[46m","\x1B[49m"),bgWhite:e("\x1B[47m","\x1B[49m"),blackBright:e("\x1B[90m","\x1B[39m"),redBright:e("\x1B[91m","\x1B[39m"),greenBright:e("\x1B[92m","\x1B[39m"),yellowBright:e("\x1B[93m","\x1B[39m"),blueBright:e("\x1B[94m","\x1B[39m"),magentaBright:e("\x1B[95m","\x1B[39m"),cyanBright:e("\x1B[96m","\x1B[39m"),whiteBright:e("\x1B[97m","\x1B[39m"),bgBlackBright:e("\x1B[100m","\x1B[49m"),bgRedBright:e("\x1B[101m","\x1B[49m"),bgGreenBright:e("\x1B[102m","\x1B[49m"),bgYellowBright:e("\x1B[103m","\x1B[49m"),bgBlueBright:e("\x1B[104m","\x1B[49m"),bgMagentaBright:e("\x1B[105m","\x1B[49m"),bgCyanBright:e("\x1B[106m","\x1B[49m"),bgWhiteBright:e("\x1B[107m","\x1B[49m")}};Fu.exports=Gg();Fu.exports.createColors=Gg});import{execFileSync as B$,execSync as Jg}from"node:child_process";import{existsSync as Ki}from"node:fs";function W$(t){let e=t.split(/[\\/]/),r=e[e.length-1];return V$.test(r)}function Ve(t){try{let e=Uu?`where ${t}`:`command -v ${t}`;return Jg(e,{stdio:"pipe"}),!0}catch{return!1}}function Yg(){if(Ve("bun"))return!0;for(let t of Xg())if(Ki(t))return!0;return!1}function G$(){if(Ve("bun"))return"bun";for(let e of Xg())if(Ki(e))return e;let t=process.env.HOME??process.env.USERPROFILE??"";return Uu?`${t}\\.bun\\bin\\bun.exe`:`${t}/.bun/bin/bun`}function Xg(){let t=process.env.HOME??process.env.USERPROFILE??"";if(Uu){let e=process.env.LOCALAPPDATA??"";return[...t?[`${t}\\.bun\\bin\\bun.exe`]:[],...e?[`${e}\\bun\\bin\\bun.exe`]:[]]}return t?[`${t}/.bun/bin/bun`]:[]}function K$(){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(Ki(e))return e;try{let r=Jg("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 Bt(t,e=["--version"]){try{return B$(t,e,{encoding:"utf-8",shell:process.platform==="win32",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function so(){let e=Yg()?G$():null,r=process.env.SHELL,n=r&&Ki(r)&&W$(r)?r:null,o=process.platform==="win32";return{javascript:e??process.execPath,typescript:e||(Ve("tsx")?"tsx":Ve("ts-node")?"ts-node":null),python:Ve("python3")?"python3":Ve("python")?"python":null,shell:n??(o?K$()??(Ve("sh")?"sh":Ve("powershell")?"powershell":"cmd.exe"):Ve("bash")?"bash":"sh"),ruby:Ve("ruby")?"ruby":null,go:Ve("go")?"go":null,rust:Ve("rustc")?"rustc":null,php:Ve("php")?"php":null,perl:Ve("perl")?"perl":null,r:Ve("Rscript")?"Rscript":Ve("r")?"r":null,elixir:Ve("elixir")?"elixir":null}}function io(){return Yg()}function Ji(t){let e=[],r=t.javascript?.endsWith("bun")??!1;return e.push(` JavaScript: ${t.javascript} (${Bt(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${Bt(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${Bt(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${Bt(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${Bt(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${Bt(t.go,["version"])})`),t.rust&&e.push(` Rust: ${t.rust} (${Bt(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${Bt(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${Bt(t.perl)})`),t.r&&e.push(` R: ${t.r} (${Bt(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${Bt(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
3
- `)}function Yi(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 Qg(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":{if(process.platform==="win32"){let o=t.shell.toLowerCase();if(o.includes("bash")||o.endsWith("/sh")||o.endsWith("\\sh.exe")){let s=r.replace(/'/g,"'\\''");return[t.shell,"-c",`source '${s}'`]}if(o.includes("powershell")||o.includes("pwsh"))return[t.shell,"-File",r]}return[t.shell,r]}case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}var V$,Uu,Xi=v(()=>{"use strict";V$=/^(bash|sh|zsh|dash|pwsh|powershell|cmd)(\.exe)?$/i;Uu=process.platform==="win32"});var e_,t_=v(()=>{"use strict";e_={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot","JetBrains Client":"jetbrains-copilot","IntelliJ IDEA":"jetbrains-copilot",PyCharm:"jetbrains-copilot",Codex:"codex","codex-mcp-client":"codex","Kilo Code":"kilo","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed","qwen-code":"qwen-code","qwen-cli-mcp-client":"qwen-code"}});import{createHash as r_}from"node:crypto";import{join as _s}from"node:path";import{accessSync as J$,copyFileSync as Y$,constants as X$,mkdirSync as Q$}from"node:fs";import{homedir as n_}from"node:os";var Me,Vt=v(()=>{"use strict";Me=class{constructor(e){this.sessionDirSegments=e}getSessionDir(){let e=_s(n_(),...this.sessionDirSegments,"context-mode","sessions");return Q$(e,{recursive:!0}),e}getSessionDBPath(e){let r=r_("sha256").update(e).digest("hex").slice(0,16);return _s(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=r_("sha256").update(e).digest("hex").slice(0,16);return _s(this.getSessionDir(),`${r}-events.md`)}getConfigDir(e){return _s(n_(),...this.sessionDirSegments)}getInstructionFiles(){return["CLAUDE.md"]}getMemoryDir(){return _s(this.getConfigDir(),"memory")}backupSettings(){let e=this.getSettingsPath();try{J$(e,X$.R_OK);let r=e+".bak";return Y$(e,r),r}catch{return null}}}});var ao,Zu=v(()=>{"use strict";Vt();ao=class extends Me{parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{updatedInput:e.updatedInput};if(e.decision==="context"&&e.additionalContext)return{additionalContext:e.additionalContext};if(e.decision==="ask")return{permissionDecision:"ask"}}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),e.updatedOutput&&(r.updatedMCPToolOutput=e.updatedOutput),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}}});function ye(t){let e=process.execPath.replace(/\\/g,"/"),r=t.replace(/\\/g,"/");return`"${e}" "${r}"`}var Sr=v(()=>{"use strict"});function ys(t,e){let r=co[e],n=Hu(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function Hu(t,e){if(e){let r=co[t];return ye(`${e}/hooks/${r}`)}return`context-mode hook claude-code ${t.toLowerCase()}`}function qu(t){let e=t.match(/"[^"]+"\s+"([^"]+\.mjs)"/);return e?e[1]:t.match(/node\s+"?([^"]+\.mjs)"?/)?.[1]??null}function i_(t){let e=Object.values(co);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var Wt,eE,o_,tE,QL,co,s_,e2,a_=v(()=>{"use strict";Sr();Wt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},eE=["Bash","WebFetch","Read","Grep","Agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"],o_=eE.join("|"),tE=["Bash","Read","Write","Edit","NotebookEdit","Glob","Grep","TodoWrite","TaskCreate","TaskUpdate","EnterPlanMode","ExitPlanMode","Skill","Agent","AskUserQuestion","EnterWorktree","mcp__"],QL=tE.join("|"),co={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},s_=[Wt.PRE_TOOL_USE,Wt.SESSION_START],e2=[Wt.POST_TOOL_USE,Wt.PRE_COMPACT,Wt.USER_PROMPT_SUBMIT]});var Vu={};Ze(Vu,{ClaudeCodeAdapter:()=>Bu});import{readFileSync as Qi,writeFileSync as c_,existsSync as rE,readdirSync as nE,chmodSync as oE,accessSync as sE,constants as iE}from"node:fs";import{resolve as pn,join as u_}from"node:path";import{homedir as xs}from"node:os";var Bu,Wu=v(()=>{"use strict";Zu();a_();Bu=class extends ao{constructor(){super([".claude"])}name="Claude Code";paradigm="json-stdio";projectDirEnvVar="CLAUDE_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getSettingsPath(){return pn(xs(),".claude","settings.json")}generateHookConfig(e){let r=`node ${e}/hooks/pretooluse.mjs`;return{PreToolUse:["Bash","WebFetch","Read","Grep","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].map(o=>({matcher:o,hooks:[{type:"command",command:r}]})),PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{let e=Qi(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){c_(this.getSettingsPath(),JSON.stringify(e,null,2)+`
4
- `,"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,Wt.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,Wt.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=[u_(e,"hooks","hooks.json"),u_(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=Qi(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=>ys(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>ys(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=pn(xs(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Qi(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=[pn(xs(),".claude"),pn(xs(),".config","claude")];for(let r of e){let n=pn(r,"plugins","cache","context-mode","context-mode");try{let s=nE(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 p=d;if(!i_(p))return!0;let f=p.hooks??[];return f.every(h=>!h.command||!qu(h.command))?!0:f.every(h=>{let g=h.command?qu(h.command):null;return g?rE(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&&s_.every(c=>this.checkHookType(void 0,s,c))){let c=Object.values(co),u=l=>l!=null&&(c.some(d=>l.includes(d))||l.includes("context-mode hook"));for(let l of Object.keys(n)){let d=n[l];if(!Array.isArray(d))continue;let p=0;for(let m of d){let h=m,g=h.hooks??[],y=g.length;h.hooks=g.filter(_=>!u(_.command)),p+=y-h.hooks.length}let f=d.filter(m=>{let h=m.hooks;return Array.isArray(h)&&h.length>0});(p>0||f.length!==d.length)&&(n[l]=f,p>0&&o.push(`Removed ${p} duplicate ${l} hook(s) \u2014 covered by plugin hooks.json`))}return r.hooks=n,this.writeSettings(r),o.push("Skipped settings.json registration \u2014 plugin hooks.json is sufficient"),o}let i=[Wt.PRE_TOOL_USE,Wt.SESSION_START];for(let a of i){let c=Hu(a,e);if(a===Wt.PRE_TOOL_USE){let u={matcher:o_,hooks:[{type:"command",command:c}]},l=n.PreToolUse;if(l&&Array.isArray(l)){let d=l.findIndex(p=>ys(p,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(p=>ys(p,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n[a]=l}else n[a]=[u],o.push(`Created ${a} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(co)){let o=pn(e,"hooks",n);try{sE(o,iE.R_OK),oE(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=pn(xs(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Qi(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();c_(n,JSON.stringify(o,null,2)+`
5
- `,"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 mn(t,e){let r=Gu[t];return e&&r?ye(`${e}/hooks/${r}`):`context-mode hook gemini-cli ${t.toLowerCase()}`}var ke,Gu,c2,u2,l_=v(()=>{"use strict";Sr();ke={BEFORE_AGENT:"BeforeAgent",BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},Gu={[ke.BEFORE_AGENT]:"beforeagent.mjs",[ke.BEFORE_TOOL]:"beforetool.mjs",[ke.AFTER_TOOL]:"aftertool.mjs",[ke.PRE_COMPRESS]:"precompress.mjs",[ke.SESSION_START]:"sessionstart.mjs"},c2=[ke.BEFORE_TOOL,ke.SESSION_START],u2=[ke.AFTER_TOOL,ke.PRE_COMPRESS]});var p_={};Ze(p_,{GeminiCLIAdapter:()=>Ju});import{readFileSync as Ku,writeFileSync as d_,mkdirSync as aE,accessSync as cE,chmodSync as uE,constants as lE}from"node:fs";import{resolve as vs,join as dE}from"node:path";import{homedir as ea}from"node:os";var Ju,m_=v(()=>{"use strict";Vt();l_();Ju=class extends Me{constructor(){super([".gemini"])}name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return vs(ea(),".gemini","settings.json")}getInstructionFiles(){return["GEMINI.md"]}generateHookConfig(e){return{[ke.BEFORE_AGENT]:[{matcher:"",hooks:[{type:"command",command:mn(ke.BEFORE_AGENT,e)}]}],[ke.BEFORE_TOOL]:[{matcher:"run_shell_command|read_file|read_many_files|grep_search|search_file_content|web_fetch|activate_skill|mcp__plugin_context-mode",hooks:[{type:"command",command:mn(ke.BEFORE_TOOL,e)}]}],[ke.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:mn(ke.AFTER_TOOL,e)}]}],[ke.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:mn(ke.PRE_COMPRESS,e)}]}],[ke.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:mn(ke.SESSION_START,e)}]}]}}readSettings(){try{let e=Ku(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=vs(ea(),".gemini");aE(r,{recursive:!0}),d_(this.getSettingsPath(),JSON.stringify(e,null,2)+`
6
- `,"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=vs(ea(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(Ku(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_AGENT},{name:ke.BEFORE_TOOL},{name:ke.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:mn(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}setHookPermissions(e){let r=[],n=dE(e,"hooks","gemini-cli");for(let o of Object.values(Gu)){let s=vs(n,o);try{cE(s,lE.R_OK),uE(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=vs(ea(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(Ku(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),d_(n,JSON.stringify(o,null,2)+`
7
- `,"utf-8")}catch{}}getProjectDir(e){return e.cwd??process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR??process.cwd()}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var fn,g2,_2,f_=v(()=>{"use strict";fn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},g2=[fn.BEFORE,fn.AFTER],_2=[fn.COMPACTING]});var g_={};Ze(g_,{OpenCodeAdapter:()=>Yu});import{readFileSync as h_,writeFileSync as mE,mkdirSync as fE,copyFileSync as hE,accessSync as gE,constants as _E}from"node:fs";import{resolve as Et,join as Zr}from"node:path";import{homedir as Hr}from"node:os";function pE(t){return t.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/,(\s*[}\]])/g,"$1")}var Yu,__=v(()=>{"use strict";Vt();f_();Yu=class extends Me{get name(){return this.platform==="kilo"?"KiloCode":"OpenCode"}paradigm="ts-plugin";settingsPath;capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};platform;constructor(e="opencode"){super([".config",e]),this.platform=e}parsePreToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},toolOutput:r.output,isError:void 0,sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")throw new Error(e.reason??"Blocked by context-mode hook");if(e.decision==="modify"&&e.updatedInput)return{args:e.updatedInput};if(e.decision==="ask")throw new Error(e.reason??"Action requires user confirmation (security policy)")}formatPostToolUseResponse(e){let r={};return e.updatedOutput&&(r.output=e.updatedOutput),e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return this.settingsPath??Et(`${this.platform}.json`)}paths(){return this.platform==="kilo"?[Et("kilo.json"),Et("kilo.jsonc"),Et(".kilo","kilo.json"),Et(".kilo","kilo.jsonc"),Et(".kilocode","kilo.json"),Et(".kilocode","kilo.jsonc"),Zr(Hr(),".config","kilo","kilo.json"),Zr(Hr(),".config","kilo","kilo.jsonc")]:[Et("opencode.json"),Et("opencode.jsonc"),Et(".opencode","opencode.json"),Et(".opencode","opencode.jsonc"),Zr(Hr(),".config","opencode","opencode.json"),Zr(Hr(),".config","opencode","opencode.jsonc")]}getSessionDir(){let e=Zr(this.getConfigDir(),"context-mode","sessions");return fE(e,{recursive:!0}),e}getConfigDir(e){let r;return process.platform==="win32"?r=process.env.APPDATA||Zr(Hr(),"AppData","Roaming"):r=process.env.XDG_CONFIG_HOME||Zr(Hr(),".config"),Zr(r,this.platform)}getInstructionFiles(){return["AGENTS.md"]}generateHookConfig(e){return{[fn.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[fn.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[fn.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){this.settingsPath=void 0;let e=this.paths(),r=new Set(e.filter(s=>s.includes(Hr()))),n=null,o;for(let s of e)try{let i=h_(s,"utf-8"),a=s.endsWith(".jsonc")?pE(i):i,c=JSON.parse(a);n||(n=c,o=s);let u=r.has(s);if(this.hasContextModePlugin(c)||u)return this.settingsPath=s,c}catch{continue}return n?(this.settingsPath=o,n):null}writeSettings(e){mE(this.getSettingsPath(),JSON.stringify(e,null,2)+`
8
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r;let o=this.hasContextModePlugin(n);return Array.isArray(n.plugin)?r.push({check:"Plugin registration",status:o?"pass":"fail",message:o?"context-mode found in plugin array":"context-mode not found in plugin array",fix:o?void 0:"context-mode upgrade"}):r.push({check:"Plugin registration",status:"fail",message:`No plugin array found in ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r.push({check:"SessionStart hook",status:"pass",message:"SessionStart via experimental.chat.system.transform surrogate (native hook pending #14808, #5409)"}),r}checkPluginRegistration(){let e=this.readSettings();return e?this.hasContextModePlugin(e)?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:`context-mode not found in ${this.platform}.json plugin array`,fix:"context-mode upgrade"}:{check:"Plugin registration",status:"warn",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`}}getInstalledVersion(){try{let e=Et(Hr(),".cache",this.platform,"node_modules","context-mode","package.json"),r=JSON.parse(h_(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];return o.some(s=>s.includes("context-mode"))?n.push("context-mode already in plugin array"):(o.push("context-mode"),n.push("Added context-mode to plugin array")),r.plugin=o,this.writeSettings(r),n}backupSettings(){let e=this.checkPluginRegistration();if(!this.settingsPath)return null;if(e.status==="pass")return this.settingsPath;try{gE(this.settingsPath,_E.R_OK);let r=this.settingsPath+".bak";return hE(this.settingsPath,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}hasContextModePlugin(e){let r=e.plugin;return Array.isArray(r)&&r.some(n=>typeof n=="string"&&n.includes("context-mode"))}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var hn,w2,$2,y_=v(()=>{"use strict";hn={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},w2=[hn.TOOL_CALL_BEFORE,hn.TOOL_CALL_AFTER],$2=[hn.COMMAND_NEW]});var x_={};Ze(x_,{OpenClawAdapter:()=>tl});import{readFileSync as Xu,writeFileSync as yE,copyFileSync as xE,accessSync as vE,constants as bE}from"node:fs";import{resolve as kr,join as Qu}from"node:path";import{homedir as el}from"node:os";var tl,v_=v(()=>{"use strict";Vt();y_();tl=class extends Me{constructor(){super([".openclaw"])}name="OpenClaw";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},toolOutput:r.output??r.tool_output,isError:r.isError??r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{block:!0,blockReason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{params:e.updatedInput};if(e.decision==="ask")return{block:!0,blockReason:e.reason??"Action requires user confirmation (security policy)"};e.decision==="context"&&e.additionalContext}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return kr("openclaw.json")}getConfigDir(e){return kr(e??process.cwd())}getInstructionFiles(){return["AGENTS.md"]}getMemoryDir(){return Qu(this.getConfigDir(),"memory")}generateHookConfig(e){return{[hn.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[hn.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[hn.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[kr("openclaw.json"),kr(".openclaw","openclaw.json"),Qu(el(),".openclaw","openclaw.json")];for(let r of e)try{let n=Xu(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=kr("openclaw.json");yE(r,JSON.stringify(e,null,2)+`
9
- `,"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=kr(el(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Xu(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=kr("node_modules","context-mode","package.json"),r=JSON.parse(Xu(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=[kr("openclaw.json"),kr(".openclaw","openclaw.json"),Qu(el(),".openclaw","openclaw.json")];for(let r of e)try{vE(r,bE.R_OK);let n=r+".bak";return xE(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getProjectDir(e){return e.cwd??process.env.OPENCLAW_PROJECT_DIR??process.cwd()}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var S_={};Ze(S_,{CodexAdapter:()=>ol});import{readFileSync as rl}from"node:fs";import{resolve as nl,dirname as SE}from"node:path";import{fileURLToPath as kE}from"node:url";import{homedir as b_}from"node:os";var ol,k_=v(()=>{"use strict";Vt();Sr();ol=class extends Me{constructor(){super([".codex"])}name="Codex CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!0,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_response,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{hookSpecificOutput:{hookEventName:"PreToolUse",permissionDecision:"deny",permissionDecisionReason:e.reason??"Blocked by context-mode hook"}}:e.decision==="context"&&e.additionalContext?{}:{}}formatPostToolUseResponse(e){return e.additionalContext?{hookSpecificOutput:{hookEventName:"PostToolUse",additionalContext:e.additionalContext}}:{}}formatPreCompactResponse(e){return e.context?{hookSpecificOutput:{additionalContext:e.context}}:{}}formatSessionStartResponse(e){return e.context?{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:e.context}}:{}}getSettingsPath(){return nl(b_(),".codex","config.toml")}getInstructionFiles(){return["AGENTS.md","AGENTS.override.md"]}getMemoryDir(){return nl(b_(),".codex","memories")}generateHookConfig(e){return{PreToolUse:[{matcher:"local_shell|shell|shell_command|exec_command|container.exec|Bash|Shell|grep_files|mcp__plugin_context-mode_context-mode__ctx_execute|mcp__plugin_context-mode_context-mode__ctx_execute_file|mcp__plugin_context-mode_context-mode__ctx_batch_execute",hooks:[{type:"command",command:ye(`${e}/hooks/pretooluse.mjs`)}]}],PostToolUse:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/posttooluse.mjs`)}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/sessionstart.mjs`)}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/codex/userpromptsubmit.mjs`)}]}],Stop:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/codex/stop.mjs`)}]}]}}readSettings(){try{return{_raw_toml:rl(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){return[{check:"Hook support",status:"pass",message:"Codex CLI hooks are stable. Configure ~/.codex/hooks.json for PreToolUse, PostToolUse, SessionStart, UserPromptSubmit, and Stop."}]}checkPluginRegistration(){try{let e=rl(this.getSettingsPath(),"utf-8"),r=e.includes("context-mode"),n=e.includes("[mcp_servers]")||e.includes("[mcp_servers.");return r&&n?{check:"MCP registration",status:"pass",message:"context-mode found in [mcp_servers] config"}:n?{check:"MCP registration",status:"fail",message:"[mcp_servers] section exists but context-mode not found",fix:"Add context-mode to [mcp_servers] in ~/.codex/config.toml"}:{check:"MCP registration",status:"fail",message:"No [mcp_servers] section in config.toml",fix:"Add [mcp_servers.context-mode] to ~/.codex/config.toml"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.codex/config.toml"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=nl(SE(kE(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return rl(e,"utf-8")}catch{return`# context-mode
2
+ var t$=Object.create;var Eu=Object.defineProperty;var r$=Object.getOwnPropertyDescriptor;var n$=Object.getOwnPropertyNames;var o$=Object.getPrototypeOf,s$=Object.prototype.hasOwnProperty;var Cg=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var v=(t,e)=>()=>(t&&(e=t(t=0)),e);var C=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ze=(t,e)=>{for(var r in e)Eu(t,r,{get:e[r],enumerable:!0})},i$=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of n$(e))!s$.call(t,o)&&o!==r&&Eu(t,o,{get:()=>e[o],enumerable:!(n=r$(e,o))||n.enumerable});return t};var fs=(t,e,r)=>(r=t!=null?t$(o$(t)):{},i$(e||!t||!t.__esModule?Eu(r,"default",{value:t,enumerable:!0}):r,t));var Au=C((nL,Hg)=>{"use strict";var Iu={to(t,e){return e?`\x1B[${e+1};${t+1}H`:`\x1B[${t+1}G`},move(t,e){let r="";return t<0?r+=`\x1B[${-t}D`:t>0&&(r+=`\x1B[${t}C`),e<0?r+=`\x1B[${-e}A`:e>0&&(r+=`\x1B[${e}B`),r},up:(t=1)=>`\x1B[${t}A`,down:(t=1)=>`\x1B[${t}B`,forward:(t=1)=>`\x1B[${t}C`,backward:(t=1)=>`\x1B[${t}D`,nextLine:(t=1)=>"\x1B[E".repeat(t),prevLine:(t=1)=>"\x1B[F".repeat(t),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},g$={up:(t=1)=>"\x1B[S".repeat(t),down:(t=1)=>"\x1B[T".repeat(t)},_$={screen:"\x1B[2J",up:(t=1)=>"\x1B[1J".repeat(t),down:(t=1)=>"\x1B[J".repeat(t),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(t){let e="";for(let r=0;r<t;r++)e+=this.line+(r<t-1?Iu.up():"");return t&&(e+=Iu.left),e}};Hg.exports={cursor:Iu,scroll:g$,erase:_$,beep:"\x07"}});var Jg=C((LL,Fu)=>{var Wi=process||{},Gg=Wi.argv||[],Vi=Wi.env||{},Z$=!(Vi.NO_COLOR||Gg.includes("--no-color"))&&(!!Vi.FORCE_COLOR||Gg.includes("--color")||Wi.platform==="win32"||(Wi.stdout||{}).isTTY&&Vi.TERM!=="dumb"||!!Vi.CI),H$=(t,e,r=t)=>n=>{let o=""+n,s=o.indexOf(e,t.length);return~s?t+q$(o,e,r,s)+e:t+o+e},q$=(t,e,r,n)=>{let o="",s=0;do o+=t.substring(s,n)+r,s=n+e.length,n=t.indexOf(e,s);while(~n);return o+t.substring(s)},Kg=(t=Z$)=>{let e=t?H$:()=>String;return{isColorSupported:t,reset:e("\x1B[0m","\x1B[0m"),bold:e("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:e("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:e("\x1B[3m","\x1B[23m"),underline:e("\x1B[4m","\x1B[24m"),inverse:e("\x1B[7m","\x1B[27m"),hidden:e("\x1B[8m","\x1B[28m"),strikethrough:e("\x1B[9m","\x1B[29m"),black:e("\x1B[30m","\x1B[39m"),red:e("\x1B[31m","\x1B[39m"),green:e("\x1B[32m","\x1B[39m"),yellow:e("\x1B[33m","\x1B[39m"),blue:e("\x1B[34m","\x1B[39m"),magenta:e("\x1B[35m","\x1B[39m"),cyan:e("\x1B[36m","\x1B[39m"),white:e("\x1B[37m","\x1B[39m"),gray:e("\x1B[90m","\x1B[39m"),bgBlack:e("\x1B[40m","\x1B[49m"),bgRed:e("\x1B[41m","\x1B[49m"),bgGreen:e("\x1B[42m","\x1B[49m"),bgYellow:e("\x1B[43m","\x1B[49m"),bgBlue:e("\x1B[44m","\x1B[49m"),bgMagenta:e("\x1B[45m","\x1B[49m"),bgCyan:e("\x1B[46m","\x1B[49m"),bgWhite:e("\x1B[47m","\x1B[49m"),blackBright:e("\x1B[90m","\x1B[39m"),redBright:e("\x1B[91m","\x1B[39m"),greenBright:e("\x1B[92m","\x1B[39m"),yellowBright:e("\x1B[93m","\x1B[39m"),blueBright:e("\x1B[94m","\x1B[39m"),magentaBright:e("\x1B[95m","\x1B[39m"),cyanBright:e("\x1B[96m","\x1B[39m"),whiteBright:e("\x1B[97m","\x1B[39m"),bgBlackBright:e("\x1B[100m","\x1B[49m"),bgRedBright:e("\x1B[101m","\x1B[49m"),bgGreenBright:e("\x1B[102m","\x1B[49m"),bgYellowBright:e("\x1B[103m","\x1B[49m"),bgBlueBright:e("\x1B[104m","\x1B[49m"),bgMagentaBright:e("\x1B[105m","\x1B[49m"),bgCyanBright:e("\x1B[106m","\x1B[49m"),bgWhiteBright:e("\x1B[107m","\x1B[49m")}};Fu.exports=Kg();Fu.exports.createColors=Kg});import{execFileSync as B$,execSync as Yg}from"node:child_process";import{existsSync as Gi}from"node:fs";function W$(t){let e=t.split(/[\\/]/),r=e[e.length-1];return V$.test(r)}function Ve(t){try{let e=Uu?`where ${t}`:`command -v ${t}`;return Yg(e,{stdio:"pipe"}),!0}catch{return!1}}function Xg(){if(Ve("bun"))return!0;for(let t of Qg())if(Gi(t))return!0;return!1}function G$(){if(Ve("bun"))return"bun";for(let e of Qg())if(Gi(e))return e;let t=process.env.HOME??process.env.USERPROFILE??"";return Uu?`${t}\\.bun\\bin\\bun.exe`:`${t}/.bun/bin/bun`}function Qg(){let t=process.env.HOME??process.env.USERPROFILE??"";if(Uu){let e=process.env.LOCALAPPDATA??"";return[...t?[`${t}\\.bun\\bin\\bun.exe`]:[],...e?[`${e}\\bun\\bin\\bun.exe`]:[]]}return t?[`${t}/.bun/bin/bun`]:[]}function K$(){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(Gi(e))return e;try{let r=Yg("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 Bt(t,e=["--version"]){try{return B$(t,e,{encoding:"utf-8",shell:process.platform==="win32",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function so(){let e=Xg()?G$():null,r=process.env.SHELL,n=r&&Gi(r)&&W$(r)?r:null,o=process.platform==="win32";return{javascript:e??process.execPath,typescript:e||(Ve("tsx")?"tsx":Ve("ts-node")?"ts-node":null),python:Ve("python3")?"python3":Ve("python")?"python":null,shell:n??(o?K$()??(Ve("sh")?"sh":Ve("powershell")?"powershell":"cmd.exe"):Ve("bash")?"bash":"sh"),ruby:Ve("ruby")?"ruby":null,go:Ve("go")?"go":null,rust:Ve("rustc")?"rustc":null,php:Ve("php")?"php":null,perl:Ve("perl")?"perl":null,r:Ve("Rscript")?"Rscript":Ve("r")?"r":null,elixir:Ve("elixir")?"elixir":null}}function io(){return Xg()}function Ki(t){let e=[],r=t.javascript?.endsWith("bun")??!1;return e.push(` JavaScript: ${t.javascript} (${Bt(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${Bt(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${Bt(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${Bt(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${Bt(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${Bt(t.go,["version"])})`),t.rust&&e.push(` Rust: ${t.rust} (${Bt(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${Bt(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${Bt(t.perl)})`),t.r&&e.push(` R: ${t.r} (${Bt(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${Bt(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
3
+ `)}function Ji(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 e_(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":{if(process.platform==="win32"){let o=t.shell.toLowerCase();if(o.includes("bash")||o.endsWith("/sh")||o.endsWith("\\sh.exe")){let s=r.replace(/'/g,"'\\''");return[t.shell,"-c",`source '${s}'`]}if(o.includes("powershell")||o.includes("pwsh"))return[t.shell,"-File",r]}return[t.shell,r]}case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}var V$,Uu,Yi=v(()=>{"use strict";V$=/^(bash|sh|zsh|dash|pwsh|powershell|cmd)(\.exe)?$/i;Uu=process.platform==="win32"});var t_,r_=v(()=>{"use strict";t_={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot","JetBrains Client":"jetbrains-copilot","IntelliJ IDEA":"jetbrains-copilot",PyCharm:"jetbrains-copilot",Codex:"codex","codex-mcp-client":"codex","Kilo Code":"kilo","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed","qwen-code":"qwen-code","qwen-cli-mcp-client":"qwen-code"}});import{createHash as n_}from"node:crypto";import{join as _s}from"node:path";import{accessSync as J$,copyFileSync as Y$,constants as X$,mkdirSync as Q$}from"node:fs";import{homedir as o_}from"node:os";var Me,Vt=v(()=>{"use strict";Me=class{constructor(e){this.sessionDirSegments=e}getSessionDir(){let e=_s(o_(),...this.sessionDirSegments,"context-mode","sessions");return Q$(e,{recursive:!0}),e}getSessionDBPath(e){let r=n_("sha256").update(e).digest("hex").slice(0,16);return _s(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=n_("sha256").update(e).digest("hex").slice(0,16);return _s(this.getSessionDir(),`${r}-events.md`)}getConfigDir(e){return _s(o_(),...this.sessionDirSegments)}getInstructionFiles(){return["CLAUDE.md"]}getMemoryDir(){return _s(this.getConfigDir(),"memory")}backupSettings(){let e=this.getSettingsPath();try{J$(e,X$.R_OK);let r=e+".bak";return Y$(e,r),r}catch{return null}}}});var ao,Zu=v(()=>{"use strict";Vt();ao=class extends Me{parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{updatedInput:e.updatedInput};if(e.decision==="context"&&e.additionalContext)return{additionalContext:e.additionalContext};if(e.decision==="ask")return{permissionDecision:"ask"}}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),e.updatedOutput&&(r.updatedMCPToolOutput=e.updatedOutput),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}}});function ye(t){let e=process.execPath.replace(/\\/g,"/"),r=t.replace(/\\/g,"/");return`"${e}" "${r}"`}var Sr=v(()=>{"use strict"});function ys(t,e){let r=co[e],n=Hu(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function Hu(t,e){if(e){let r=co[t];return ye(`${e}/hooks/${r}`)}return`context-mode hook claude-code ${t.toLowerCase()}`}function qu(t){let e=t.match(/"[^"]+"\s+"([^"]+\.mjs)"/);return e?e[1]:t.match(/node\s+"?([^"]+\.mjs)"?/)?.[1]??null}function a_(t){let e=Object.values(co);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var Wt,eE,s_,tE,QL,co,i_,e2,c_=v(()=>{"use strict";Sr();Wt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},eE=["Bash","WebFetch","Read","Grep","Agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"],s_=eE.join("|"),tE=["Bash","Read","Write","Edit","NotebookEdit","Glob","Grep","TodoWrite","TaskCreate","TaskUpdate","EnterPlanMode","ExitPlanMode","Skill","Agent","AskUserQuestion","EnterWorktree","mcp__"],QL=tE.join("|"),co={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},i_=[Wt.PRE_TOOL_USE,Wt.SESSION_START],e2=[Wt.POST_TOOL_USE,Wt.PRE_COMPACT,Wt.USER_PROMPT_SUBMIT]});var Vu={};Ze(Vu,{ClaudeCodeAdapter:()=>Bu});import{readFileSync as Xi,writeFileSync as u_,existsSync as rE,readdirSync as nE,chmodSync as oE,accessSync as sE,constants as iE}from"node:fs";import{resolve as pn,join as l_}from"node:path";import{homedir as xs}from"node:os";var Bu,Wu=v(()=>{"use strict";Zu();c_();Bu=class extends ao{constructor(){super([".claude"])}name="Claude Code";paradigm="json-stdio";projectDirEnvVar="CLAUDE_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getSettingsPath(){return pn(xs(),".claude","settings.json")}generateHookConfig(e){let r=`node ${e}/hooks/pretooluse.mjs`;return{PreToolUse:["Bash","WebFetch","Read","Grep","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].map(o=>({matcher:o,hooks:[{type:"command",command:r}]})),PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{let e=Xi(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){u_(this.getSettingsPath(),JSON.stringify(e,null,2)+`
4
+ `,"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,Wt.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,Wt.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=[l_(e,"hooks","hooks.json"),l_(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=Xi(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=>ys(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>ys(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=pn(xs(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Xi(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=[pn(xs(),".claude"),pn(xs(),".config","claude")];for(let r of e){let n=pn(r,"plugins","cache","context-mode","context-mode");try{let s=nE(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 p=d;if(!a_(p))return!0;let f=p.hooks??[];return f.every(h=>!h.command||!qu(h.command))?!0:f.every(h=>{let g=h.command?qu(h.command):null;return g?rE(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&&i_.every(c=>this.checkHookType(void 0,s,c))){let c=Object.values(co),u=l=>l!=null&&(c.some(d=>l.includes(d))||l.includes("context-mode hook"));for(let l of Object.keys(n)){let d=n[l];if(!Array.isArray(d))continue;let p=0;for(let m of d){let h=m,g=h.hooks??[],y=g.length;h.hooks=g.filter(_=>!u(_.command)),p+=y-h.hooks.length}let f=d.filter(m=>{let h=m.hooks;return Array.isArray(h)&&h.length>0});(p>0||f.length!==d.length)&&(n[l]=f,p>0&&o.push(`Removed ${p} duplicate ${l} hook(s) \u2014 covered by plugin hooks.json`))}return r.hooks=n,this.writeSettings(r),o.push("Skipped settings.json registration \u2014 plugin hooks.json is sufficient"),o}let i=[Wt.PRE_TOOL_USE,Wt.SESSION_START];for(let a of i){let c=Hu(a,e);if(a===Wt.PRE_TOOL_USE){let u={matcher:s_,hooks:[{type:"command",command:c}]},l=n.PreToolUse;if(l&&Array.isArray(l)){let d=l.findIndex(p=>ys(p,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(p=>ys(p,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n[a]=l}else n[a]=[u],o.push(`Created ${a} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(co)){let o=pn(e,"hooks",n);try{sE(o,iE.R_OK),oE(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=pn(xs(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Xi(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();u_(n,JSON.stringify(o,null,2)+`
5
+ `,"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 mn(t,e){let r=Gu[t];return e&&r?ye(`${e}/hooks/${r}`):`context-mode hook gemini-cli ${t.toLowerCase()}`}var we,Gu,c2,u2,d_=v(()=>{"use strict";Sr();we={BEFORE_AGENT:"BeforeAgent",BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},Gu={[we.BEFORE_AGENT]:"beforeagent.mjs",[we.BEFORE_TOOL]:"beforetool.mjs",[we.AFTER_TOOL]:"aftertool.mjs",[we.PRE_COMPRESS]:"precompress.mjs",[we.SESSION_START]:"sessionstart.mjs"},c2=[we.BEFORE_TOOL,we.SESSION_START],u2=[we.AFTER_TOOL,we.PRE_COMPRESS]});var m_={};Ze(m_,{GeminiCLIAdapter:()=>Ju});import{readFileSync as Ku,writeFileSync as p_,mkdirSync as aE,accessSync as cE,chmodSync as uE,constants as lE}from"node:fs";import{resolve as vs,join as dE}from"node:path";import{homedir as Qi}from"node:os";var Ju,f_=v(()=>{"use strict";Vt();d_();Ju=class extends Me{constructor(){super([".gemini"])}name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return vs(Qi(),".gemini","settings.json")}getInstructionFiles(){return["GEMINI.md"]}generateHookConfig(e){return{[we.BEFORE_AGENT]:[{matcher:"",hooks:[{type:"command",command:mn(we.BEFORE_AGENT,e)}]}],[we.BEFORE_TOOL]:[{matcher:"run_shell_command|read_file|read_many_files|grep_search|search_file_content|web_fetch|activate_skill|mcp__plugin_context-mode",hooks:[{type:"command",command:mn(we.BEFORE_TOOL,e)}]}],[we.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:mn(we.AFTER_TOOL,e)}]}],[we.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:mn(we.PRE_COMPRESS,e)}]}],[we.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:mn(we.SESSION_START,e)}]}]}}readSettings(){try{let e=Ku(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=vs(Qi(),".gemini");aE(r,{recursive:!0}),p_(this.getSettingsPath(),JSON.stringify(e,null,2)+`
6
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"BeforeTool hook",status:"fail",message:"Could not read ~/.gemini/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=o?.[we.BEFORE_TOOL];if(s&&s.length>0){let a=s.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"BeforeTool hook",status:a?"pass":"fail",message:a?"BeforeTool hook configured":"BeforeTool exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"BeforeTool hook",status:"fail",message:"No BeforeTool hooks found",fix:"context-mode upgrade"});let i=o?.[we.SESSION_START];if(i&&i.length>0){let a=i.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"SessionStart exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"SessionStart hook",status:"fail",message:"No SessionStart hooks found",fix:"context-mode upgrade"});return r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read ~/.gemini/settings.json"};let r=e.extensions;return r&&(Array.isArray(r)?r.some(o=>typeof o=="string"&&o.includes("context-mode")):Object.keys(r).some(o=>o.includes("context-mode")))?{check:"Plugin registration",status:"pass",message:"context-mode found in extensions"}:{check:"Plugin registration",status:"warn",message:"context-mode not found in extensions (might be using standalone MCP mode)"}}getInstalledVersion(){try{let e=vs(Qi(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(Ku(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[],s=[{name:we.BEFORE_AGENT},{name:we.BEFORE_TOOL},{name:we.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:mn(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}setHookPermissions(e){let r=[],n=dE(e,"hooks","gemini-cli");for(let o of Object.values(Gu)){let s=vs(n,o);try{cE(s,lE.R_OK),uE(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=vs(Qi(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(Ku(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),p_(n,JSON.stringify(o,null,2)+`
7
+ `,"utf-8")}catch{}}getProjectDir(e){return e.cwd??process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR??process.cwd()}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var fn,g2,_2,h_=v(()=>{"use strict";fn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},g2=[fn.BEFORE,fn.AFTER],_2=[fn.COMPACTING]});var __={};Ze(__,{OpenCodeAdapter:()=>Yu});import{readFileSync as g_,writeFileSync as mE,mkdirSync as fE,copyFileSync as hE,accessSync as gE,constants as _E}from"node:fs";import{resolve as Tt,join as Zr}from"node:path";import{homedir as Hr}from"node:os";function pE(t){return t.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/,(\s*[}\]])/g,"$1")}var Yu,y_=v(()=>{"use strict";Vt();h_();Yu=class extends Me{get name(){return this.platform==="kilo"?"KiloCode":"OpenCode"}paradigm="ts-plugin";settingsPath;capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};platform;constructor(e="opencode"){super([".config",e]),this.platform=e}parsePreToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},toolOutput:r.output,isError:void 0,sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")throw new Error(e.reason??"Blocked by context-mode hook");if(e.decision==="modify"&&e.updatedInput)return{args:e.updatedInput};if(e.decision==="ask")throw new Error(e.reason??"Action requires user confirmation (security policy)")}formatPostToolUseResponse(e){let r={};return e.updatedOutput&&(r.output=e.updatedOutput),e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return this.settingsPath??Tt(`${this.platform}.json`)}paths(){return this.platform==="kilo"?[Tt("kilo.json"),Tt("kilo.jsonc"),Tt(".kilo","kilo.json"),Tt(".kilo","kilo.jsonc"),Tt(".kilocode","kilo.json"),Tt(".kilocode","kilo.jsonc"),Zr(Hr(),".config","kilo","kilo.json"),Zr(Hr(),".config","kilo","kilo.jsonc")]:[Tt("opencode.json"),Tt("opencode.jsonc"),Tt(".opencode","opencode.json"),Tt(".opencode","opencode.jsonc"),Zr(Hr(),".config","opencode","opencode.json"),Zr(Hr(),".config","opencode","opencode.jsonc")]}getSessionDir(){let e=Zr(this.getConfigDir(),"context-mode","sessions");return fE(e,{recursive:!0}),e}getConfigDir(e){let r;return process.platform==="win32"?r=process.env.APPDATA||Zr(Hr(),"AppData","Roaming"):r=process.env.XDG_CONFIG_HOME||Zr(Hr(),".config"),Zr(r,this.platform)}getInstructionFiles(){return["AGENTS.md"]}generateHookConfig(e){return{[fn.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[fn.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[fn.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){this.settingsPath=void 0;let e=this.paths(),r=new Set(e.filter(s=>s.includes(Hr()))),n=null,o;for(let s of e)try{let i=g_(s,"utf-8"),a=s.endsWith(".jsonc")?pE(i):i,c=JSON.parse(a);n||(n=c,o=s);let u=r.has(s);if(this.hasContextModePlugin(c)||u)return this.settingsPath=s,c}catch{continue}return n?(this.settingsPath=o,n):null}writeSettings(e){mE(this.getSettingsPath(),JSON.stringify(e,null,2)+`
8
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r;let o=this.hasContextModePlugin(n);return Array.isArray(n.plugin)?r.push({check:"Plugin registration",status:o?"pass":"fail",message:o?"context-mode found in plugin array":"context-mode not found in plugin array",fix:o?void 0:"context-mode upgrade"}):r.push({check:"Plugin registration",status:"fail",message:`No plugin array found in ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r.push({check:"SessionStart hook",status:"pass",message:"SessionStart via experimental.chat.system.transform surrogate (native hook pending #14808, #5409)"}),r}checkPluginRegistration(){let e=this.readSettings();return e?this.hasContextModePlugin(e)?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:`context-mode not found in ${this.platform}.json plugin array`,fix:"context-mode upgrade"}:{check:"Plugin registration",status:"warn",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`}}getInstalledVersion(){try{let e=Tt(Hr(),".cache",this.platform,"node_modules","context-mode","package.json"),r=JSON.parse(g_(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];return o.some(s=>s.includes("context-mode"))?n.push("context-mode already in plugin array"):(o.push("context-mode"),n.push("Added context-mode to plugin array")),r.plugin=o,this.writeSettings(r),n}backupSettings(){let e=this.checkPluginRegistration();if(!this.settingsPath)return null;if(e.status==="pass")return this.settingsPath;try{gE(this.settingsPath,_E.R_OK);let r=this.settingsPath+".bak";return hE(this.settingsPath,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}hasContextModePlugin(e){let r=e.plugin;return Array.isArray(r)&&r.some(n=>typeof n=="string"&&n.includes("context-mode"))}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var hn,w2,$2,x_=v(()=>{"use strict";hn={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},w2=[hn.TOOL_CALL_BEFORE,hn.TOOL_CALL_AFTER],$2=[hn.COMMAND_NEW]});var v_={};Ze(v_,{OpenClawAdapter:()=>tl});import{readFileSync as Xu,writeFileSync as yE,copyFileSync as xE,accessSync as vE,constants as bE}from"node:fs";import{resolve as kr,join as Qu}from"node:path";import{homedir as el}from"node:os";var tl,b_=v(()=>{"use strict";Vt();x_();tl=class extends Me{constructor(){super([".openclaw"])}name="OpenClaw";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},toolOutput:r.output??r.tool_output,isError:r.isError??r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{block:!0,blockReason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{params:e.updatedInput};if(e.decision==="ask")return{block:!0,blockReason:e.reason??"Action requires user confirmation (security policy)"};e.decision==="context"&&e.additionalContext}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return kr("openclaw.json")}getConfigDir(e){return kr(e??process.cwd())}getInstructionFiles(){return["AGENTS.md"]}getMemoryDir(){return Qu(this.getConfigDir(),"memory")}generateHookConfig(e){return{[hn.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[hn.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[hn.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[kr("openclaw.json"),kr(".openclaw","openclaw.json"),Qu(el(),".openclaw","openclaw.json")];for(let r of e)try{let n=Xu(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=kr("openclaw.json");yE(r,JSON.stringify(e,null,2)+`
9
+ `,"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=kr(el(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Xu(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=kr("node_modules","context-mode","package.json"),r=JSON.parse(Xu(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=[kr("openclaw.json"),kr(".openclaw","openclaw.json"),Qu(el(),".openclaw","openclaw.json")];for(let r of e)try{vE(r,bE.R_OK);let n=r+".bak";return xE(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getProjectDir(e){return e.cwd??process.env.OPENCLAW_PROJECT_DIR??process.cwd()}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var k_={};Ze(k_,{CodexAdapter:()=>ol});import{readFileSync as rl}from"node:fs";import{resolve as nl,dirname as SE}from"node:path";import{fileURLToPath as kE}from"node:url";import{homedir as S_}from"node:os";var ol,w_=v(()=>{"use strict";Vt();Sr();ol=class extends Me{constructor(){super([".codex"])}name="Codex CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!0,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_response,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{hookSpecificOutput:{hookEventName:"PreToolUse",permissionDecision:"deny",permissionDecisionReason:e.reason??"Blocked by context-mode hook"}}:e.decision==="context"&&e.additionalContext?{}:{}}formatPostToolUseResponse(e){return e.additionalContext?{hookSpecificOutput:{hookEventName:"PostToolUse",additionalContext:e.additionalContext}}:{}}formatPreCompactResponse(e){return e.context?{hookSpecificOutput:{additionalContext:e.context}}:{}}formatSessionStartResponse(e){return e.context?{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:e.context}}:{}}getSettingsPath(){return nl(S_(),".codex","config.toml")}getInstructionFiles(){return["AGENTS.md","AGENTS.override.md"]}getMemoryDir(){return nl(S_(),".codex","memories")}generateHookConfig(e){return{PreToolUse:[{matcher:"local_shell|shell|shell_command|exec_command|container.exec|Bash|Shell|grep_files|mcp__plugin_context-mode_context-mode__ctx_execute|mcp__plugin_context-mode_context-mode__ctx_execute_file|mcp__plugin_context-mode_context-mode__ctx_batch_execute",hooks:[{type:"command",command:ye(`${e}/hooks/pretooluse.mjs`)}]}],PostToolUse:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/posttooluse.mjs`)}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/sessionstart.mjs`)}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/codex/userpromptsubmit.mjs`)}]}],Stop:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/codex/stop.mjs`)}]}]}}readSettings(){try{return{_raw_toml:rl(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){return[{check:"Hook support",status:"pass",message:"Codex CLI hooks are stable. Configure ~/.codex/hooks.json for PreToolUse, PostToolUse, SessionStart, UserPromptSubmit, and Stop."}]}checkPluginRegistration(){try{let e=rl(this.getSettingsPath(),"utf-8"),r=e.includes("context-mode"),n=e.includes("[mcp_servers]")||e.includes("[mcp_servers.");return r&&n?{check:"MCP registration",status:"pass",message:"context-mode found in [mcp_servers] config"}:n?{check:"MCP registration",status:"fail",message:"[mcp_servers] section exists but context-mode not found",fix:"Add context-mode to [mcp_servers] in ~/.codex/config.toml"}:{check:"MCP registration",status:"fail",message:"No [mcp_servers] section in config.toml",fix:"Add [mcp_servers.context-mode] to ~/.codex/config.toml"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.codex/config.toml"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=nl(SE(kE(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return rl(e,"utf-8")}catch{return`# context-mode
10
10
 
11
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}getProjectDir(e){return e.cwd??process.env.CODEX_PROJECT_DIR??process.cwd()}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});import{readFileSync as w_,writeFileSync as wE,mkdirSync as $E,accessSync as EE,chmodSync as TE,constants as PE}from"node:fs";import{resolve as ta,join as RE}from"node:path";var uo,sl=v(()=>{"use strict";Vt();uo=class extends Me{paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.PRE_TOOL_USE,additionalContext:e.additionalContext}};if(e.decision==="ask")return{permissionDecision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return ta(".github","hooks","context-mode.json")}generateHookConfig(e){let{HOOK_TYPES:r,buildHookCommand:n}=this.hookModule;return{[r.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:n(r.PRE_TOOL_USE,e)}]}],[r.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:n(r.POST_TOOL_USE,e)}]}],[r.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:n(r.PRE_COMPACT,e)}]}],[r.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:n(r.SESSION_START,e)}]}]}}readSettings(){try{let e=w_(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{}try{let e=w_(ta(".claude","settings.json"),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();$E(ta(".github","hooks"),{recursive:!0}),wE(r,JSON.stringify(e,null,2)+`
12
- `,"utf-8")}configureAllHooks(e){let r=[],n=this.readSettings()??{},o=n.hooks??{},{HOOK_TYPES:s,HOOK_SCRIPTS:i,buildHookCommand:a}=this.hookModule,c=[s.PRE_TOOL_USE,s.POST_TOOL_USE,s.PRE_COMPACT,s.SESSION_START];for(let u of c)i[u]&&(o[u]=[{matcher:"",hooks:[{type:"command",command:a(u,e)}]}],r.push(`Configured ${u} hook`));return n.hooks=o,this.writeSettings(n),r.push(`Wrote hook config to ${this.getSettingsPath()}`),r}setHookPermissions(e){let r=[],n=RE(e,"hooks",this.hookSubdir);for(let o of Object.values(this.hookModule.HOOK_SCRIPTS)){let s=ta(n,o);try{EE(s,PE.R_OK),TE(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}}});function $_(t,e){let r=il[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?ye(`${e}/hooks/vscode-copilot/${r}`):`context-mode hook vscode-copilot ${t.toLowerCase()}`}var Tt,il,H2,q2,E_=v(()=>{"use strict";Sr();Tt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart"},il={[Tt.PRE_TOOL_USE]:"pretooluse.mjs",[Tt.POST_TOOL_USE]:"posttooluse.mjs",[Tt.PRE_COMPACT]:"precompact.mjs",[Tt.SESSION_START]:"sessionstart.mjs"},H2=[Tt.PRE_TOOL_USE,Tt.SESSION_START],q2=[Tt.POST_TOOL_USE,Tt.PRE_COMPACT]});var T_={};Ze(T_,{VSCodeCopilotAdapter:()=>ul});import{readFileSync as al,mkdirSync as CE,accessSync as OE,existsSync as IE,constants as AE}from"node:fs";import{resolve as lo,join as ra}from"node:path";import{homedir as cl}from"node:os";var ul,P_=v(()=>{"use strict";sl();E_();ul=class extends uo{constructor(){super([".vscode"])}name="VS Code Copilot";hookModule={HOOK_TYPES:Tt,HOOK_SCRIPTS:il,buildHookCommand:$_};hookSubdir="vscode-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}getProjectDir(){return process.env.CLAUDE_PROJECT_DIR||process.cwd()}getSessionDir(){let e=lo(".github","context-mode","sessions"),r=ra(cl(),".vscode","context-mode","sessions"),n=IE(lo(".github"))?e:r;return CE(n,{recursive:!0}),n}getConfigDir(e){return lo(e??process.cwd(),".github")}getInstructionFiles(){return["copilot-instructions.md"]}validateHooks(e){let r=[],n=lo(".github","hooks");try{OE(n,AE.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=lo(n,"context-mode.json");try{let s=al(o,"utf-8"),a=JSON.parse(s).hooks;a?.[Tt.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?.[Tt.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=lo(".vscode","mcp.json"),r=al(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=[ra(cl(),".vscode","extensions"),ra(cl(),".vscode-insiders","extensions")];for(let r of e)try{let n=al(ra(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}}});function R_(t,e){let r=ll[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?ye(`${e}/hooks/jetbrains-copilot/${r}`):`context-mode hook jetbrains-copilot ${t.toLowerCase()}`}var Pt,ll,X2,Q2,C_=v(()=>{"use strict";Sr();Pt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},ll={[Pt.PRE_TOOL_USE]:"pretooluse.mjs",[Pt.POST_TOOL_USE]:"posttooluse.mjs",[Pt.PRE_COMPACT]:"precompact.mjs",[Pt.SESSION_START]:"sessionstart.mjs"},X2=[Pt.PRE_TOOL_USE,Pt.SESSION_START],Q2=[Pt.POST_TOOL_USE,Pt.PRE_COMPACT]});var O_={};Ze(O_,{JetBrainsCopilotAdapter:()=>dl});import{readFileSync as NE}from"node:fs";import{resolve as zE}from"node:path";var dl,I_=v(()=>{"use strict";sl();C_();dl=class extends uo{constructor(){super([".config","JetBrains"])}name="JetBrains Copilot";hookModule={HOOK_TYPES:Pt,HOOK_SCRIPTS:ll,buildHookCommand:R_};hookSubdir="jetbrains-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.JETBRAINS_CLIENT_ID?`jetbrains-${process.env.JETBRAINS_CLIENT_ID}`:process.env.IDEA_HOME?`idea-${process.pid}`:`pid-${process.ppid}`}getProjectDir(){return process.env.IDEA_INITIAL_DIRECTORY||process.env.CLAUDE_PROJECT_DIR||process.cwd()}getConfigDir(e){return zE(e??this.getProjectDir(),".github")}getInstructionFiles(){return["copilot-instructions.md"]}validateHooks(e){let r=[];try{let n=NE(this.getSettingsPath(),"utf-8"),s=JSON.parse(n).hooks;s?.[Pt.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in .github/hooks/context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in .github/hooks/context-mode.json",fix:"context-mode upgrade"}),s?.[Pt.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in .github/hooks/context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in .github/hooks/context-mode.json",fix:"context-mode upgrade"})}catch{r.push({check:"Hook configuration",status:"fail",message:"Could not read .github/hooks/context-mode.json",fix:"context-mode upgrade"})}return r.push({check:"Hook scripts",status:"warn",message:`JetBrains hook wrappers should resolve to ${e}/hooks/jetbrains-copilot/*.mjs`}),r}checkPluginRegistration(){return{check:"MCP registration",status:"warn",message:"JetBrains stores MCP config via Settings UI \u2014 not CLI-inspectable",fix:"Verify in IDE: Settings > Tools > GitHub Copilot > MCP > ensure a context-mode server entry exists"}}getInstalledVersion(){let r=this.readSettings()?.hooks;return r&&Object.keys(r).length>0?"configured":"unknown"}}});function na(t,e){let r=pl[e],n=Rt(e);if("command"in t){let s=t.command??"";return r!=null&&s.includes(r)||s.includes(n)}return t.hooks?.some(s=>{let i=s.command??"";return r!=null&&i.includes(r)||i.includes(n)})??!1}function Rt(t){return`context-mode hook cursor ${t.toLowerCase()}`}var he,pl,jE,ml,A_,N_,z_=v(()=>{"use strict";he={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart",STOP:"stop",AFTER_AGENT_RESPONSE:"afterAgentResponse"},pl={[he.PRE_TOOL_USE]:"pretooluse.mjs",[he.POST_TOOL_USE]:"posttooluse.mjs",[he.SESSION_START]:"sessionstart.mjs",[he.STOP]:"stop.mjs",[he.AFTER_AGENT_RESPONSE]:"afteragentresponse.mjs"},jE=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],ml=jE.join("|"),A_=[he.PRE_TOOL_USE],N_=[he.POST_TOOL_USE]});var M_={};Ze(M_,{CursorAdapter:()=>gl});import{readFileSync as fl,writeFileSync as DE,mkdirSync as ME,accessSync as LE,chmodSync as FE,constants as UE,existsSync as j_}from"node:fs";import{execSync as ZE}from"node:child_process";import{resolve as gn,join as oa}from"node:path";import{homedir as hl}from"node:os";var D_,gl,L_=v(()=>{"use strict";Vt();z_();D_="/Library/Application Support/Cursor/hooks.json",gl=class extends Me{constructor(){super([".cursor"])}name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}parseStopInput(e){let r=e;return{sessionId:r.conversation_id??`pid-${process.ppid}`,status:r.status??"completed",loopCount:r.loop_count??0,generationId:r.generation_id,transcriptPath:r.transcript_path??void 0}}formatStopResponse(e){return e.followupMessage?{followup_message:e.followupMessage}:{}}parseAfterAgentResponseInput(e){return{text:e.text??""}}getSettingsPath(){return gn(".cursor","hooks.json")}getConfigDir(e){return gn(e??process.cwd(),".cursor")}getInstructionFiles(){return["context-mode.mdc"]}generateHookConfig(e){return{[he.PRE_TOOL_USE]:[{type:"command",command:Rt(he.PRE_TOOL_USE),matcher:ml,loop_limit:null,failClosed:!1}],[he.POST_TOOL_USE]:[{type:"command",command:Rt(he.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[he.SESSION_START]:[{type:"command",command:Rt(he.SESSION_START),loop_limit:null,failClosed:!1}],[he.STOP]:[{type:"command",command:Rt(he.STOP),loop_limit:null,failClosed:!1}],[he.AFTER_AGENT_RESPONSE]:[{type:"command",command:Rt(he.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=fl(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();ME(gn(".cursor"),{recursive:!0}),DE(r,JSON.stringify(e,null,2)+`
13
- `,"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 A_){let i=o[s],a=Array.isArray(i)&&i.some(c=>na(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 N_){let i=o[s],a=Array.isArray(i)&&i.some(c=>na(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 j_(D_)&&r.push({check:"Enterprise hook config",status:"warn",message:"Enterprise Cursor hook config detected at /Library/Application Support/Cursor/hooks.json (read-only informational layer)"}),this.hasClaudeCompatibilityHooks()&&r.push({check:"Claude compatibility",status:"warn",message:"Claude-compatible hooks detected; native Cursor hooks are the supported configuration"}),r}checkPluginRegistration(){let e=[gn(".cursor","mcp.json"),oa(hl(),".cursor","mcp.json")];for(let r of e)try{let n=fl(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 ZE("cursor --version",{encoding:"utf-8",stdio:["ignore","pipe","ignore"]}).trim().split(/\r?\n/)[0]||"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=this.readSettings()??{version:1,hooks:{}},n=r.hooks??{},o=[];return this.upsertHookEntry(n,he.PRE_TOOL_USE,{type:"command",command:Rt(he.PRE_TOOL_USE),matcher:ml,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.POST_TOOL_USE,{type:"command",command:Rt(he.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.SESSION_START,{type:"command",command:Rt(he.SESSION_START),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.STOP,{type:"command",command:Rt(he.STOP),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.AFTER_AGENT_RESPONSE,{type:"command",command:Rt(he.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}setHookPermissions(e){let r=[],n=oa(e,"hooks","cursor");for(let o of Object.values(pl)){let s=gn(n,o);try{LE(s,UE.R_OK),FE(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),oa(hl(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(D_),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=fl(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[gn(".claude","settings.json"),gn(".claude","settings.local.json"),oa(hl(),".claude","settings.json")].some(r=>j_(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>na(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 U_={};Ze(U_,{AntigravityAdapter:()=>yl});import{readFileSync as sa,writeFileSync as HE,mkdirSync as qE}from"node:fs";import{resolve as ia,dirname as F_}from"node:path";import{fileURLToPath as BE}from"node:url";import{homedir as _l}from"node:os";var yl,Z_=v(()=>{"use strict";Vt();yl=class extends Me{constructor(){super([".gemini"])}name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return ia(_l(),".gemini","antigravity","mcp_config.json")}getConfigDir(e){return ia(_l(),".gemini","antigravity")}getInstructionFiles(){return["GEMINI.md"]}generateHookConfig(e){return{}}readSettings(){try{let e=sa(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();qE(F_(r),{recursive:!0}),HE(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=sa(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=ia(_l(),".gemini","extensions","context-mode","package.json");return JSON.parse(sa(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=ia(F_(BE(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return sa(e,"utf-8")}catch{return`# context-mode
11
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}getProjectDir(e){return e.cwd??process.env.CODEX_PROJECT_DIR??process.cwd()}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});import{readFileSync as $_,writeFileSync as wE,mkdirSync as $E,accessSync as EE,chmodSync as TE,constants as PE}from"node:fs";import{resolve as ea,join as RE}from"node:path";var uo,sl=v(()=>{"use strict";Vt();uo=class extends Me{paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.PRE_TOOL_USE,additionalContext:e.additionalContext}};if(e.decision==="ask")return{permissionDecision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return ea(".github","hooks","context-mode.json")}generateHookConfig(e){let{HOOK_TYPES:r,buildHookCommand:n}=this.hookModule;return{[r.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:n(r.PRE_TOOL_USE,e)}]}],[r.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:n(r.POST_TOOL_USE,e)}]}],[r.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:n(r.PRE_COMPACT,e)}]}],[r.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:n(r.SESSION_START,e)}]}]}}readSettings(){try{let e=$_(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{}try{let e=$_(ea(".claude","settings.json"),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();$E(ea(".github","hooks"),{recursive:!0}),wE(r,JSON.stringify(e,null,2)+`
12
+ `,"utf-8")}configureAllHooks(e){let r=[],n=this.readSettings()??{},o=n.hooks??{},{HOOK_TYPES:s,HOOK_SCRIPTS:i,buildHookCommand:a}=this.hookModule,c=[s.PRE_TOOL_USE,s.POST_TOOL_USE,s.PRE_COMPACT,s.SESSION_START];for(let u of c)i[u]&&(o[u]=[{matcher:"",hooks:[{type:"command",command:a(u,e)}]}],r.push(`Configured ${u} hook`));return n.hooks=o,this.writeSettings(n),r.push(`Wrote hook config to ${this.getSettingsPath()}`),r}setHookPermissions(e){let r=[],n=RE(e,"hooks",this.hookSubdir);for(let o of Object.values(this.hookModule.HOOK_SCRIPTS)){let s=ea(n,o);try{EE(s,PE.R_OK),TE(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}}});function E_(t,e){let r=il[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?ye(`${e}/hooks/vscode-copilot/${r}`):`context-mode hook vscode-copilot ${t.toLowerCase()}`}var Pt,il,H2,q2,T_=v(()=>{"use strict";Sr();Pt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart"},il={[Pt.PRE_TOOL_USE]:"pretooluse.mjs",[Pt.POST_TOOL_USE]:"posttooluse.mjs",[Pt.PRE_COMPACT]:"precompact.mjs",[Pt.SESSION_START]:"sessionstart.mjs"},H2=[Pt.PRE_TOOL_USE,Pt.SESSION_START],q2=[Pt.POST_TOOL_USE,Pt.PRE_COMPACT]});var P_={};Ze(P_,{VSCodeCopilotAdapter:()=>ul});import{readFileSync as al,mkdirSync as CE,accessSync as OE,existsSync as IE,constants as AE}from"node:fs";import{resolve as lo,join as ta}from"node:path";import{homedir as cl}from"node:os";var ul,R_=v(()=>{"use strict";sl();T_();ul=class extends uo{constructor(){super([".vscode"])}name="VS Code Copilot";hookModule={HOOK_TYPES:Pt,HOOK_SCRIPTS:il,buildHookCommand:E_};hookSubdir="vscode-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}getProjectDir(){return process.env.CLAUDE_PROJECT_DIR||process.cwd()}getSessionDir(){let e=lo(".github","context-mode","sessions"),r=ta(cl(),".vscode","context-mode","sessions"),n=IE(lo(".github"))?e:r;return CE(n,{recursive:!0}),n}getConfigDir(e){return lo(e??process.cwd(),".github")}getInstructionFiles(){return["copilot-instructions.md"]}validateHooks(e){let r=[],n=lo(".github","hooks");try{OE(n,AE.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=lo(n,"context-mode.json");try{let s=al(o,"utf-8"),a=JSON.parse(s).hooks;a?.[Pt.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?.[Pt.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=lo(".vscode","mcp.json"),r=al(e,"utf-8"),o=JSON.parse(r).servers;return o&&Object.keys(o).some(i=>i.includes("context-mode"))?{check:"MCP registration",status:"pass",message:"context-mode found in .vscode/mcp.json"}:{check:"MCP registration",status:"fail",message:"context-mode not found in .vscode/mcp.json",fix:"Add context-mode server to .vscode/mcp.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read .vscode/mcp.json"}}}getInstalledVersion(){let e=[ta(cl(),".vscode","extensions"),ta(cl(),".vscode-insiders","extensions")];for(let r of e)try{let n=al(ta(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}}});function C_(t,e){let r=ll[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?ye(`${e}/hooks/jetbrains-copilot/${r}`):`context-mode hook jetbrains-copilot ${t.toLowerCase()}`}var Rt,ll,X2,Q2,O_=v(()=>{"use strict";Sr();Rt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},ll={[Rt.PRE_TOOL_USE]:"pretooluse.mjs",[Rt.POST_TOOL_USE]:"posttooluse.mjs",[Rt.PRE_COMPACT]:"precompact.mjs",[Rt.SESSION_START]:"sessionstart.mjs"},X2=[Rt.PRE_TOOL_USE,Rt.SESSION_START],Q2=[Rt.POST_TOOL_USE,Rt.PRE_COMPACT]});var I_={};Ze(I_,{JetBrainsCopilotAdapter:()=>dl});import{readFileSync as NE}from"node:fs";import{resolve as zE}from"node:path";var dl,A_=v(()=>{"use strict";sl();O_();dl=class extends uo{constructor(){super([".config","JetBrains"])}name="JetBrains Copilot";hookModule={HOOK_TYPES:Rt,HOOK_SCRIPTS:ll,buildHookCommand:C_};hookSubdir="jetbrains-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.JETBRAINS_CLIENT_ID?`jetbrains-${process.env.JETBRAINS_CLIENT_ID}`:process.env.IDEA_HOME?`idea-${process.pid}`:`pid-${process.ppid}`}getProjectDir(){return process.env.IDEA_INITIAL_DIRECTORY||process.env.CLAUDE_PROJECT_DIR||process.cwd()}getConfigDir(e){return zE(e??this.getProjectDir(),".github")}getInstructionFiles(){return["copilot-instructions.md"]}validateHooks(e){let r=[];try{let n=NE(this.getSettingsPath(),"utf-8"),s=JSON.parse(n).hooks;s?.[Rt.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in .github/hooks/context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in .github/hooks/context-mode.json",fix:"context-mode upgrade"}),s?.[Rt.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in .github/hooks/context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in .github/hooks/context-mode.json",fix:"context-mode upgrade"})}catch{r.push({check:"Hook configuration",status:"fail",message:"Could not read .github/hooks/context-mode.json",fix:"context-mode upgrade"})}return r.push({check:"Hook scripts",status:"warn",message:`JetBrains hook wrappers should resolve to ${e}/hooks/jetbrains-copilot/*.mjs`}),r}checkPluginRegistration(){return{check:"MCP registration",status:"warn",message:"JetBrains stores MCP config via Settings UI \u2014 not CLI-inspectable",fix:"Verify in IDE: Settings > Tools > GitHub Copilot > MCP > ensure a context-mode server entry exists"}}getInstalledVersion(){let r=this.readSettings()?.hooks;return r&&Object.keys(r).length>0?"configured":"unknown"}}});function ra(t,e){let r=pl[e],n=Ct(e);if("command"in t){let s=t.command??"";return r!=null&&s.includes(r)||s.includes(n)}return t.hooks?.some(s=>{let i=s.command??"";return r!=null&&i.includes(r)||i.includes(n)})??!1}function Ct(t){return`context-mode hook cursor ${t.toLowerCase()}`}var he,pl,jE,ml,N_,z_,j_=v(()=>{"use strict";he={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart",STOP:"stop",AFTER_AGENT_RESPONSE:"afterAgentResponse"},pl={[he.PRE_TOOL_USE]:"pretooluse.mjs",[he.POST_TOOL_USE]:"posttooluse.mjs",[he.SESSION_START]:"sessionstart.mjs",[he.STOP]:"stop.mjs",[he.AFTER_AGENT_RESPONSE]:"afteragentresponse.mjs"},jE=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],ml=jE.join("|"),N_=[he.PRE_TOOL_USE],z_=[he.POST_TOOL_USE]});var L_={};Ze(L_,{CursorAdapter:()=>gl});import{readFileSync as fl,writeFileSync as DE,mkdirSync as ME,accessSync as LE,chmodSync as FE,constants as UE,existsSync as D_}from"node:fs";import{execSync as ZE}from"node:child_process";import{resolve as gn,join as na}from"node:path";import{homedir as hl}from"node:os";var M_,gl,F_=v(()=>{"use strict";Vt();j_();M_="/Library/Application Support/Cursor/hooks.json",gl=class extends Me{constructor(){super([".cursor"])}name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}parseStopInput(e){let r=e;return{sessionId:r.conversation_id??`pid-${process.ppid}`,status:r.status??"completed",loopCount:r.loop_count??0,generationId:r.generation_id,transcriptPath:r.transcript_path??void 0}}formatStopResponse(e){return e.followupMessage?{followup_message:e.followupMessage}:{}}parseAfterAgentResponseInput(e){return{text:e.text??""}}getSettingsPath(){return gn(".cursor","hooks.json")}getConfigDir(e){return gn(e??process.cwd(),".cursor")}getInstructionFiles(){return["context-mode.mdc"]}generateHookConfig(e){return{[he.PRE_TOOL_USE]:[{type:"command",command:Ct(he.PRE_TOOL_USE),matcher:ml,loop_limit:null,failClosed:!1}],[he.POST_TOOL_USE]:[{type:"command",command:Ct(he.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[he.SESSION_START]:[{type:"command",command:Ct(he.SESSION_START),loop_limit:null,failClosed:!1}],[he.STOP]:[{type:"command",command:Ct(he.STOP),loop_limit:null,failClosed:!1}],[he.AFTER_AGENT_RESPONSE]:[{type:"command",command:Ct(he.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=fl(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();ME(gn(".cursor"),{recursive:!0}),DE(r,JSON.stringify(e,null,2)+`
13
+ `,"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 N_){let i=o[s],a=Array.isArray(i)&&i.some(c=>ra(c,s));r.push({check:s,status:a?"pass":"fail",message:a?`${s} hook configured`:`${s} hook not configured in ${n.path}`,fix:a?void 0:"context-mode upgrade"})}for(let s of z_){let i=o[s],a=Array.isArray(i)&&i.some(c=>ra(c,s));r.push({check:s,status:a?"pass":"warn",message:a?`${s} hook configured`:`${s} hook missing \u2014 session event capture will be reduced`})}}return D_(M_)&&r.push({check:"Enterprise hook config",status:"warn",message:"Enterprise Cursor hook config detected at /Library/Application Support/Cursor/hooks.json (read-only informational layer)"}),this.hasClaudeCompatibilityHooks()&&r.push({check:"Claude compatibility",status:"warn",message:"Claude-compatible hooks detected; native Cursor hooks are the supported configuration"}),r}checkPluginRegistration(){let e=[gn(".cursor","mcp.json"),na(hl(),".cursor","mcp.json")];for(let r of e)try{let n=fl(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 ZE("cursor --version",{encoding:"utf-8",stdio:["ignore","pipe","ignore"]}).trim().split(/\r?\n/)[0]||"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=this.readSettings()??{version:1,hooks:{}},n=r.hooks??{},o=[];return this.upsertHookEntry(n,he.PRE_TOOL_USE,{type:"command",command:Ct(he.PRE_TOOL_USE),matcher:ml,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.POST_TOOL_USE,{type:"command",command:Ct(he.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.SESSION_START,{type:"command",command:Ct(he.SESSION_START),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.STOP,{type:"command",command:Ct(he.STOP),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.AFTER_AGENT_RESPONSE,{type:"command",command:Ct(he.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}setHookPermissions(e){let r=[],n=na(e,"hooks","cursor");for(let o of Object.values(pl)){let s=gn(n,o);try{LE(s,UE.R_OK),FE(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),na(hl(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(M_),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=fl(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[gn(".claude","settings.json"),gn(".claude","settings.local.json"),na(hl(),".claude","settings.json")].some(r=>D_(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>ra(c,r));a>=0?(i[a]=n,o.push(`Updated existing ${r} hook entry`)):(i.push(n),o.push(`Added ${r} hook entry`)),e[r]=i}}});var Z_={};Ze(Z_,{AntigravityAdapter:()=>yl});import{readFileSync as oa,writeFileSync as HE,mkdirSync as qE}from"node:fs";import{resolve as sa,dirname as U_}from"node:path";import{fileURLToPath as BE}from"node:url";import{homedir as _l}from"node:os";var yl,H_=v(()=>{"use strict";Vt();yl=class extends Me{constructor(){super([".gemini"])}name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return sa(_l(),".gemini","antigravity","mcp_config.json")}getConfigDir(e){return sa(_l(),".gemini","antigravity")}getInstructionFiles(){return["GEMINI.md"]}generateHookConfig(e){return{}}readSettings(){try{let e=oa(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();qE(U_(r),{recursive:!0}),HE(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=oa(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=sa(_l(),".gemini","extensions","context-mode","package.json");return JSON.parse(oa(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=sa(U_(BE(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return oa(e,"utf-8")}catch{return`# context-mode
14
14
 
15
- 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 aa(t,e){let r=H_[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function po(t,e){let r=H_[t];return e&&r?ye(`${e}/hooks/kiro/${r}`):`context-mode hook kiro ${t.toLowerCase()}`}var Ne,H_,VE,xl,xF,vF,q_=v(()=>{"use strict";Sr();Ne={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},H_={[Ne.PRE_TOOL_USE]:"pretooluse.mjs",[Ne.POST_TOOL_USE]:"posttooluse.mjs",[Ne.USER_PROMPT_SUBMIT]:"userpromptsubmit.mjs",[Ne.AGENT_SPAWN]:"agentspawn.mjs"},VE=["execute_bash","fs_read","@context-mode/ctx_execute","@context-mode/ctx_execute_file","@context-mode/ctx_batch_execute"],xl=VE.join("|"),xF=[Ne.PRE_TOOL_USE,Ne.AGENT_SPAWN],vF=[Ne.POST_TOOL_USE,Ne.USER_PROMPT_SUBMIT]});var G_={};Ze(G_,{KiroAdapter:()=>vl});import{readFileSync as mo,writeFileSync as B_,mkdirSync as V_}from"node:fs";import{resolve as _n,dirname as W_}from"node:path";import{fileURLToPath as WE}from"node:url";import{homedir as ca}from"node:os";var vl,K_=v(()=>{"use strict";Vt();q_();vl=class extends Me{constructor(){super([".kiro"])}name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!0,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e,n=r.tool_response;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:typeof n=="string"?n:JSON.stringify(n??""),sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePreCompactInput(e){throw new Error("Kiro does not support PreCompact hooks")}parseSessionStartInput(e){let r=e??{};return{source:r.source??"startup",sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}formatPreToolUseResponse(e){switch(e.decision){case"deny":return{exitCode:2,stderr:e.reason??"Blocked by context-mode"};case"context":return{exitCode:0,stdout:e.additionalContext??""};default:return}}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){if(e?.context)return{hookSpecificOutput:{hookEventName:"agentSpawn",additionalContext:e.context}}}getSettingsPath(){return _n(ca(),".kiro","settings","mcp.json")}getConfigDir(e){return _n(e??process.cwd(),".kiro")}getInstructionFiles(){return["KIRO.md"]}generateHookConfig(e){return{[Ne.PRE_TOOL_USE]:[{matcher:xl,hooks:[{type:"command",command:po(Ne.PRE_TOOL_USE,e)}]}],[Ne.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:po(Ne.POST_TOOL_USE,e)}]}],[Ne.AGENT_SPAWN]:[{matcher:"*",hooks:[{type:"command",command:po(Ne.AGENT_SPAWN,e)}]}],[Ne.USER_PROMPT_SUBMIT]:[{matcher:"*",hooks:[{type:"command",command:po(Ne.USER_PROMPT_SUBMIT,e)}]}]}}readSettings(){try{let e=mo(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();V_(W_(r),{recursive:!0}),B_(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=_n(ca(),".kiro","agents","default.json");try{let s=JSON.parse(mo(n,"utf-8")).hooks??{};for(let i of[Ne.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>aa(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[Ne.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>aa(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=mo(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=_n(ca(),".kiro","extensions","context-mode","package.json");return JSON.parse(mo(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=_n(ca(),".kiro","agents"),o=_n(n,"default.json");try{V_(n,{recursive:!0});let s={};try{s=JSON.parse(mo(o,"utf-8"))}catch{}let i=s.hooks??{},a=[[Ne.PRE_TOOL_USE,xl],[Ne.POST_TOOL_USE,"*"],[Ne.AGENT_SPAWN,"*"],[Ne.USER_PROMPT_SUBMIT,"*"]];for(let[c,u]of a){let l=i[c]??[];l.some(d=>aa(d,c))||(l.push({matcher:u,command:po(c,e)}),i[c]=l,r.push(`Added ${c} hook to ${o}`))}s.hooks=i,B_(o,JSON.stringify(s,null,2),"utf-8")}catch(s){r.push(`Failed to configure hooks: ${s.message}`)}return r}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=_n(W_(WE(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return mo(e,"utf-8")}catch{return`# context-mode
15
+ 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 ia(t,e){let r=q_[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function po(t,e){let r=q_[t];return e&&r?ye(`${e}/hooks/kiro/${r}`):`context-mode hook kiro ${t.toLowerCase()}`}var Ne,q_,VE,xl,xF,vF,B_=v(()=>{"use strict";Sr();Ne={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},q_={[Ne.PRE_TOOL_USE]:"pretooluse.mjs",[Ne.POST_TOOL_USE]:"posttooluse.mjs",[Ne.USER_PROMPT_SUBMIT]:"userpromptsubmit.mjs",[Ne.AGENT_SPAWN]:"agentspawn.mjs"},VE=["execute_bash","fs_read","@context-mode/ctx_execute","@context-mode/ctx_execute_file","@context-mode/ctx_batch_execute"],xl=VE.join("|"),xF=[Ne.PRE_TOOL_USE,Ne.AGENT_SPAWN],vF=[Ne.POST_TOOL_USE,Ne.USER_PROMPT_SUBMIT]});var K_={};Ze(K_,{KiroAdapter:()=>vl});import{readFileSync as mo,writeFileSync as V_,mkdirSync as W_}from"node:fs";import{resolve as _n,dirname as G_}from"node:path";import{fileURLToPath as WE}from"node:url";import{homedir as aa}from"node:os";var vl,J_=v(()=>{"use strict";Vt();B_();vl=class extends Me{constructor(){super([".kiro"])}name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!0,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e,n=r.tool_response;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:typeof n=="string"?n:JSON.stringify(n??""),sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePreCompactInput(e){throw new Error("Kiro does not support PreCompact hooks")}parseSessionStartInput(e){let r=e??{};return{source:r.source??"startup",sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}formatPreToolUseResponse(e){switch(e.decision){case"deny":return{exitCode:2,stderr:e.reason??"Blocked by context-mode"};case"context":return{exitCode:0,stdout:e.additionalContext??""};default:return}}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){if(e?.context)return{hookSpecificOutput:{hookEventName:"agentSpawn",additionalContext:e.context}}}getSettingsPath(){return _n(aa(),".kiro","settings","mcp.json")}getConfigDir(e){return _n(e??process.cwd(),".kiro")}getInstructionFiles(){return["KIRO.md"]}generateHookConfig(e){return{[Ne.PRE_TOOL_USE]:[{matcher:xl,hooks:[{type:"command",command:po(Ne.PRE_TOOL_USE,e)}]}],[Ne.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:po(Ne.POST_TOOL_USE,e)}]}],[Ne.AGENT_SPAWN]:[{matcher:"*",hooks:[{type:"command",command:po(Ne.AGENT_SPAWN,e)}]}],[Ne.USER_PROMPT_SUBMIT]:[{matcher:"*",hooks:[{type:"command",command:po(Ne.USER_PROMPT_SUBMIT,e)}]}]}}readSettings(){try{let e=mo(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();W_(G_(r),{recursive:!0}),V_(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=_n(aa(),".kiro","agents","default.json");try{let s=JSON.parse(mo(n,"utf-8")).hooks??{};for(let i of[Ne.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>ia(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[Ne.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>ia(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=mo(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=_n(aa(),".kiro","extensions","context-mode","package.json");return JSON.parse(mo(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=_n(aa(),".kiro","agents"),o=_n(n,"default.json");try{W_(n,{recursive:!0});let s={};try{s=JSON.parse(mo(o,"utf-8"))}catch{}let i=s.hooks??{},a=[[Ne.PRE_TOOL_USE,xl],[Ne.POST_TOOL_USE,"*"],[Ne.AGENT_SPAWN,"*"],[Ne.USER_PROMPT_SUBMIT,"*"]];for(let[c,u]of a){let l=i[c]??[];l.some(d=>ia(d,c))||(l.push({matcher:u,command:po(c,e)}),i[c]=l,r.push(`Added ${c} hook to ${o}`))}s.hooks=i,V_(o,JSON.stringify(s,null,2),"utf-8")}catch(s){r.push(`Failed to configure hooks: ${s.message}`)}return r}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=_n(G_(WE(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return mo(e,"utf-8")}catch{return`# context-mode
16
16
 
17
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});var X_={};Ze(X_,{ZedAdapter:()=>Sl});import{readFileSync as bl,writeFileSync as GE,mkdirSync as KE}from"node:fs";import{resolve as J_,dirname as Y_}from"node:path";import{fileURLToPath as JE}from"node:url";import{homedir as YE}from"node:os";var Sl,Q_=v(()=>{"use strict";Vt();Sl=class extends Me{constructor(){super([".config","zed"])}name="Zed";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Zed does not support hooks")}parsePostToolUseInput(e){throw new Error("Zed does not support hooks")}parsePreCompactInput(e){throw new Error("Zed does not support hooks")}parseSessionStartInput(e){throw new Error("Zed does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return J_(YE(),".config","zed","settings.json")}getInstructionFiles(){return["AGENTS.md"]}generateHookConfig(e){return{}}readSettings(){try{let e=bl(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();KE(Y_(r),{recursive:!0}),GE(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=bl(this.getSettingsPath(),"utf-8"),n=JSON.parse(e).context_servers!==void 0,o=e.includes("context-mode");return n&&o?{check:"MCP registration",status:"pass",message:"context-mode found in context_servers config"}:n?{check:"MCP registration",status:"fail",message:"context_servers section exists but context-mode not found",fix:"Add context-mode to context_servers in ~/.config/zed/settings.json"}:{check:"MCP registration",status:"fail",message:"No context_servers section in settings.json",fix:"Add context_servers.context-mode to ~/.config/zed/settings.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.config/zed/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=J_(Y_(JE(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return bl(e,"utf-8")}catch{return`# context-mode
17
+ 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 Q_={};Ze(Q_,{ZedAdapter:()=>Sl});import{readFileSync as bl,writeFileSync as GE,mkdirSync as KE}from"node:fs";import{resolve as Y_,dirname as X_}from"node:path";import{fileURLToPath as JE}from"node:url";import{homedir as YE}from"node:os";var Sl,ey=v(()=>{"use strict";Vt();Sl=class extends Me{constructor(){super([".config","zed"])}name="Zed";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Zed does not support hooks")}parsePostToolUseInput(e){throw new Error("Zed does not support hooks")}parsePreCompactInput(e){throw new Error("Zed does not support hooks")}parseSessionStartInput(e){throw new Error("Zed does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Y_(YE(),".config","zed","settings.json")}getInstructionFiles(){return["AGENTS.md"]}generateHookConfig(e){return{}}readSettings(){try{let e=bl(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();KE(X_(r),{recursive:!0}),GE(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=bl(this.getSettingsPath(),"utf-8"),n=JSON.parse(e).context_servers!==void 0,o=e.includes("context-mode");return n&&o?{check:"MCP registration",status:"pass",message:"context-mode found in context_servers config"}:n?{check:"MCP registration",status:"fail",message:"context_servers section exists but context-mode not found",fix:"Add context-mode to context_servers in ~/.config/zed/settings.json"}:{check:"MCP registration",status:"fail",message:"No context_servers section in settings.json",fix:"Add context_servers.context-mode to ~/.config/zed/settings.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.config/zed/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Y_(X_(JE(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return bl(e,"utf-8")}catch{return`# context-mode
18
18
 
19
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var ry={};Ze(ry,{QwenCodeAdapter:()=>kl});import{readFileSync as XE,existsSync as QE}from"node:fs";import{resolve as ey,join as eT}from"node:path";import{homedir as ty}from"node:os";var kl,ny=v(()=>{"use strict";Zu();Sr();kl=class extends ao{constructor(){super([".qwen"])}name="Qwen Code";paradigm="json-stdio";projectDirEnvVar="QWEN_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getSettingsPath(){return ey(ty(),".qwen","settings.json")}getInstructionFiles(){return["QWEN.md"]}generateHookConfig(e){return{PreToolUse:[{matcher:["run_shell_command","read_file","read_many_files","grep_search","web_fetch","agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].join("|"),hooks:[{type:"command",command:ye(`${e}/hooks/pretooluse.mjs`)}]}],PostToolUse:[{matcher:"run_shell_command|read_file|write_file|edit|glob|grep_search|todo_write|agent|ask_user_question|mcp__",hooks:[{type:"command",command:ye(`${e}/hooks/posttooluse.mjs`)}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/sessionstart.mjs`)}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/precompact.mjs`)}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/userpromptsubmit.mjs`)}]}]}}readSettings(){try{let e=XE(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let{writeFileSync:r}=Rg("node:fs");r(this.getSettingsPath(),JSON.stringify(e,null,2))}validateHooks(e){let r=[],o=this.readSettings()?.hooks??{};for(let s of["PreToolUse","PostToolUse","SessionStart","PreCompact","UserPromptSubmit"]){let i=Array.isArray(o[s])&&o[s].length>0;r.push({check:`${s} hook`,status:i?"pass":"fail",message:i?`${s} hook configured in ~/.qwen/settings.json`:`${s} hook not found in ~/.qwen/settings.json`,...i?{}:{fix:`Add ${s} hook to ~/.qwen/settings.json`}})}return r}checkPluginRegistration(){try{let e=this.readSettings();if(e?.mcpServers&&typeof e.mcpServers=="object"){let r=e.mcpServers;return Object.keys(r).some(n=>n.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in mcpServers"}:{check:"Plugin registration",status:"fail",message:"mcpServers exists but context-mode not found",fix:"Add context-mode to mcpServers in ~/.qwen/settings.json"}}return{check:"Plugin registration",status:"warn",message:"No mcpServers in ~/.qwen/settings.json"}}catch{return{check:"Plugin registration",status:"warn",message:"Could not read ~/.qwen/settings.json"}}}getInstalledVersion(){let e=this.readSettings();if(!e)return"not installed";let r=e.hooks;if(!r)return"not installed";let n=["pretooluse.mjs","posttooluse.mjs","precompact.mjs","sessionstart.mjs","userpromptsubmit.mjs"];for(let[,o]of Object.entries(r))if(Array.isArray(o)){for(let s of o)if(s.hooks?.some(a=>a.command&&n.some(c=>a.command.includes(c))))return"installed (hooks configured)"}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[];for(let i of Object.keys(n)){let a=n[i];if(!Array.isArray(a))continue;let c=a.filter(l=>{let p=l.hooks??[];return p.some(m=>m.command&&/context-mode|pretooluse|posttooluse|precompact|sessionstart|userpromptsubmit/i.test(m.command))?p.every(m=>{if(!m.command)return!0;let h=m.command.match(/"[^"]+"\s+"([^"]+\.mjs)"/),g=m.command.match(/node\s+"?([^"]+\.mjs)"?/),y=h||g;return y?QE(y[1]):!0}):!0}),u=a.length-c.length;u>0&&(n[i]=c,o.push(`Removed ${u} stale ${i} hook(s)`))}let s=[{name:"PreToolUse",script:"pretooluse.mjs",matcher:["run_shell_command","read_file","read_many_files","grep_search","web_fetch","agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].join("|")},{name:"PostToolUse",script:"posttooluse.mjs",matcher:"run_shell_command|read_file|write_file|edit|glob|grep_search|todo_write|agent|ask_user_question|mcp__"},{name:"SessionStart",script:"sessionstart.mjs",matcher:""},{name:"PreCompact",script:"precompact.mjs",matcher:""},{name:"UserPromptSubmit",script:"userpromptsubmit.mjs",matcher:""}];for(let{name:i,script:a,matcher:c}of s){let u={matcher:c,hooks:[{type:"command",command:ye(`${e}/hooks/${a}`)}]},l=n[i];if(l&&Array.isArray(l)){let d=l.findIndex(p=>p.hooks?.some(m=>m.command?.includes(a))??!1);d>=0?(l[d]=u,o.push(`Updated ${i} hook`)):(l.push(u),o.push(`Added ${i} hook`)),n[i]=l}else n[i]=[u],o.push(`Created ${i} hooks`)}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{instructionsPath:ey(eT(ty(),".qwen","QWEN.md")),targetPath:"QWEN.md",platformName:"Qwen Code"}}extractSessionId(e){if(e.session_id)return e.session_id;if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return process.env.QWEN_SESSION_ID?process.env.QWEN_SESSION_ID:`pid-${process.ppid}`}}});var sy={};Ze(sy,{PLATFORM_ENV_VARS:()=>oy,detectPlatform:()=>wr,getAdapter:()=>bs,getSessionDirSegments:()=>wl});import{existsSync as Ct}from"node:fs";import{resolve as Ot}from"node:path";import{homedir as tT}from"node:os";function wl(t){switch(t){case"claude-code":return[".claude"];case"gemini-cli":return[".gemini"];case"antigravity":return[".gemini"];case"openclaw":return[".openclaw"];case"codex":return[".codex"];case"cursor":return[".cursor"];case"vscode-copilot":return[".vscode"];case"kiro":return[".kiro"];case"pi":return[".pi"];case"qwen-code":return[".qwen"];case"kilo":return[".config","kilo"];case"opencode":return[".config","opencode"];case"zed":return[".config","zed"];case"jetbrains-copilot":return[".config","JetBrains"];default:return null}}function wr(t){if(t?.name){let n=e_[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`};if(t.name.startsWith("qwen-cli-mcp-client"))return{platform:"qwen-code",confidence:"high",reason:`MCP clientInfo.name="${t.name}" (qwen-cli pattern)`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","kilo","opencode","codex","vscode-copilot","jetbrains-copilot","cursor","antigravity","kiro","pi","zed","qwen-code"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};for(let[n,o]of oy)if(o.some(s=>process.env[s]))return{platform:n,confidence:"high",reason:`${o.join(" or ")} env var set`};let r=tT();return Ct(Ot(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Ct(Ot(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Ct(Ot(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Ct(Ot(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Ct(Ot(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Ct(Ot(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Ct(Ot(r,".qwen"))?{platform:"qwen-code",confidence:"medium",reason:"~/.qwen/ directory exists"}:Ct(Ot(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Ct(Ot(r,".config","kilo"))?{platform:"kilo",confidence:"medium",reason:"~/.config/kilo/ directory exists"}:Ct(Ot(r,".config","JetBrains"))?{platform:"jetbrains-copilot",confidence:"medium",reason:"~/.config/JetBrains/ directory exists"}:Ct(Ot(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Ct(Ot(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 bs(t){let e=t??wr().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Wu(),Vu));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(m_(),p_));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(__(),g_));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(v_(),x_));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(k_(),S_));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(P_(),T_));return new r}case"jetbrains-copilot":{let{JetBrainsCopilotAdapter:r}=await Promise.resolve().then(()=>(I_(),O_));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(L_(),M_));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(Z_(),U_));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(K_(),G_));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(Q_(),X_));return new r}case"qwen-code":{let{QwenCodeAdapter:r}=await Promise.resolve().then(()=>(ny(),ry));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Wu(),Vu));return new r}}}var oy,ua=v(()=>{"use strict";t_();oy=[["claude-code",["CLAUDE_PROJECT_DIR","CLAUDE_SESSION_ID"]],["antigravity",["ANTIGRAVITY_CLI_ALIAS"]],["cursor",["CURSOR_TRACE_ID","CURSOR_CLI"]],["kilo",["KILO_PID"]],["opencode",["OPENCODE","OPENCODE_PID"]],["zed",["ZED_SESSION_ID","ZED_TERM"]],["codex",["CODEX_THREAD_ID","CODEX_CI"]],["gemini-cli",["GEMINI_PROJECT_DIR","GEMINI_CLI"]],["vscode-copilot",["VSCODE_PID","VSCODE_CWD"]],["jetbrains-copilot",["IDEA_INITIAL_DIRECTORY"]],["qwen-code",["QWEN_PROJECT_DIR"]],["pi",["PI_PROJECT_DIR"]]]});var ne,$l,O,ir,Ss=v(()=>{(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(ne||(ne={}));(function(t){t.mergeShapes=(e,r)=>({...e,...r})})($l||($l={}));O=ne.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),ir=t=>{switch(typeof t){case"undefined":return O.undefined;case"string":return O.string;case"number":return Number.isNaN(t)?O.nan:O.number;case"boolean":return O.boolean;case"function":return O.function;case"bigint":return O.bigint;case"symbol":return O.symbol;case"object":return Array.isArray(t)?O.array:t===null?O.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?O.promise:typeof Map<"u"&&t instanceof Map?O.map:typeof Set<"u"&&t instanceof Set?O.set:typeof Date<"u"&&t instanceof Date?O.date:O.object;default:return O.unknown}}});var w,rT,pt,la=v(()=>{Ss();w=ne.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),rT=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),pt=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,ne.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};pt.create=t=>new pt(t)});var nT,$r,El=v(()=>{la();Ss();nT=(t,e)=>{let r;switch(t.code){case w.invalid_type:t.received===O.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case w.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,ne.jsonStringifyReplacer)}`;break;case w.unrecognized_keys:r=`Unrecognized key(s) in object: ${ne.joinValues(t.keys,", ")}`;break;case w.invalid_union:r="Invalid input";break;case w.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${ne.joinValues(t.options)}`;break;case w.invalid_enum_value:r=`Invalid enum value. Expected ${ne.joinValues(t.options)}, received '${t.received}'`;break;case w.invalid_arguments:r="Invalid function arguments";break;case w.invalid_return_type:r="Invalid function return type";break;case w.invalid_date:r="Invalid date";break;case w.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:ne.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case w.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 w.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 w.custom:r="Invalid input";break;case w.invalid_intersection_types:r="Intersection results could not be merged";break;case w.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case w.not_finite:r="Number must be finite";break;default:r=e.defaultError,ne.assertNever(t)}return{message:r}},$r=nT});function oT(t){iy=t}function fo(){return iy}var iy,da=v(()=>{El();iy=$r});function R(t,e){let r=fo(),n=ks({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===$r?void 0:$r].filter(o=>!!o)});t.common.issues.push(n)}var ks,sT,We,q,yn,et,pa,ma,qr,ho,Tl=v(()=>{da();El();ks=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}},sT=[];We=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return q;o.status==="dirty"&&e.dirty(),n.push(o.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let o of r){let s=await o.key,i=await o.value;n.push({key:s,value:i})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:i}=o;if(s.status==="aborted"||i.status==="aborted")return q;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||o.alwaysSet)&&(n[s.value]=i.value)}return{status:e.value,value:n}}},q=Object.freeze({status:"aborted"}),yn=t=>({status:"dirty",value:t}),et=t=>({status:"valid",value:t}),pa=t=>t.status==="aborted",ma=t=>t.status==="dirty",qr=t=>t.status==="valid",ho=t=>typeof Promise<"u"&&t instanceof Promise});var ay=v(()=>{});var j,cy=v(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(j||(j={}))});function J(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}}function py(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 ST(t){return new RegExp(`^${py(t)}$`)}function my(t){let e=`${dy}T${py(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 kT(t,e){return!!((e==="v4"||!e)&&hT.test(t)||(e==="v6"||!e)&&_T.test(t))}function wT(t,e){if(!dT.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 $T(t,e){return!!((e==="v4"||!e)&&gT.test(t)||(e==="v6"||!e)&&yT.test(t))}function ET(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 go(t){if(t instanceof ft){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=mt.create(go(n))}return new ft({...t._def,shape:()=>e})}else return t instanceof Pr?new Pr({...t._def,type:go(t.element)}):t instanceof mt?mt.create(go(t.unwrap())):t instanceof cr?cr.create(go(t.unwrap())):t instanceof ar?ar.create(t.items.map(e=>go(e))):t}function Rl(t,e){let r=ir(t),n=ir(e);if(t===e)return{valid:!0,data:t};if(r===O.object&&n===O.object){let o=ne.objectKeys(e),s=ne.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=Rl(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===O.array&&n===O.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=Rl(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===O.date&&n===O.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}function fy(t,e){return new Rn({values:t,typeName:$.ZodEnum,...J(e)})}function ly(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function hy(t,e={},r){return t?Vr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=ly(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=ly(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Vr.create()}var It,uy,X,iT,aT,cT,uT,lT,dT,pT,mT,fT,Pl,hT,gT,_T,yT,xT,vT,dy,bT,Br,xn,vn,bn,Sn,_o,kn,wn,Vr,Tr,Gt,yo,Pr,ft,$n,Er,fa,En,ar,ha,xo,vo,ga,Tn,Pn,Rn,Cn,Wr,At,mt,cr,On,In,bo,TT,ws,$s,An,PT,$,RT,gy,_y,CT,OT,yy,IT,AT,NT,zT,jT,DT,MT,LT,FT,Cl,UT,ZT,HT,qT,BT,VT,WT,GT,KT,JT,YT,XT,QT,eP,tP,rP,nP,oP,sP,iP,aP,cP,uP,lP,xy=v(()=>{la();da();cy();Tl();Ss();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}},uy=(t,e)=>{if(qr(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 pt(t.common.issues);return this._error=r,this._error}}};X=class{get description(){return this._def.description}_getType(e){return ir(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:ir(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new We,ctx:{common:e.parent.common,data:e.data,parsedType:ir(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(ho(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:ir(e)},o=this._parseSync({data:e,path:n.path,parent:n});return uy(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:ir(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return qr(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=>qr(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:ir(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(ho(o)?o:Promise.resolve(o));return uy(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:w.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:$.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 mt.create(this,this._def)}nullable(){return cr.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Pr.create(this)}promise(){return Wr.create(this,this._def)}or(e){return $n.create([this,e],this._def)}and(e){return En.create(this,e,this._def)}transform(e){return new At({...J(this._def),schema:this,typeName:$.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new On({...J(this._def),innerType:this,defaultValue:r,typeName:$.ZodDefault})}brand(){return new ws({typeName:$.ZodBranded,type:this,...J(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new In({...J(this._def),innerType:this,catchValue:r,typeName:$.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return $s.create(this,e)}readonly(){return An.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},iT=/^c[^\s-]{8,}$/i,aT=/^[0-9a-z]+$/,cT=/^[0-9A-HJKMNP-TV-Z]{26}$/i,uT=/^[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,lT=/^[a-z0-9_-]{21}$/i,dT=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,pT=/^[-+]?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)?)??$/,mT=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,fT="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",hT=/^(?:(?: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])$/,gT=/^(?:(?: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])$/,_T=/^(([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]))$/,yT=/^(([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])$/,xT=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,vT=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,dy="((\\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])))",bT=new RegExp(`^${dy}$`);Br=class t extends X{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==O.string){let s=this._getOrReturnCtx(e);return R(s,{code:w.invalid_type,expected:O.string,received:s.parsedType}),q}let n=new We,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),R(o,{code:w.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),R(o,{code:w.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?R(o,{code:w.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&R(o,{code:w.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")mT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"email",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Pl||(Pl=new RegExp(fT,"u")),Pl.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"emoji",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")uT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"uuid",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")lT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"nanoid",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")iT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cuid",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")aT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cuid2",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")cT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"ulid",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),R(o,{validation:"url",code:w.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"regex",code:w.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),R(o,{code:w.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),R(o,{code:w.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),R(o,{code:w.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?my(s).test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:w.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?bT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:w.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?ST(s).test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:w.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?pT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"duration",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?kT(e.data,s.version)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"ip",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?wT(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"jwt",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?$T(e.data,s.version)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cidr",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?xT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?vT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64url",code:w.invalid_string,message:s.message}),n.dirty()):ne.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:w.invalid_string,...j.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...j.errToObj(e)})}url(e){return this._addCheck({kind:"url",...j.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...j.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...j.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...j.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...j.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...j.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...j.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...j.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...j.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...j.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...j.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...j.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,...j.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,...j.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...j.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...j.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...j.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...j.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...j.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...j.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...j.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...j.errToObj(r)})}nonempty(e){return this.min(1,j.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}};Br.create=t=>new Br({checks:[],typeName:$.ZodString,coerce:t?.coerce??!1,...J(t)});xn=class t extends X{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)!==O.number){let s=this._getOrReturnCtx(e);return R(s,{code:w.invalid_type,expected:O.number,received:s.parsedType}),q}let n,o=new We;for(let s of this._def.checks)s.kind==="int"?ne.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),R(n,{code:w.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),R(n,{code:w.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),R(n,{code:w.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?ET(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),R(n,{code:w.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),R(n,{code:w.not_finite,message:s.message}),o.dirty()):ne.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,j.toString(r))}gt(e,r){return this.setLimit("min",e,!1,j.toString(r))}lte(e,r){return this.setLimit("max",e,!0,j.toString(r))}lt(e,r){return this.setLimit("max",e,!1,j.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:j.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:j.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:j.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:j.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:j.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:j.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:j.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:j.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:j.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:j.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&ne.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};xn.create=t=>new xn({checks:[],typeName:$.ZodNumber,coerce:t?.coerce||!1,...J(t)});vn=class t extends X{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)!==O.bigint)return this._getInvalidInput(e);let n,o=new We;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),R(n,{code:w.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),R(n,{code:w.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),R(n,{code:w.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):ne.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return R(r,{code:w.invalid_type,expected:O.bigint,received:r.parsedType}),q}gte(e,r){return this.setLimit("min",e,!0,j.toString(r))}gt(e,r){return this.setLimit("min",e,!1,j.toString(r))}lte(e,r){return this.setLimit("max",e,!0,j.toString(r))}lt(e,r){return this.setLimit("max",e,!1,j.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:j.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:j.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:j.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:j.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:j.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:j.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}};vn.create=t=>new vn({checks:[],typeName:$.ZodBigInt,coerce:t?.coerce??!1,...J(t)});bn=class extends X{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==O.boolean){let n=this._getOrReturnCtx(e);return R(n,{code:w.invalid_type,expected:O.boolean,received:n.parsedType}),q}return et(e.data)}};bn.create=t=>new bn({typeName:$.ZodBoolean,coerce:t?.coerce||!1,...J(t)});Sn=class t extends X{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==O.date){let s=this._getOrReturnCtx(e);return R(s,{code:w.invalid_type,expected:O.date,received:s.parsedType}),q}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return R(s,{code:w.invalid_date}),q}let n=new We,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),R(o,{code:w.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),R(o,{code:w.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):ne.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:j.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:j.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}};Sn.create=t=>new Sn({checks:[],coerce:t?.coerce||!1,typeName:$.ZodDate,...J(t)});_o=class extends X{_parse(e){if(this._getType(e)!==O.symbol){let n=this._getOrReturnCtx(e);return R(n,{code:w.invalid_type,expected:O.symbol,received:n.parsedType}),q}return et(e.data)}};_o.create=t=>new _o({typeName:$.ZodSymbol,...J(t)});kn=class extends X{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return R(n,{code:w.invalid_type,expected:O.undefined,received:n.parsedType}),q}return et(e.data)}};kn.create=t=>new kn({typeName:$.ZodUndefined,...J(t)});wn=class extends X{_parse(e){if(this._getType(e)!==O.null){let n=this._getOrReturnCtx(e);return R(n,{code:w.invalid_type,expected:O.null,received:n.parsedType}),q}return et(e.data)}};wn.create=t=>new wn({typeName:$.ZodNull,...J(t)});Vr=class extends X{constructor(){super(...arguments),this._any=!0}_parse(e){return et(e.data)}};Vr.create=t=>new Vr({typeName:$.ZodAny,...J(t)});Tr=class extends X{constructor(){super(...arguments),this._unknown=!0}_parse(e){return et(e.data)}};Tr.create=t=>new Tr({typeName:$.ZodUnknown,...J(t)});Gt=class extends X{_parse(e){let r=this._getOrReturnCtx(e);return R(r,{code:w.invalid_type,expected:O.never,received:r.parsedType}),q}};Gt.create=t=>new Gt({typeName:$.ZodNever,...J(t)});yo=class extends X{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return R(n,{code:w.invalid_type,expected:O.void,received:n.parsedType}),q}return et(e.data)}};yo.create=t=>new yo({typeName:$.ZodVoid,...J(t)});Pr=class t extends X{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==O.array)return R(r,{code:w.invalid_type,expected:O.array,received:r.parsedType}),q;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(R(r,{code:i?w.too_big:w.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(R(r,{code:w.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(R(r,{code:w.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=>We.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new It(r,i,r.path,a)));return We.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:j.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:j.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:j.toString(r)}})}nonempty(e){return this.min(1,e)}};Pr.create=(t,e)=>new Pr({type:t,minLength:null,maxLength:null,exactLength:null,typeName:$.ZodArray,...J(e)});ft=class t extends X{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=ne.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==O.object){let u=this._getOrReturnCtx(e);return R(u,{code:w.invalid_type,expected:O.object,received:u.parsedType}),q}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof 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&&(R(o,{code:w.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,p=await l.value;u.push({key:d,value:p,alwaysSet:l.alwaysSet})}return u}).then(u=>We.mergeObjectSync(n,u)):We.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return j.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:j.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:$.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of ne.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of ne.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return go(this)}partial(e){let r={};for(let n of ne.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of ne.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof mt;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return fy(ne.objectKeys(this.shape))}};ft.create=(t,e)=>new ft({shape:()=>t,unknownKeys:"strip",catchall:Gt.create(),typeName:$.ZodObject,...J(e)});ft.strictCreate=(t,e)=>new ft({shape:()=>t,unknownKeys:"strict",catchall:Gt.create(),typeName:$.ZodObject,...J(e)});ft.lazycreate=(t,e)=>new ft({shape:t,unknownKeys:"strip",catchall:Gt.create(),typeName:$.ZodObject,...J(e)});$n=class extends X{_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 pt(a.ctx.common.issues));return R(r,{code:w.invalid_union,unionErrors:i}),q}if(r.common.async)return Promise.all(n.map(async s=>{let i={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:i}),ctx:i}})).then(o);{let s,i=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},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 pt(c));return R(r,{code:w.invalid_union,unionErrors:a}),q}}get options(){return this._def.options}};$n.create=(t,e)=>new $n({options:t,typeName:$.ZodUnion,...J(e)});Er=t=>t instanceof Tn?Er(t.schema):t instanceof At?Er(t.innerType()):t instanceof Pn?[t.value]:t instanceof Rn?t.options:t instanceof Cn?ne.objectValues(t.enum):t instanceof On?Er(t._def.innerType):t instanceof kn?[void 0]:t instanceof wn?[null]:t instanceof mt?[void 0,...Er(t.unwrap())]:t instanceof cr?[null,...Er(t.unwrap())]:t instanceof ws||t instanceof An?Er(t.unwrap()):t instanceof In?Er(t._def.innerType):[],fa=class t extends X{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.object)return R(r,{code:w.invalid_type,expected:O.object,received:r.parsedType}),q;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(R(r,{code:w.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),q)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let o=new Map;for(let s of r){let i=Er(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:$.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...J(n)})}};En=class extends X{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(pa(s)||pa(i))return q;let a=Rl(s.value,i.value);return a.valid?((ma(s)||ma(i))&&r.dirty(),{status:r.value,value:a.data}):(R(n,{code:w.invalid_intersection_types}),q)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};En.create=(t,e,r)=>new En({left:t,right:e,typeName:$.ZodIntersection,...J(r)});ar=class t extends X{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.array)return R(n,{code:w.invalid_type,expected:O.array,received:n.parsedType}),q;if(n.data.length<this._def.items.length)return R(n,{code:w.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),q;!this._def.rest&&n.data.length>this._def.items.length&&(R(n,{code:w.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=>We.mergeArray(r,i)):We.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};ar.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ar({items:t,typeName:$.ZodTuple,rest:null,...J(e)})};ha=class t extends X{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!==O.object)return R(n,{code:w.invalid_type,expected:O.object,received:n.parsedType}),q;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new 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?We.mergeObjectAsync(r,o):We.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof X?new t({keyType:e,valueType:r,typeName:$.ZodRecord,...J(n)}):new t({keyType:Br.create(),valueType:e,typeName:$.ZodRecord,...J(r)})}},xo=class extends X{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!==O.map)return R(n,{code:w.invalid_type,expected:O.map,received:n.parsedType}),q;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new 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 q;(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 q;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};xo.create=(t,e,r)=>new xo({valueType:e,keyType:t,typeName:$.ZodMap,...J(r)});vo=class t extends X{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.set)return R(n,{code:w.invalid_type,expected:O.set,received:n.parsedType}),q;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(R(n,{code:w.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(R(n,{code:w.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 q;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:j.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:j.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};vo.create=(t,e)=>new vo({valueType:t,minSize:null,maxSize:null,typeName:$.ZodSet,...J(e)});ga=class t extends X{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.function)return R(r,{code:w.invalid_type,expected:O.function,received:r.parsedType}),q;function n(a,c){return ks({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,fo(),$r].filter(u=>!!u),issueData:{code:w.invalid_arguments,argumentsError:c}})}function o(a,c){return ks({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,fo(),$r].filter(u=>!!u),issueData:{code:w.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof Wr){let a=this;return et(async function(...c){let u=new pt([]),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 et(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new pt([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new pt([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:ar.create(e).rest(Tr.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||ar.create([]).rest(Tr.create()),returns:r||Tr.create(),typeName:$.ZodFunction,...J(n)})}},Tn=class extends X{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})}};Tn.create=(t,e)=>new Tn({getter:t,typeName:$.ZodLazy,...J(e)});Pn=class extends X{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return R(r,{received:r.data,code:w.invalid_literal,expected:this._def.value}),q}return{status:"valid",value:e.data}}get value(){return this._def.value}};Pn.create=(t,e)=>new Pn({value:t,typeName:$.ZodLiteral,...J(e)});Rn=class t extends X{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return R(r,{expected:ne.joinValues(n),received:r.parsedType,code:w.invalid_type}),q}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return R(r,{received:r.data,code:w.invalid_enum_value,options:n}),q}return et(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})}};Rn.create=fy;Cn=class extends X{_parse(e){let r=ne.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==O.string&&n.parsedType!==O.number){let o=ne.objectValues(r);return R(n,{expected:ne.joinValues(o),received:n.parsedType,code:w.invalid_type}),q}if(this._cache||(this._cache=new Set(ne.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=ne.objectValues(r);return R(n,{received:n.data,code:w.invalid_enum_value,options:o}),q}return et(e.data)}get enum(){return this._def.values}};Cn.create=(t,e)=>new Cn({values:t,typeName:$.ZodNativeEnum,...J(e)});Wr=class extends X{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.promise&&r.common.async===!1)return R(r,{code:w.invalid_type,expected:O.promise,received:r.parsedType}),q;let n=r.parsedType===O.promise?r.data:Promise.resolve(r.data);return et(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Wr.create=(t,e)=>new Wr({type:t,typeName:$.ZodPromise,...J(e)});At=class extends X{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===$.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{R(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return q;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?q:c.status==="dirty"?yn(c.value):r.value==="dirty"?yn(c.value):c});{if(r.value==="aborted")return q;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?q:a.status==="dirty"?yn(a.value):r.value==="dirty"?yn(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?q:(a.status==="dirty"&&r.dirty(),i(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?q:(a.status==="dirty"&&r.dirty(),i(a.value).then(()=>({status:r.value,value:a.value}))))}if(o.type==="transform")if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!qr(i))return q;let a=o.transform(i.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>qr(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):q);ne.assertNever(o)}};At.create=(t,e,r)=>new At({schema:t,typeName:$.ZodEffects,effect:e,...J(r)});At.createWithPreprocess=(t,e,r)=>new At({schema:e,effect:{type:"preprocess",transform:t},typeName:$.ZodEffects,...J(r)});mt=class extends X{_parse(e){return this._getType(e)===O.undefined?et(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};mt.create=(t,e)=>new mt({innerType:t,typeName:$.ZodOptional,...J(e)});cr=class extends X{_parse(e){return this._getType(e)===O.null?et(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};cr.create=(t,e)=>new cr({innerType:t,typeName:$.ZodNullable,...J(e)});On=class extends X{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===O.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};On.create=(t,e)=>new On({innerType:t,typeName:$.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...J(e)});In=class extends X{_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 ho(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new pt(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new pt(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};In.create=(t,e)=>new In({innerType:t,typeName:$.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...J(e)});bo=class extends X{_parse(e){if(this._getType(e)!==O.nan){let n=this._getOrReturnCtx(e);return R(n,{code:w.invalid_type,expected:O.nan,received:n.parsedType}),q}return{status:"valid",value:e.data}}};bo.create=t=>new bo({typeName:$.ZodNaN,...J(t)});TT=Symbol("zod_brand"),ws=class extends X{_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}},$s=class t extends X{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?q:s.status==="dirty"?(r.dirty(),yn(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?q:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:$.ZodPipeline})}},An=class extends X{_parse(e){let r=this._def.innerType._parse(e),n=o=>(qr(o)&&(o.value=Object.freeze(o.value)),o);return ho(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};An.create=(t,e)=>new An({innerType:t,typeName:$.ZodReadonly,...J(e)});PT={object:ft.lazycreate};(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"})($||($={}));RT=(t,e={message:`Input not instance of ${t.name}`})=>hy(r=>r instanceof t,e),gy=Br.create,_y=xn.create,CT=bo.create,OT=vn.create,yy=bn.create,IT=Sn.create,AT=_o.create,NT=kn.create,zT=wn.create,jT=Vr.create,DT=Tr.create,MT=Gt.create,LT=yo.create,FT=Pr.create,Cl=ft.create,UT=ft.strictCreate,ZT=$n.create,HT=fa.create,qT=En.create,BT=ar.create,VT=ha.create,WT=xo.create,GT=vo.create,KT=ga.create,JT=Tn.create,YT=Pn.create,XT=Rn.create,QT=Cn.create,eP=Wr.create,tP=At.create,rP=mt.create,nP=cr.create,oP=At.createWithPreprocess,sP=$s.create,iP=()=>gy().optional(),aP=()=>_y().optional(),cP=()=>yy().optional(),uP={string:(t=>Br.create({...t,coerce:!0})),number:(t=>xn.create({...t,coerce:!0})),boolean:(t=>bn.create({...t,coerce:!0})),bigint:(t=>vn.create({...t,coerce:!0})),date:(t=>Sn.create({...t,coerce:!0}))},lP=q});var M={};Ze(M,{BRAND:()=>TT,DIRTY:()=>yn,EMPTY_PATH:()=>sT,INVALID:()=>q,NEVER:()=>lP,OK:()=>et,ParseStatus:()=>We,Schema:()=>X,ZodAny:()=>Vr,ZodArray:()=>Pr,ZodBigInt:()=>vn,ZodBoolean:()=>bn,ZodBranded:()=>ws,ZodCatch:()=>In,ZodDate:()=>Sn,ZodDefault:()=>On,ZodDiscriminatedUnion:()=>fa,ZodEffects:()=>At,ZodEnum:()=>Rn,ZodError:()=>pt,ZodFirstPartyTypeKind:()=>$,ZodFunction:()=>ga,ZodIntersection:()=>En,ZodIssueCode:()=>w,ZodLazy:()=>Tn,ZodLiteral:()=>Pn,ZodMap:()=>xo,ZodNaN:()=>bo,ZodNativeEnum:()=>Cn,ZodNever:()=>Gt,ZodNull:()=>wn,ZodNullable:()=>cr,ZodNumber:()=>xn,ZodObject:()=>ft,ZodOptional:()=>mt,ZodParsedType:()=>O,ZodPipeline:()=>$s,ZodPromise:()=>Wr,ZodReadonly:()=>An,ZodRecord:()=>ha,ZodSchema:()=>X,ZodSet:()=>vo,ZodString:()=>Br,ZodSymbol:()=>_o,ZodTransformer:()=>At,ZodTuple:()=>ar,ZodType:()=>X,ZodUndefined:()=>kn,ZodUnion:()=>$n,ZodUnknown:()=>Tr,ZodVoid:()=>yo,addIssueToContext:()=>R,any:()=>jT,array:()=>FT,bigint:()=>OT,boolean:()=>yy,coerce:()=>uP,custom:()=>hy,date:()=>IT,datetimeRegex:()=>my,defaultErrorMap:()=>$r,discriminatedUnion:()=>HT,effect:()=>tP,enum:()=>XT,function:()=>KT,getErrorMap:()=>fo,getParsedType:()=>ir,instanceof:()=>RT,intersection:()=>qT,isAborted:()=>pa,isAsync:()=>ho,isDirty:()=>ma,isValid:()=>qr,late:()=>PT,lazy:()=>JT,literal:()=>YT,makeIssue:()=>ks,map:()=>WT,nan:()=>CT,nativeEnum:()=>QT,never:()=>MT,null:()=>zT,nullable:()=>nP,number:()=>_y,object:()=>Cl,objectUtil:()=>$l,oboolean:()=>cP,onumber:()=>aP,optional:()=>rP,ostring:()=>iP,pipeline:()=>sP,preprocess:()=>oP,promise:()=>eP,quotelessJson:()=>rT,record:()=>VT,set:()=>GT,setErrorMap:()=>oT,strictObject:()=>UT,string:()=>gy,symbol:()=>AT,transformer:()=>tP,tuple:()=>BT,undefined:()=>NT,union:()=>ZT,unknown:()=>DT,util:()=>ne,void:()=>LT});var _a=v(()=>{da();Tl();ay();Ss();xy();la()});var Es=v(()=>{_a()});function S(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}function vt(t){return t&&Object.assign(ya,t),ya}var pP,Rr,ya,So=v(()=>{pP=Object.freeze({status:"aborted"});Rr=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},ya={}});var oe={};Ze(oe,{BIGINT_FORMAT_RANGES:()=>by,Class:()=>Il,NUMBER_FORMAT_RANGES:()=>Ll,aborted:()=>zn,allowsEval:()=>jl,assert:()=>_P,assertEqual:()=>mP,assertIs:()=>hP,assertNever:()=>gP,assertNotEqual:()=>fP,assignProp:()=>zl,cached:()=>Rs,captureStackTrace:()=>va,cleanEnum:()=>CP,cleanRegex:()=>Os,clone:()=>bt,createTransparentProxy:()=>kP,defineLazy:()=>ve,esc:()=>Nn,escapeRegex:()=>Gr,extend:()=>EP,finalizeIssue:()=>Kt,floatSafeRemainder:()=>Nl,getElementAtPath:()=>yP,getEnumValues:()=>Ps,getLengthableOrigin:()=>Is,getParsedType:()=>SP,getSizableOrigin:()=>Sy,isObject:()=>ko,isPlainObject:()=>wo,issue:()=>Fl,joinValues:()=>xa,jsonStringifyReplacer:()=>Al,merge:()=>TP,normalizeParams:()=>B,nullish:()=>Cs,numKeys:()=>bP,omit:()=>$P,optionalKeys:()=>Ml,partial:()=>PP,pick:()=>wP,prefixIssues:()=>ur,primitiveTypes:()=>vy,promiseAllObject:()=>xP,propertyKeyTypes:()=>Dl,randomString:()=>vP,required:()=>RP,stringifyPrimitive:()=>ba,unwrapMessage:()=>Ts});function mP(t){return t}function fP(t){return t}function hP(t){}function gP(t){throw new Error}function _P(t){}function Ps(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 xa(t,e="|"){return t.map(r=>ba(r)).join(e)}function Al(t,e){return typeof e=="bigint"?e.toString():e}function Rs(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Cs(t){return t==null}function Os(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Nl(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 ve(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 zl(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function yP(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function xP(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 vP(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Nn(t){return JSON.stringify(t)}function ko(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function wo(t){if(ko(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(ko(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function bP(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}function Gr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function bt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function B(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 kP(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 ba(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ml(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}function wP(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 bt(t,{...t._zod.def,shape:r,checks:[]})}function $P(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 bt(t,{...t._zod.def,shape:r,checks:[]})}function EP(t,e){if(!wo(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 zl(this,"shape",n),n},checks:[]};return bt(t,r)}function TP(t,e){return bt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return zl(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function PP(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 bt(e,{...e._zod.def,shape:o,checks:[]})}function RP(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 bt(e,{...e._zod.def,shape:o,checks:[]})}function zn(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function ur(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Ts(t){return typeof t=="string"?t:t?.message}function Kt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=Ts(t.inst?._zod.def?.error?.(t))??Ts(e?.error?.(t))??Ts(r.customError?.(t))??Ts(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Sy(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Is(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Fl(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function CP(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var va,jl,SP,Dl,vy,Ll,by,Il,lr=v(()=>{va=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};jl=Rs(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});SP=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}`)}},Dl=new Set(["string","number","symbol"]),vy=new Set(["string","number","bigint","boolean","symbol","undefined"]);Ll={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]},by={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};Il=class{constructor(...e){}}});function Ul(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 Zl(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 ky,Sa,As,Hl=v(()=>{So();lr();ky=(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,Al,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Sa=S("$ZodError",ky),As=S("$ZodError",ky,{Parent:Error})});var ql,Bl,Vl,Wl,Gl,jn,Kl,Dn,Jl=v(()=>{So();Hl();lr();ql=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 Rr;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Kt(c,s,vt())));throw va(a,o?.callee),a}return i.value},Bl=ql(As),Vl=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=>Kt(c,s,vt())));throw va(a,o?.callee),a}return i.value},Wl=Vl(As),Gl=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 Rr;return s.issues.length?{success:!1,error:new(t??Sa)(s.issues.map(i=>Kt(i,o,vt())))}:{success:!0,data:s.value}},jn=Gl(As),Kl=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=>Kt(i,o,vt())))}:{success:!0,data:s.value}},Dn=Kl(As)});function Ay(){return new RegExp(IP,"u")}function Hy(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 qy(t){return new RegExp(`^${Hy(t)}$`)}function By(t){let e=Hy({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(`^${Uy}T(?:${n})$`)}var wy,$y,Ey,Ty,Py,Ry,Cy,Oy,Yl,Iy,IP,Ny,zy,jy,Dy,My,Xl,Ly,Fy,Uy,Zy,Vy,Wy,Gy,Ky,Jy,Yy,Xy,wa=v(()=>{wy=/^[cC][^\s-]{8,}$/,$y=/^[0-9a-z]+$/,Ey=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Ty=/^[0-9a-vA-V]{20}$/,Py=/^[A-Za-z0-9]{27}$/,Ry=/^[a-zA-Z0-9_-]{21}$/,Cy=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Oy=/^([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})$/,Yl=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)$/,Iy=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,IP="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";Ny=/^(?:(?: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])$/,zy=/^(([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})$/,jy=/^((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])$/,Dy=/^(([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])$/,My=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Xl=/^[A-Za-z0-9_-]*$/,Ly=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,Fy=/^\+(?:[0-9]){6,14}[0-9]$/,Uy="(?:(?:\\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])))",Zy=new RegExp(`^${Uy}$`);Vy=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},Wy=/^\d+$/,Gy=/^-?\d+(?:\.\d+)?/i,Ky=/true|false/i,Jy=/null/i,Yy=/^[^A-Z]*$/,Xy=/^[^a-z]*$/});var Ge,Qy,Ql,ed,ex,tx,rx,nx,ox,Ns,sx,ix,ax,cx,ux,lx,dx,$a=v(()=>{So();wa();lr();Ge=S("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Qy={number:"number",bigint:"bigint",object:"date"},Ql=S("$ZodCheckLessThan",(t,e)=>{Ge.init(t,e);let r=Qy[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})}}),ed=S("$ZodCheckGreaterThan",(t,e)=>{Ge.init(t,e);let r=Qy[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})}}),ex=S("$ZodCheckMultipleOf",(t,e)=>{Ge.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):Nl(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})}}),tx=S("$ZodCheckNumberFormat",(t,e)=>{Ge.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Ll[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=Wy)}),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})}}),rx=S("$ZodCheckMaxLength",(t,e)=>{var r;Ge.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Cs(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=Is(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),nx=S("$ZodCheckMinLength",(t,e)=>{var r;Ge.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Cs(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=Is(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),ox=S("$ZodCheckLengthEquals",(t,e)=>{var r;Ge.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Cs(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=Is(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})}}),Ns=S("$ZodCheckStringFormat",(t,e)=>{var r,n;Ge.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=()=>{})}),sx=S("$ZodCheckRegex",(t,e)=>{Ns.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})}}),ix=S("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Yy),Ns.init(t,e)}),ax=S("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Xy),Ns.init(t,e)}),cx=S("$ZodCheckIncludes",(t,e)=>{Ge.init(t,e);let r=Gr(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})}}),ux=S("$ZodCheckStartsWith",(t,e)=>{Ge.init(t,e);let r=new RegExp(`^${Gr(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})}}),lx=S("$ZodCheckEndsWith",(t,e)=>{Ge.init(t,e);let r=new RegExp(`.*${Gr(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})}}),dx=S("$ZodCheckOverwrite",(t,e)=>{Ge.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}})});var Ea,td=v(()=>{Ea=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(`
19
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var ny={};Ze(ny,{QwenCodeAdapter:()=>kl});import{readFileSync as XE,existsSync as QE}from"node:fs";import{resolve as ty,join as eT}from"node:path";import{homedir as ry}from"node:os";var kl,oy=v(()=>{"use strict";Zu();Sr();kl=class extends ao{constructor(){super([".qwen"])}name="Qwen Code";paradigm="json-stdio";projectDirEnvVar="QWEN_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getSettingsPath(){return ty(ry(),".qwen","settings.json")}getInstructionFiles(){return["QWEN.md"]}generateHookConfig(e){return{PreToolUse:[{matcher:["run_shell_command","read_file","read_many_files","grep_search","web_fetch","agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].join("|"),hooks:[{type:"command",command:ye(`${e}/hooks/pretooluse.mjs`)}]}],PostToolUse:[{matcher:"run_shell_command|read_file|write_file|edit|glob|grep_search|todo_write|agent|ask_user_question|mcp__",hooks:[{type:"command",command:ye(`${e}/hooks/posttooluse.mjs`)}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/sessionstart.mjs`)}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/precompact.mjs`)}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:ye(`${e}/hooks/userpromptsubmit.mjs`)}]}]}}readSettings(){try{let e=XE(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let{writeFileSync:r}=Cg("node:fs");r(this.getSettingsPath(),JSON.stringify(e,null,2))}validateHooks(e){let r=[],o=this.readSettings()?.hooks??{};for(let s of["PreToolUse","PostToolUse","SessionStart","PreCompact","UserPromptSubmit"]){let i=Array.isArray(o[s])&&o[s].length>0;r.push({check:`${s} hook`,status:i?"pass":"fail",message:i?`${s} hook configured in ~/.qwen/settings.json`:`${s} hook not found in ~/.qwen/settings.json`,...i?{}:{fix:`Add ${s} hook to ~/.qwen/settings.json`}})}return r}checkPluginRegistration(){try{let e=this.readSettings();if(e?.mcpServers&&typeof e.mcpServers=="object"){let r=e.mcpServers;return Object.keys(r).some(n=>n.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in mcpServers"}:{check:"Plugin registration",status:"fail",message:"mcpServers exists but context-mode not found",fix:"Add context-mode to mcpServers in ~/.qwen/settings.json"}}return{check:"Plugin registration",status:"warn",message:"No mcpServers in ~/.qwen/settings.json"}}catch{return{check:"Plugin registration",status:"warn",message:"Could not read ~/.qwen/settings.json"}}}getInstalledVersion(){let e=this.readSettings();if(!e)return"not installed";let r=e.hooks;if(!r)return"not installed";let n=["pretooluse.mjs","posttooluse.mjs","precompact.mjs","sessionstart.mjs","userpromptsubmit.mjs"];for(let[,o]of Object.entries(r))if(Array.isArray(o)){for(let s of o)if(s.hooks?.some(a=>a.command&&n.some(c=>a.command.includes(c))))return"installed (hooks configured)"}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[];for(let i of Object.keys(n)){let a=n[i];if(!Array.isArray(a))continue;let c=a.filter(l=>{let p=l.hooks??[];return p.some(m=>m.command&&/context-mode|pretooluse|posttooluse|precompact|sessionstart|userpromptsubmit/i.test(m.command))?p.every(m=>{if(!m.command)return!0;let h=m.command.match(/"[^"]+"\s+"([^"]+\.mjs)"/),g=m.command.match(/node\s+"?([^"]+\.mjs)"?/),y=h||g;return y?QE(y[1]):!0}):!0}),u=a.length-c.length;u>0&&(n[i]=c,o.push(`Removed ${u} stale ${i} hook(s)`))}let s=[{name:"PreToolUse",script:"pretooluse.mjs",matcher:["run_shell_command","read_file","read_many_files","grep_search","web_fetch","agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].join("|")},{name:"PostToolUse",script:"posttooluse.mjs",matcher:"run_shell_command|read_file|write_file|edit|glob|grep_search|todo_write|agent|ask_user_question|mcp__"},{name:"SessionStart",script:"sessionstart.mjs",matcher:""},{name:"PreCompact",script:"precompact.mjs",matcher:""},{name:"UserPromptSubmit",script:"userpromptsubmit.mjs",matcher:""}];for(let{name:i,script:a,matcher:c}of s){let u={matcher:c,hooks:[{type:"command",command:ye(`${e}/hooks/${a}`)}]},l=n[i];if(l&&Array.isArray(l)){let d=l.findIndex(p=>p.hooks?.some(m=>m.command?.includes(a))??!1);d>=0?(l[d]=u,o.push(`Updated ${i} hook`)):(l.push(u),o.push(`Added ${i} hook`)),n[i]=l}else n[i]=[u],o.push(`Created ${i} hooks`)}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{instructionsPath:ty(eT(ry(),".qwen","QWEN.md")),targetPath:"QWEN.md",platformName:"Qwen Code"}}extractSessionId(e){if(e.session_id)return e.session_id;if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return process.env.QWEN_SESSION_ID?process.env.QWEN_SESSION_ID:`pid-${process.ppid}`}}});var iy={};Ze(iy,{PLATFORM_ENV_VARS:()=>sy,detectPlatform:()=>wr,getAdapter:()=>bs,getSessionDirSegments:()=>wl});import{existsSync as Ot}from"node:fs";import{resolve as It}from"node:path";import{homedir as tT}from"node:os";function wl(t){switch(t){case"claude-code":return[".claude"];case"gemini-cli":return[".gemini"];case"antigravity":return[".gemini"];case"openclaw":return[".openclaw"];case"codex":return[".codex"];case"cursor":return[".cursor"];case"vscode-copilot":return[".vscode"];case"kiro":return[".kiro"];case"pi":return[".pi"];case"qwen-code":return[".qwen"];case"kilo":return[".config","kilo"];case"opencode":return[".config","opencode"];case"zed":return[".config","zed"];case"jetbrains-copilot":return[".config","JetBrains"];default:return null}}function wr(t){if(t?.name){let n=t_[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`};if(t.name.startsWith("qwen-cli-mcp-client"))return{platform:"qwen-code",confidence:"high",reason:`MCP clientInfo.name="${t.name}" (qwen-cli pattern)`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","kilo","opencode","codex","vscode-copilot","jetbrains-copilot","cursor","antigravity","kiro","pi","zed","qwen-code"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};for(let[n,o]of sy)if(o.some(s=>process.env[s]))return{platform:n,confidence:"high",reason:`${o.join(" or ")} env var set`};let r=tT();return Ot(It(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Ot(It(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Ot(It(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Ot(It(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Ot(It(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Ot(It(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Ot(It(r,".qwen"))?{platform:"qwen-code",confidence:"medium",reason:"~/.qwen/ directory exists"}:Ot(It(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Ot(It(r,".config","kilo"))?{platform:"kilo",confidence:"medium",reason:"~/.config/kilo/ directory exists"}:Ot(It(r,".config","JetBrains"))?{platform:"jetbrains-copilot",confidence:"medium",reason:"~/.config/JetBrains/ directory exists"}:Ot(It(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Ot(It(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 bs(t){let e=t??wr().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Wu(),Vu));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(f_(),m_));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(y_(),__));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(b_(),v_));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(w_(),k_));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(R_(),P_));return new r}case"jetbrains-copilot":{let{JetBrainsCopilotAdapter:r}=await Promise.resolve().then(()=>(A_(),I_));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(F_(),L_));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(H_(),Z_));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(J_(),K_));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(ey(),Q_));return new r}case"qwen-code":{let{QwenCodeAdapter:r}=await Promise.resolve().then(()=>(oy(),ny));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Wu(),Vu));return new r}}}var sy,ca=v(()=>{"use strict";r_();sy=[["claude-code",["CLAUDE_PROJECT_DIR","CLAUDE_SESSION_ID"]],["antigravity",["ANTIGRAVITY_CLI_ALIAS"]],["cursor",["CURSOR_TRACE_ID","CURSOR_CLI"]],["kilo",["KILO_PID"]],["opencode",["OPENCODE","OPENCODE_PID"]],["zed",["ZED_SESSION_ID","ZED_TERM"]],["codex",["CODEX_THREAD_ID","CODEX_CI"]],["gemini-cli",["GEMINI_PROJECT_DIR","GEMINI_CLI"]],["vscode-copilot",["VSCODE_PID","VSCODE_CWD"]],["jetbrains-copilot",["IDEA_INITIAL_DIRECTORY"]],["qwen-code",["QWEN_PROJECT_DIR"]],["pi",["PI_PROJECT_DIR"]]]});var ne,$l,O,ir,Ss=v(()=>{(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(ne||(ne={}));(function(t){t.mergeShapes=(e,r)=>({...e,...r})})($l||($l={}));O=ne.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),ir=t=>{switch(typeof t){case"undefined":return O.undefined;case"string":return O.string;case"number":return Number.isNaN(t)?O.nan:O.number;case"boolean":return O.boolean;case"function":return O.function;case"bigint":return O.bigint;case"symbol":return O.symbol;case"object":return Array.isArray(t)?O.array:t===null?O.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?O.promise:typeof Map<"u"&&t instanceof Map?O.map:typeof Set<"u"&&t instanceof Set?O.set:typeof Date<"u"&&t instanceof Date?O.date:O.object;default:return O.unknown}}});var $,rT,pt,ua=v(()=>{Ss();$=ne.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),rT=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),pt=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,ne.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};pt.create=t=>new pt(t)});var nT,$r,El=v(()=>{ua();Ss();nT=(t,e)=>{let r;switch(t.code){case $.invalid_type:t.received===O.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case $.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,ne.jsonStringifyReplacer)}`;break;case $.unrecognized_keys:r=`Unrecognized key(s) in object: ${ne.joinValues(t.keys,", ")}`;break;case $.invalid_union:r="Invalid input";break;case $.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${ne.joinValues(t.options)}`;break;case $.invalid_enum_value:r=`Invalid enum value. Expected ${ne.joinValues(t.options)}, received '${t.received}'`;break;case $.invalid_arguments:r="Invalid function arguments";break;case $.invalid_return_type:r="Invalid function return type";break;case $.invalid_date:r="Invalid date";break;case $.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:ne.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case $.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 $.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 $.custom:r="Invalid input";break;case $.invalid_intersection_types:r="Intersection results could not be merged";break;case $.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case $.not_finite:r="Number must be finite";break;default:r=e.defaultError,ne.assertNever(t)}return{message:r}},$r=nT});function oT(t){ay=t}function fo(){return ay}var ay,la=v(()=>{El();ay=$r});function R(t,e){let r=fo(),n=ks({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===$r?void 0:$r].filter(o=>!!o)});t.common.issues.push(n)}var ks,sT,We,q,yn,et,da,pa,qr,ho,Tl=v(()=>{la();El();ks=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}},sT=[];We=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return q;o.status==="dirty"&&e.dirty(),n.push(o.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let o of r){let s=await o.key,i=await o.value;n.push({key:s,value:i})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:i}=o;if(s.status==="aborted"||i.status==="aborted")return q;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||o.alwaysSet)&&(n[s.value]=i.value)}return{status:e.value,value:n}}},q=Object.freeze({status:"aborted"}),yn=t=>({status:"dirty",value:t}),et=t=>({status:"valid",value:t}),da=t=>t.status==="aborted",pa=t=>t.status==="dirty",qr=t=>t.status==="valid",ho=t=>typeof Promise<"u"&&t instanceof Promise});var cy=v(()=>{});var j,uy=v(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(j||(j={}))});function J(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}}function my(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 ST(t){return new RegExp(`^${my(t)}$`)}function fy(t){let e=`${py}T${my(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 kT(t,e){return!!((e==="v4"||!e)&&hT.test(t)||(e==="v6"||!e)&&_T.test(t))}function wT(t,e){if(!dT.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 $T(t,e){return!!((e==="v4"||!e)&&gT.test(t)||(e==="v6"||!e)&&yT.test(t))}function ET(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 go(t){if(t instanceof ft){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=mt.create(go(n))}return new ft({...t._def,shape:()=>e})}else return t instanceof Pr?new Pr({...t._def,type:go(t.element)}):t instanceof mt?mt.create(go(t.unwrap())):t instanceof cr?cr.create(go(t.unwrap())):t instanceof ar?ar.create(t.items.map(e=>go(e))):t}function Rl(t,e){let r=ir(t),n=ir(e);if(t===e)return{valid:!0,data:t};if(r===O.object&&n===O.object){let o=ne.objectKeys(e),s=ne.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=Rl(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===O.array&&n===O.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=Rl(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===O.date&&n===O.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}function hy(t,e){return new Rn({values:t,typeName:T.ZodEnum,...J(e)})}function dy(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function gy(t,e={},r){return t?Vr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=dy(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=dy(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Vr.create()}var At,ly,X,iT,aT,cT,uT,lT,dT,pT,mT,fT,Pl,hT,gT,_T,yT,xT,vT,py,bT,Br,xn,vn,bn,Sn,_o,kn,wn,Vr,Tr,Gt,yo,Pr,ft,$n,Er,ma,En,ar,fa,xo,vo,ha,Tn,Pn,Rn,Cn,Wr,Nt,mt,cr,On,In,bo,TT,ws,$s,An,PT,T,RT,_y,yy,CT,OT,xy,IT,AT,NT,zT,jT,DT,MT,LT,FT,Cl,UT,ZT,HT,qT,BT,VT,WT,GT,KT,JT,YT,XT,QT,eP,tP,rP,nP,oP,sP,iP,aP,cP,uP,lP,vy=v(()=>{ua();la();uy();Tl();Ss();At=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},ly=(t,e)=>{if(qr(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 pt(t.common.issues);return this._error=r,this._error}}};X=class{get description(){return this._def.description}_getType(e){return ir(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:ir(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new We,ctx:{common:e.parent.common,data:e.data,parsedType:ir(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(ho(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:ir(e)},o=this._parseSync({data:e,path:n.path,parent:n});return ly(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:ir(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return qr(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=>qr(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:ir(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(ho(o)?o:Promise.resolve(o));return ly(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:$.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 Nt({schema:this,typeName:T.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return mt.create(this,this._def)}nullable(){return cr.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Pr.create(this)}promise(){return Wr.create(this,this._def)}or(e){return $n.create([this,e],this._def)}and(e){return En.create(this,e,this._def)}transform(e){return new Nt({...J(this._def),schema:this,typeName:T.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new On({...J(this._def),innerType:this,defaultValue:r,typeName:T.ZodDefault})}brand(){return new ws({typeName:T.ZodBranded,type:this,...J(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new In({...J(this._def),innerType:this,catchValue:r,typeName:T.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return $s.create(this,e)}readonly(){return An.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},iT=/^c[^\s-]{8,}$/i,aT=/^[0-9a-z]+$/,cT=/^[0-9A-HJKMNP-TV-Z]{26}$/i,uT=/^[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,lT=/^[a-z0-9_-]{21}$/i,dT=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,pT=/^[-+]?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)?)??$/,mT=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,fT="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",hT=/^(?:(?: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])$/,gT=/^(?:(?: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])$/,_T=/^(([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]))$/,yT=/^(([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])$/,xT=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,vT=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,py="((\\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])))",bT=new RegExp(`^${py}$`);Br=class t extends X{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==O.string){let s=this._getOrReturnCtx(e);return R(s,{code:$.invalid_type,expected:O.string,received:s.parsedType}),q}let n=new We,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),R(o,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),R(o,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?R(o,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&R(o,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")mT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"email",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Pl||(Pl=new RegExp(fT,"u")),Pl.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"emoji",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")uT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"uuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")lT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"nanoid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")iT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")aT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cuid2",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")cT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"ulid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),R(o,{validation:"url",code:$.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"regex",code:$.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),R(o,{code:$.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),R(o,{code:$.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),R(o,{code:$.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?fy(s).test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:$.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?bT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:$.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?ST(s).test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:$.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?pT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"duration",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?kT(e.data,s.version)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"ip",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?wT(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"jwt",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?$T(e.data,s.version)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cidr",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?xT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?vT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64url",code:$.invalid_string,message:s.message}),n.dirty()):ne.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:$.invalid_string,...j.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...j.errToObj(e)})}url(e){return this._addCheck({kind:"url",...j.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...j.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...j.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...j.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...j.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...j.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...j.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...j.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...j.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...j.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...j.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...j.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,...j.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,...j.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...j.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...j.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...j.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...j.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...j.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...j.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...j.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...j.errToObj(r)})}nonempty(e){return this.min(1,j.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}};Br.create=t=>new Br({checks:[],typeName:T.ZodString,coerce:t?.coerce??!1,...J(t)});xn=class t extends X{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)!==O.number){let s=this._getOrReturnCtx(e);return R(s,{code:$.invalid_type,expected:O.number,received:s.parsedType}),q}let n,o=new We;for(let s of this._def.checks)s.kind==="int"?ne.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),R(n,{code:$.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),R(n,{code:$.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),R(n,{code:$.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?ET(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),R(n,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),R(n,{code:$.not_finite,message:s.message}),o.dirty()):ne.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,j.toString(r))}gt(e,r){return this.setLimit("min",e,!1,j.toString(r))}lte(e,r){return this.setLimit("max",e,!0,j.toString(r))}lt(e,r){return this.setLimit("max",e,!1,j.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:j.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:j.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:j.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:j.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:j.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:j.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:j.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:j.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:j.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:j.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&ne.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};xn.create=t=>new xn({checks:[],typeName:T.ZodNumber,coerce:t?.coerce||!1,...J(t)});vn=class t extends X{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)!==O.bigint)return this._getInvalidInput(e);let n,o=new We;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),R(n,{code:$.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),R(n,{code:$.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),R(n,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):ne.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return R(r,{code:$.invalid_type,expected:O.bigint,received:r.parsedType}),q}gte(e,r){return this.setLimit("min",e,!0,j.toString(r))}gt(e,r){return this.setLimit("min",e,!1,j.toString(r))}lte(e,r){return this.setLimit("max",e,!0,j.toString(r))}lt(e,r){return this.setLimit("max",e,!1,j.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:j.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:j.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:j.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:j.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:j.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:j.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}};vn.create=t=>new vn({checks:[],typeName:T.ZodBigInt,coerce:t?.coerce??!1,...J(t)});bn=class extends X{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==O.boolean){let n=this._getOrReturnCtx(e);return R(n,{code:$.invalid_type,expected:O.boolean,received:n.parsedType}),q}return et(e.data)}};bn.create=t=>new bn({typeName:T.ZodBoolean,coerce:t?.coerce||!1,...J(t)});Sn=class t extends X{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==O.date){let s=this._getOrReturnCtx(e);return R(s,{code:$.invalid_type,expected:O.date,received:s.parsedType}),q}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return R(s,{code:$.invalid_date}),q}let n=new We,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),R(o,{code:$.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),R(o,{code:$.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):ne.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:j.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:j.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}};Sn.create=t=>new Sn({checks:[],coerce:t?.coerce||!1,typeName:T.ZodDate,...J(t)});_o=class extends X{_parse(e){if(this._getType(e)!==O.symbol){let n=this._getOrReturnCtx(e);return R(n,{code:$.invalid_type,expected:O.symbol,received:n.parsedType}),q}return et(e.data)}};_o.create=t=>new _o({typeName:T.ZodSymbol,...J(t)});kn=class extends X{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return R(n,{code:$.invalid_type,expected:O.undefined,received:n.parsedType}),q}return et(e.data)}};kn.create=t=>new kn({typeName:T.ZodUndefined,...J(t)});wn=class extends X{_parse(e){if(this._getType(e)!==O.null){let n=this._getOrReturnCtx(e);return R(n,{code:$.invalid_type,expected:O.null,received:n.parsedType}),q}return et(e.data)}};wn.create=t=>new wn({typeName:T.ZodNull,...J(t)});Vr=class extends X{constructor(){super(...arguments),this._any=!0}_parse(e){return et(e.data)}};Vr.create=t=>new Vr({typeName:T.ZodAny,...J(t)});Tr=class extends X{constructor(){super(...arguments),this._unknown=!0}_parse(e){return et(e.data)}};Tr.create=t=>new Tr({typeName:T.ZodUnknown,...J(t)});Gt=class extends X{_parse(e){let r=this._getOrReturnCtx(e);return R(r,{code:$.invalid_type,expected:O.never,received:r.parsedType}),q}};Gt.create=t=>new Gt({typeName:T.ZodNever,...J(t)});yo=class extends X{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return R(n,{code:$.invalid_type,expected:O.void,received:n.parsedType}),q}return et(e.data)}};yo.create=t=>new yo({typeName:T.ZodVoid,...J(t)});Pr=class t extends X{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==O.array)return R(r,{code:$.invalid_type,expected:O.array,received:r.parsedType}),q;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(R(r,{code:i?$.too_big:$.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(R(r,{code:$.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(R(r,{code:$.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((i,a)=>o.type._parseAsync(new At(r,i,r.path,a)))).then(i=>We.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new At(r,i,r.path,a)));return We.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:j.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:j.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:j.toString(r)}})}nonempty(e){return this.min(1,e)}};Pr.create=(t,e)=>new Pr({type:t,minLength:null,maxLength:null,exactLength:null,typeName:T.ZodArray,...J(e)});ft=class t extends X{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=ne.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==O.object){let u=this._getOrReturnCtx(e);return R(u,{code:$.invalid_type,expected:O.object,received:u.parsedType}),q}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof 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 At(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&&(R(o,{code:$.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new At(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,p=await l.value;u.push({key:d,value:p,alwaysSet:l.alwaysSet})}return u}).then(u=>We.mergeObjectSync(n,u)):We.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return j.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:j.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:T.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of ne.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of ne.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return go(this)}partial(e){let r={};for(let n of ne.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of ne.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof mt;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return hy(ne.objectKeys(this.shape))}};ft.create=(t,e)=>new ft({shape:()=>t,unknownKeys:"strip",catchall:Gt.create(),typeName:T.ZodObject,...J(e)});ft.strictCreate=(t,e)=>new ft({shape:()=>t,unknownKeys:"strict",catchall:Gt.create(),typeName:T.ZodObject,...J(e)});ft.lazycreate=(t,e)=>new ft({shape:t,unknownKeys:"strip",catchall:Gt.create(),typeName:T.ZodObject,...J(e)});$n=class extends X{_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 pt(a.ctx.common.issues));return R(r,{code:$.invalid_union,unionErrors:i}),q}if(r.common.async)return Promise.all(n.map(async s=>{let i={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:i}),ctx:i}})).then(o);{let s,i=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},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 pt(c));return R(r,{code:$.invalid_union,unionErrors:a}),q}}get options(){return this._def.options}};$n.create=(t,e)=>new $n({options:t,typeName:T.ZodUnion,...J(e)});Er=t=>t instanceof Tn?Er(t.schema):t instanceof Nt?Er(t.innerType()):t instanceof Pn?[t.value]:t instanceof Rn?t.options:t instanceof Cn?ne.objectValues(t.enum):t instanceof On?Er(t._def.innerType):t instanceof kn?[void 0]:t instanceof wn?[null]:t instanceof mt?[void 0,...Er(t.unwrap())]:t instanceof cr?[null,...Er(t.unwrap())]:t instanceof ws||t instanceof An?Er(t.unwrap()):t instanceof In?Er(t._def.innerType):[],ma=class t extends X{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.object)return R(r,{code:$.invalid_type,expected:O.object,received:r.parsedType}),q;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(R(r,{code:$.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),q)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let o=new Map;for(let s of r){let i=Er(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:T.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...J(n)})}};En=class extends X{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(da(s)||da(i))return q;let a=Rl(s.value,i.value);return a.valid?((pa(s)||pa(i))&&r.dirty(),{status:r.value,value:a.data}):(R(n,{code:$.invalid_intersection_types}),q)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};En.create=(t,e,r)=>new En({left:t,right:e,typeName:T.ZodIntersection,...J(r)});ar=class t extends X{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.array)return R(n,{code:$.invalid_type,expected:O.array,received:n.parsedType}),q;if(n.data.length<this._def.items.length)return R(n,{code:$.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),q;!this._def.rest&&n.data.length>this._def.items.length&&(R(n,{code:$.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new At(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>We.mergeArray(r,i)):We.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};ar.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ar({items:t,typeName:T.ZodTuple,rest:null,...J(e)})};fa=class t extends X{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!==O.object)return R(n,{code:$.invalid_type,expected:O.object,received:n.parsedType}),q;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new At(n,a,n.path,a)),value:i._parse(new At(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?We.mergeObjectAsync(r,o):We.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof X?new t({keyType:e,valueType:r,typeName:T.ZodRecord,...J(n)}):new t({keyType:Br.create(),valueType:e,typeName:T.ZodRecord,...J(r)})}},xo=class extends X{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!==O.map)return R(n,{code:$.invalid_type,expected:O.map,received:n.parsedType}),q;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new At(n,a,n.path,[u,"key"])),value:s._parse(new At(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return q;(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 q;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};xo.create=(t,e,r)=>new xo({valueType:e,keyType:t,typeName:T.ZodMap,...J(r)});vo=class t extends X{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.set)return R(n,{code:$.invalid_type,expected:O.set,received:n.parsedType}),q;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(R(n,{code:$.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(R(n,{code:$.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 q;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new At(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:j.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:j.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};vo.create=(t,e)=>new vo({valueType:t,minSize:null,maxSize:null,typeName:T.ZodSet,...J(e)});ha=class t extends X{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.function)return R(r,{code:$.invalid_type,expected:O.function,received:r.parsedType}),q;function n(a,c){return ks({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,fo(),$r].filter(u=>!!u),issueData:{code:$.invalid_arguments,argumentsError:c}})}function o(a,c){return ks({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,fo(),$r].filter(u=>!!u),issueData:{code:$.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof Wr){let a=this;return et(async function(...c){let u=new pt([]),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 et(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new pt([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new pt([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:ar.create(e).rest(Tr.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||ar.create([]).rest(Tr.create()),returns:r||Tr.create(),typeName:T.ZodFunction,...J(n)})}},Tn=class extends X{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})}};Tn.create=(t,e)=>new Tn({getter:t,typeName:T.ZodLazy,...J(e)});Pn=class extends X{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return R(r,{received:r.data,code:$.invalid_literal,expected:this._def.value}),q}return{status:"valid",value:e.data}}get value(){return this._def.value}};Pn.create=(t,e)=>new Pn({value:t,typeName:T.ZodLiteral,...J(e)});Rn=class t extends X{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return R(r,{expected:ne.joinValues(n),received:r.parsedType,code:$.invalid_type}),q}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return R(r,{received:r.data,code:$.invalid_enum_value,options:n}),q}return et(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})}};Rn.create=hy;Cn=class extends X{_parse(e){let r=ne.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==O.string&&n.parsedType!==O.number){let o=ne.objectValues(r);return R(n,{expected:ne.joinValues(o),received:n.parsedType,code:$.invalid_type}),q}if(this._cache||(this._cache=new Set(ne.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=ne.objectValues(r);return R(n,{received:n.data,code:$.invalid_enum_value,options:o}),q}return et(e.data)}get enum(){return this._def.values}};Cn.create=(t,e)=>new Cn({values:t,typeName:T.ZodNativeEnum,...J(e)});Wr=class extends X{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.promise&&r.common.async===!1)return R(r,{code:$.invalid_type,expected:O.promise,received:r.parsedType}),q;let n=r.parsedType===O.promise?r.data:Promise.resolve(r.data);return et(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Wr.create=(t,e)=>new Wr({type:t,typeName:T.ZodPromise,...J(e)});Nt=class extends X{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===T.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{R(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return q;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?q:c.status==="dirty"?yn(c.value):r.value==="dirty"?yn(c.value):c});{if(r.value==="aborted")return q;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?q:a.status==="dirty"?yn(a.value):r.value==="dirty"?yn(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?q:(a.status==="dirty"&&r.dirty(),i(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?q:(a.status==="dirty"&&r.dirty(),i(a.value).then(()=>({status:r.value,value:a.value}))))}if(o.type==="transform")if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!qr(i))return q;let a=o.transform(i.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>qr(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):q);ne.assertNever(o)}};Nt.create=(t,e,r)=>new Nt({schema:t,typeName:T.ZodEffects,effect:e,...J(r)});Nt.createWithPreprocess=(t,e,r)=>new Nt({schema:e,effect:{type:"preprocess",transform:t},typeName:T.ZodEffects,...J(r)});mt=class extends X{_parse(e){return this._getType(e)===O.undefined?et(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};mt.create=(t,e)=>new mt({innerType:t,typeName:T.ZodOptional,...J(e)});cr=class extends X{_parse(e){return this._getType(e)===O.null?et(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};cr.create=(t,e)=>new cr({innerType:t,typeName:T.ZodNullable,...J(e)});On=class extends X{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===O.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};On.create=(t,e)=>new On({innerType:t,typeName:T.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...J(e)});In=class extends X{_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 ho(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new pt(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new pt(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};In.create=(t,e)=>new In({innerType:t,typeName:T.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...J(e)});bo=class extends X{_parse(e){if(this._getType(e)!==O.nan){let n=this._getOrReturnCtx(e);return R(n,{code:$.invalid_type,expected:O.nan,received:n.parsedType}),q}return{status:"valid",value:e.data}}};bo.create=t=>new bo({typeName:T.ZodNaN,...J(t)});TT=Symbol("zod_brand"),ws=class extends X{_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}},$s=class t extends X{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?q:s.status==="dirty"?(r.dirty(),yn(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?q:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:T.ZodPipeline})}},An=class extends X{_parse(e){let r=this._def.innerType._parse(e),n=o=>(qr(o)&&(o.value=Object.freeze(o.value)),o);return ho(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};An.create=(t,e)=>new An({innerType:t,typeName:T.ZodReadonly,...J(e)});PT={object:ft.lazycreate};(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(T||(T={}));RT=(t,e={message:`Input not instance of ${t.name}`})=>gy(r=>r instanceof t,e),_y=Br.create,yy=xn.create,CT=bo.create,OT=vn.create,xy=bn.create,IT=Sn.create,AT=_o.create,NT=kn.create,zT=wn.create,jT=Vr.create,DT=Tr.create,MT=Gt.create,LT=yo.create,FT=Pr.create,Cl=ft.create,UT=ft.strictCreate,ZT=$n.create,HT=ma.create,qT=En.create,BT=ar.create,VT=fa.create,WT=xo.create,GT=vo.create,KT=ha.create,JT=Tn.create,YT=Pn.create,XT=Rn.create,QT=Cn.create,eP=Wr.create,tP=Nt.create,rP=mt.create,nP=cr.create,oP=Nt.createWithPreprocess,sP=$s.create,iP=()=>_y().optional(),aP=()=>yy().optional(),cP=()=>xy().optional(),uP={string:(t=>Br.create({...t,coerce:!0})),number:(t=>xn.create({...t,coerce:!0})),boolean:(t=>bn.create({...t,coerce:!0})),bigint:(t=>vn.create({...t,coerce:!0})),date:(t=>Sn.create({...t,coerce:!0}))},lP=q});var M={};Ze(M,{BRAND:()=>TT,DIRTY:()=>yn,EMPTY_PATH:()=>sT,INVALID:()=>q,NEVER:()=>lP,OK:()=>et,ParseStatus:()=>We,Schema:()=>X,ZodAny:()=>Vr,ZodArray:()=>Pr,ZodBigInt:()=>vn,ZodBoolean:()=>bn,ZodBranded:()=>ws,ZodCatch:()=>In,ZodDate:()=>Sn,ZodDefault:()=>On,ZodDiscriminatedUnion:()=>ma,ZodEffects:()=>Nt,ZodEnum:()=>Rn,ZodError:()=>pt,ZodFirstPartyTypeKind:()=>T,ZodFunction:()=>ha,ZodIntersection:()=>En,ZodIssueCode:()=>$,ZodLazy:()=>Tn,ZodLiteral:()=>Pn,ZodMap:()=>xo,ZodNaN:()=>bo,ZodNativeEnum:()=>Cn,ZodNever:()=>Gt,ZodNull:()=>wn,ZodNullable:()=>cr,ZodNumber:()=>xn,ZodObject:()=>ft,ZodOptional:()=>mt,ZodParsedType:()=>O,ZodPipeline:()=>$s,ZodPromise:()=>Wr,ZodReadonly:()=>An,ZodRecord:()=>fa,ZodSchema:()=>X,ZodSet:()=>vo,ZodString:()=>Br,ZodSymbol:()=>_o,ZodTransformer:()=>Nt,ZodTuple:()=>ar,ZodType:()=>X,ZodUndefined:()=>kn,ZodUnion:()=>$n,ZodUnknown:()=>Tr,ZodVoid:()=>yo,addIssueToContext:()=>R,any:()=>jT,array:()=>FT,bigint:()=>OT,boolean:()=>xy,coerce:()=>uP,custom:()=>gy,date:()=>IT,datetimeRegex:()=>fy,defaultErrorMap:()=>$r,discriminatedUnion:()=>HT,effect:()=>tP,enum:()=>XT,function:()=>KT,getErrorMap:()=>fo,getParsedType:()=>ir,instanceof:()=>RT,intersection:()=>qT,isAborted:()=>da,isAsync:()=>ho,isDirty:()=>pa,isValid:()=>qr,late:()=>PT,lazy:()=>JT,literal:()=>YT,makeIssue:()=>ks,map:()=>WT,nan:()=>CT,nativeEnum:()=>QT,never:()=>MT,null:()=>zT,nullable:()=>nP,number:()=>yy,object:()=>Cl,objectUtil:()=>$l,oboolean:()=>cP,onumber:()=>aP,optional:()=>rP,ostring:()=>iP,pipeline:()=>sP,preprocess:()=>oP,promise:()=>eP,quotelessJson:()=>rT,record:()=>VT,set:()=>GT,setErrorMap:()=>oT,strictObject:()=>UT,string:()=>_y,symbol:()=>AT,transformer:()=>tP,tuple:()=>BT,undefined:()=>NT,union:()=>ZT,unknown:()=>DT,util:()=>ne,void:()=>LT});var ga=v(()=>{la();Tl();cy();Ss();vy();ua()});var Es=v(()=>{ga()});function S(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}function vt(t){return t&&Object.assign(_a,t),_a}var pP,Rr,_a,So=v(()=>{pP=Object.freeze({status:"aborted"});Rr=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},_a={}});var oe={};Ze(oe,{BIGINT_FORMAT_RANGES:()=>Sy,Class:()=>Il,NUMBER_FORMAT_RANGES:()=>Ll,aborted:()=>zn,allowsEval:()=>jl,assert:()=>_P,assertEqual:()=>mP,assertIs:()=>hP,assertNever:()=>gP,assertNotEqual:()=>fP,assignProp:()=>zl,cached:()=>Rs,captureStackTrace:()=>xa,cleanEnum:()=>CP,cleanRegex:()=>Os,clone:()=>bt,createTransparentProxy:()=>kP,defineLazy:()=>be,esc:()=>Nn,escapeRegex:()=>Gr,extend:()=>EP,finalizeIssue:()=>Kt,floatSafeRemainder:()=>Nl,getElementAtPath:()=>yP,getEnumValues:()=>Ps,getLengthableOrigin:()=>Is,getParsedType:()=>SP,getSizableOrigin:()=>ky,isObject:()=>ko,isPlainObject:()=>wo,issue:()=>Fl,joinValues:()=>ya,jsonStringifyReplacer:()=>Al,merge:()=>TP,normalizeParams:()=>B,nullish:()=>Cs,numKeys:()=>bP,omit:()=>$P,optionalKeys:()=>Ml,partial:()=>PP,pick:()=>wP,prefixIssues:()=>ur,primitiveTypes:()=>by,promiseAllObject:()=>xP,propertyKeyTypes:()=>Dl,randomString:()=>vP,required:()=>RP,stringifyPrimitive:()=>va,unwrapMessage:()=>Ts});function mP(t){return t}function fP(t){return t}function hP(t){}function gP(t){throw new Error}function _P(t){}function Ps(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 ya(t,e="|"){return t.map(r=>va(r)).join(e)}function Al(t,e){return typeof e=="bigint"?e.toString():e}function Rs(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Cs(t){return t==null}function Os(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Nl(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 be(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 zl(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function yP(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function xP(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 vP(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Nn(t){return JSON.stringify(t)}function ko(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function wo(t){if(ko(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(ko(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function bP(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}function Gr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function bt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function B(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 kP(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 va(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ml(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}function wP(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 bt(t,{...t._zod.def,shape:r,checks:[]})}function $P(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 bt(t,{...t._zod.def,shape:r,checks:[]})}function EP(t,e){if(!wo(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 zl(this,"shape",n),n},checks:[]};return bt(t,r)}function TP(t,e){return bt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return zl(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function PP(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 bt(e,{...e._zod.def,shape:o,checks:[]})}function RP(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 bt(e,{...e._zod.def,shape:o,checks:[]})}function zn(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function ur(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Ts(t){return typeof t=="string"?t:t?.message}function Kt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=Ts(t.inst?._zod.def?.error?.(t))??Ts(e?.error?.(t))??Ts(r.customError?.(t))??Ts(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function ky(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Is(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Fl(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function CP(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var xa,jl,SP,Dl,by,Ll,Sy,Il,lr=v(()=>{xa=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};jl=Rs(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});SP=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}`)}},Dl=new Set(["string","number","symbol"]),by=new Set(["string","number","bigint","boolean","symbol","undefined"]);Ll={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]},Sy={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};Il=class{constructor(...e){}}});function Ul(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 Zl(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 wy,ba,As,Hl=v(()=>{So();lr();wy=(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,Al,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},ba=S("$ZodError",wy),As=S("$ZodError",wy,{Parent:Error})});var ql,Bl,Vl,Wl,Gl,jn,Kl,Dn,Jl=v(()=>{So();Hl();lr();ql=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 Rr;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Kt(c,s,vt())));throw xa(a,o?.callee),a}return i.value},Bl=ql(As),Vl=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=>Kt(c,s,vt())));throw xa(a,o?.callee),a}return i.value},Wl=Vl(As),Gl=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 Rr;return s.issues.length?{success:!1,error:new(t??ba)(s.issues.map(i=>Kt(i,o,vt())))}:{success:!0,data:s.value}},jn=Gl(As),Kl=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=>Kt(i,o,vt())))}:{success:!0,data:s.value}},Dn=Kl(As)});function Ny(){return new RegExp(IP,"u")}function qy(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 By(t){return new RegExp(`^${qy(t)}$`)}function Vy(t){let e=qy({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(`^${Zy}T(?:${n})$`)}var $y,Ey,Ty,Py,Ry,Cy,Oy,Iy,Yl,Ay,IP,zy,jy,Dy,My,Ly,Xl,Fy,Uy,Zy,Hy,Wy,Gy,Ky,Jy,Yy,Xy,Qy,ka=v(()=>{$y=/^[cC][^\s-]{8,}$/,Ey=/^[0-9a-z]+$/,Ty=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Py=/^[0-9a-vA-V]{20}$/,Ry=/^[A-Za-z0-9]{27}$/,Cy=/^[a-zA-Z0-9_-]{21}$/,Oy=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Iy=/^([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})$/,Yl=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)$/,Ay=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,IP="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";zy=/^(?:(?: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])$/,jy=/^(([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})$/,Dy=/^((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])$/,My=/^(([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])$/,Ly=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Xl=/^[A-Za-z0-9_-]*$/,Fy=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,Uy=/^\+(?:[0-9]){6,14}[0-9]$/,Zy="(?:(?:\\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])))",Hy=new RegExp(`^${Zy}$`);Wy=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},Gy=/^\d+$/,Ky=/^-?\d+(?:\.\d+)?/i,Jy=/true|false/i,Yy=/null/i,Xy=/^[^A-Z]*$/,Qy=/^[^a-z]*$/});var Ge,ex,Ql,ed,tx,rx,nx,ox,sx,Ns,ix,ax,cx,ux,lx,dx,px,wa=v(()=>{So();ka();lr();Ge=S("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),ex={number:"number",bigint:"bigint",object:"date"},Ql=S("$ZodCheckLessThan",(t,e)=>{Ge.init(t,e);let r=ex[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})}}),ed=S("$ZodCheckGreaterThan",(t,e)=>{Ge.init(t,e);let r=ex[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})}}),tx=S("$ZodCheckMultipleOf",(t,e)=>{Ge.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):Nl(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})}}),rx=S("$ZodCheckNumberFormat",(t,e)=>{Ge.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Ll[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=Gy)}),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})}}),nx=S("$ZodCheckMaxLength",(t,e)=>{var r;Ge.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Cs(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=Is(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),ox=S("$ZodCheckMinLength",(t,e)=>{var r;Ge.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Cs(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=Is(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),sx=S("$ZodCheckLengthEquals",(t,e)=>{var r;Ge.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Cs(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=Is(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})}}),Ns=S("$ZodCheckStringFormat",(t,e)=>{var r,n;Ge.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=()=>{})}),ix=S("$ZodCheckRegex",(t,e)=>{Ns.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})}}),ax=S("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Xy),Ns.init(t,e)}),cx=S("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Qy),Ns.init(t,e)}),ux=S("$ZodCheckIncludes",(t,e)=>{Ge.init(t,e);let r=Gr(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})}}),lx=S("$ZodCheckStartsWith",(t,e)=>{Ge.init(t,e);let r=new RegExp(`^${Gr(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})}}),dx=S("$ZodCheckEndsWith",(t,e)=>{Ge.init(t,e);let r=new RegExp(`.*${Gr(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})}}),px=S("$ZodCheckOverwrite",(t,e)=>{Ge.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}})});var $a,td=v(()=>{$a=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(`
20
20
  `).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(`
21
- `))}}});var mx,rd=v(()=>{mx={major:4,minor:0,patch:0}});function Tx(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}function AP(t){if(!Xl.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Tx(r)}function NP(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}}function fx(t,e,r){t.issues.length&&e.issues.push(...ur(r,t.issues)),e.value[r]=t.value}function Ta(t,e,r){t.issues.length&&e.issues.push(...ur(r,t.issues)),e.value[r]=t.value}function hx(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(...ur(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}function gx(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=>Kt(s,n,vt())))}),e}function nd(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(wo(t)&&wo(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=nd(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=nd(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 _x(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),zn(t))return t;let n=nd(e.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return t.value=n.data,t}function yx(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}function xx(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}function vx(t,e,r){return zn(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}function bx(t){return t.value=Object.freeze(t.value),t}function Sx(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(Fl(o))}}var ge,zs,be,od,sd,id,ad,cd,ud,ld,dd,pd,md,fd,kx,wx,$x,Ex,hd,gd,_d,yd,xd,vd,bd,Sd,Pa,kd,wd,$d,Ed,Td,Pd,Ra,Ca,Rd,Cd,Od,Id,Ad,Nd,zd,jd,Dd,Md,Ld,Fd,Ud,Zd,Hd,Px=v(()=>{$a();So();td();Jl();wa();lr();rd();lr();ge=S("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=mx;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=zn(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,p=l._zod.check(s);if(p instanceof Promise&&a?.async===!1)throw new Rr;if(u||p instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await p,s.issues.length!==d&&(c||(c=zn(s,d)))});else{if(s.issues.length===d)continue;c||(c=zn(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 Rr;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=jn(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Dn(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),zs=S("$ZodString",(t,e)=>{ge.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Vy(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}}),be=S("$ZodStringFormat",(t,e)=>{Ns.init(t,e),zs.init(t,e)}),od=S("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Oy),be.init(t,e)}),sd=S("$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=Yl(n))}else e.pattern??(e.pattern=Yl());be.init(t,e)}),id=S("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Iy),be.init(t,e)}),ad=S("$ZodURL",(t,e)=>{be.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:Ly.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})}}}),cd=S("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Ay()),be.init(t,e)}),ud=S("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Ry),be.init(t,e)}),ld=S("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=wy),be.init(t,e)}),dd=S("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=$y),be.init(t,e)}),pd=S("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Ey),be.init(t,e)}),md=S("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Ty),be.init(t,e)}),fd=S("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Py),be.init(t,e)}),kx=S("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=By(e)),be.init(t,e)}),wx=S("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Zy),be.init(t,e)}),$x=S("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=qy(e)),be.init(t,e)}),Ex=S("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Cy),be.init(t,e)}),hd=S("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Ny),be.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),gd=S("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=zy),be.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})}}}),_d=S("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=jy),be.init(t,e)}),yd=S("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Dy),be.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})}}});xd=S("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=My),be.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Tx(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});vd=S("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Xl),be.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{AP(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),bd=S("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Fy),be.init(t,e)});Sd=S("$ZodJWT",(t,e)=>{be.init(t,e),t._zod.check=r=>{NP(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),Pa=S("$ZodNumber",(t,e)=>{ge.init(t,e),t._zod.pattern=t._zod.bag.pattern??Gy,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}}),kd=S("$ZodNumber",(t,e)=>{tx.init(t,e),Pa.init(t,e)}),wd=S("$ZodBoolean",(t,e)=>{ge.init(t,e),t._zod.pattern=Ky,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}}),$d=S("$ZodNull",(t,e)=>{ge.init(t,e),t._zod.pattern=Jy,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}}),Ed=S("$ZodUnknown",(t,e)=>{ge.init(t,e),t._zod.parse=r=>r}),Td=S("$ZodNever",(t,e)=>{ge.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});Pd=S("$ZodArray",(t,e)=>{ge.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=>fx(u,r,i))):fx(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});Ra=S("$ZodObject",(t,e)=>{ge.init(t,e);let r=Rs(()=>{let d=Object.keys(e.shape);for(let f of d)if(!(e.shape[f]instanceof ge))throw new Error(`Invalid element at key "${f}": expected a Zod schema`);let p=Ml(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(p)}});ve(t._zod,"propValues",()=>{let d=e.shape,p={};for(let f in d){let m=d[f]._zod;if(m.values){p[f]??(p[f]=new Set);for(let h of m.values)p[f].add(h)}}return p});let n=d=>{let p=new Ea(["shape","payload","ctx"]),f=r.value,m=_=>{let x=Nn(_);return`shape[${x}]._zod.run({ value: input[${x}], issues: [] }, ctx)`};p.write("const input = payload.value;");let h=Object.create(null),g=0;for(let _ of f.keys)h[_]=`key_${g++}`;p.write("const newResult = {}");for(let _ of f.keys)if(f.optionalKeys.has(_)){let x=h[_];p.write(`const ${x} = ${m(_)};`);let k=Nn(_);p.write(`
21
+ `))}}});var fx,rd=v(()=>{fx={major:4,minor:0,patch:0}});function Px(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}function AP(t){if(!Xl.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Px(r)}function NP(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}}function hx(t,e,r){t.issues.length&&e.issues.push(...ur(r,t.issues)),e.value[r]=t.value}function Ea(t,e,r){t.issues.length&&e.issues.push(...ur(r,t.issues)),e.value[r]=t.value}function gx(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(...ur(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}function _x(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=>Kt(s,n,vt())))}),e}function nd(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(wo(t)&&wo(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=nd(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=nd(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 yx(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),zn(t))return t;let n=nd(e.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return t.value=n.data,t}function xx(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}function vx(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}function bx(t,e,r){return zn(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}function Sx(t){return t.value=Object.freeze(t.value),t}function kx(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(Fl(o))}}var ge,zs,Se,od,sd,id,ad,cd,ud,ld,dd,pd,md,fd,wx,$x,Ex,Tx,hd,gd,_d,yd,xd,vd,bd,Sd,Ta,kd,wd,$d,Ed,Td,Pd,Pa,Ra,Rd,Cd,Od,Id,Ad,Nd,zd,jd,Dd,Md,Ld,Fd,Ud,Zd,Hd,Rx=v(()=>{wa();So();td();Jl();ka();lr();rd();lr();ge=S("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=fx;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=zn(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,p=l._zod.check(s);if(p instanceof Promise&&a?.async===!1)throw new Rr;if(u||p instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await p,s.issues.length!==d&&(c||(c=zn(s,d)))});else{if(s.issues.length===d)continue;c||(c=zn(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 Rr;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=jn(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Dn(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),zs=S("$ZodString",(t,e)=>{ge.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Wy(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}}),Se=S("$ZodStringFormat",(t,e)=>{Ns.init(t,e),zs.init(t,e)}),od=S("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Iy),Se.init(t,e)}),sd=S("$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=Yl(n))}else e.pattern??(e.pattern=Yl());Se.init(t,e)}),id=S("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Ay),Se.init(t,e)}),ad=S("$ZodURL",(t,e)=>{Se.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:Fy.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})}}}),cd=S("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Ny()),Se.init(t,e)}),ud=S("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Cy),Se.init(t,e)}),ld=S("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=$y),Se.init(t,e)}),dd=S("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Ey),Se.init(t,e)}),pd=S("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Ty),Se.init(t,e)}),md=S("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Py),Se.init(t,e)}),fd=S("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Ry),Se.init(t,e)}),wx=S("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Vy(e)),Se.init(t,e)}),$x=S("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Hy),Se.init(t,e)}),Ex=S("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=By(e)),Se.init(t,e)}),Tx=S("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Oy),Se.init(t,e)}),hd=S("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=zy),Se.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),gd=S("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=jy),Se.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})}}}),_d=S("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Dy),Se.init(t,e)}),yd=S("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=My),Se.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})}}});xd=S("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Ly),Se.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Px(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});vd=S("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Xl),Se.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{AP(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),bd=S("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Uy),Se.init(t,e)});Sd=S("$ZodJWT",(t,e)=>{Se.init(t,e),t._zod.check=r=>{NP(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),Ta=S("$ZodNumber",(t,e)=>{ge.init(t,e),t._zod.pattern=t._zod.bag.pattern??Ky,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}}),kd=S("$ZodNumber",(t,e)=>{rx.init(t,e),Ta.init(t,e)}),wd=S("$ZodBoolean",(t,e)=>{ge.init(t,e),t._zod.pattern=Jy,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}}),$d=S("$ZodNull",(t,e)=>{ge.init(t,e),t._zod.pattern=Yy,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}}),Ed=S("$ZodUnknown",(t,e)=>{ge.init(t,e),t._zod.parse=r=>r}),Td=S("$ZodNever",(t,e)=>{ge.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});Pd=S("$ZodArray",(t,e)=>{ge.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=>hx(u,r,i))):hx(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});Pa=S("$ZodObject",(t,e)=>{ge.init(t,e);let r=Rs(()=>{let d=Object.keys(e.shape);for(let f of d)if(!(e.shape[f]instanceof ge))throw new Error(`Invalid element at key "${f}": expected a Zod schema`);let p=Ml(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(p)}});be(t._zod,"propValues",()=>{let d=e.shape,p={};for(let f in d){let m=d[f]._zod;if(m.values){p[f]??(p[f]=new Set);for(let h of m.values)p[f].add(h)}}return p});let n=d=>{let p=new $a(["shape","payload","ctx"]),f=r.value,m=_=>{let x=Nn(_);return`shape[${x}]._zod.run({ value: input[${x}], issues: [] }, ctx)`};p.write("const input = payload.value;");let h=Object.create(null),g=0;for(let _ of f.keys)h[_]=`key_${g++}`;p.write("const newResult = {}");for(let _ of f.keys)if(f.optionalKeys.has(_)){let x=h[_];p.write(`const ${x} = ${m(_)};`);let k=Nn(_);p.write(`
22
22
  if (${x}.issues.length) {
23
23
  if (input[${k}] === undefined) {
24
24
  if (${k} in input) {
@@ -41,22 +41,22 @@ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_inde
41
41
  if (${x}.issues.length) payload.issues = payload.issues.concat(${x}.issues.map(iss => ({
42
42
  ...iss,
43
43
  path: iss.path ? [${Nn(_)}, ...iss.path] : [${Nn(_)}]
44
- })));`),p.write(`newResult[${Nn(_)}] = ${x}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let y=p.compile();return(_,x)=>y(d,_,x)},o,s=ko,i=!ya.jitless,c=i&&jl.value,u=e.catchall,l;t._zod.parse=(d,p)=>{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 m=[];if(i&&c&&p?.async===!1&&p.jitless!==!0)o||(o=n(e.shape)),d=o(d,p);else{d.value={};let x=l.shape;for(let k of l.keys){let T=x[k],H=T._zod.run({value:f[k],issues:[]},p),z=T._zod.optin==="optional"&&T._zod.optout==="optional";H instanceof Promise?m.push(H.then(K=>z?hx(K,d,k,f):Ta(K,d,k))):z?hx(H,d,k,f):Ta(H,d,k)}}if(!u)return m.length?Promise.all(m).then(()=>d):d;let h=[],g=l.keySet,y=u._zod,_=y.def.type;for(let x of Object.keys(f)){if(g.has(x))continue;if(_==="never"){h.push(x);continue}let k=y.run({value:f[x],issues:[]},p);k instanceof Promise?m.push(k.then(T=>Ta(T,d,x))):Ta(k,d,x)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:f,inst:t}),m.length?Promise.all(m).then(()=>d):d}});Ca=S("$ZodUnion",(t,e)=>{ge.init(t,e),ve(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ve(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ve(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ve(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=>Os(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=>gx(i,r,t,n)):gx(s,r,t,n)}}),Rd=S("$ZodDiscriminatedUnion",(t,e)=>{Ca.init(t,e);let r=t._zod.parse;ve(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=Rs(()=>{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(!ko(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)}}),Cd=S("$ZodIntersection",(t,e)=>{ge.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])=>_x(r,c,u)):_x(r,s,i)}});Od=S("$ZodRecord",(t,e)=>{ge.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!wo(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(...ur(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...ur(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=>Kt(u,n,vt())),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(...ur(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...ur(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}}),Id=S("$ZodEnum",(t,e)=>{ge.init(t,e);let r=Ps(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Dl.has(typeof n)).map(n=>typeof n=="string"?Gr(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}}),Ad=S("$ZodLiteral",(t,e)=>{ge.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Gr(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}}),Nd=S("$ZodTransform",(t,e)=>{ge.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 Rr;return r.value=o,r}}),zd=S("$ZodOptional",(t,e)=>{ge.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ve(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ve(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Os(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)}),jd=S("$ZodNullable",(t,e)=>{ge.init(t,e),ve(t._zod,"optin",()=>e.innerType._zod.optin),ve(t._zod,"optout",()=>e.innerType._zod.optout),ve(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Os(r.source)}|null)$`):void 0}),ve(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)}),Dd=S("$ZodDefault",(t,e)=>{ge.init(t,e),t._zod.optin="optional",ve(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=>yx(s,e)):yx(o,e)}});Md=S("$ZodPrefault",(t,e)=>{ge.init(t,e),t._zod.optin="optional",ve(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))}),Ld=S("$ZodNonOptional",(t,e)=>{ge.init(t,e),ve(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=>xx(s,t)):xx(o,t)}});Fd=S("$ZodCatch",(t,e)=>{ge.init(t,e),t._zod.optin="optional",ve(t._zod,"optout",()=>e.innerType._zod.optout),ve(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=>Kt(i,n,vt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>Kt(s,n,vt()))},input:r.value}),r.issues=[]),r)}}),Ud=S("$ZodPipe",(t,e)=>{ge.init(t,e),ve(t._zod,"values",()=>e.in._zod.values),ve(t._zod,"optin",()=>e.in._zod.optin),ve(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=>vx(s,e,n)):vx(o,e,n)}});Zd=S("$ZodReadonly",(t,e)=>{ge.init(t,e),ve(t._zod,"propValues",()=>e.innerType._zod.propValues),ve(t._zod,"values",()=>e.innerType._zod.values),ve(t._zod,"optin",()=>e.innerType._zod.optin),ve(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(bx):bx(o)}});Hd=S("$ZodCustom",(t,e)=>{Ge.init(t,e),ge.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=>Sx(s,r,n,t));Sx(o,r,n,t)}})});function Rx(){return{localeError:jP()}}var zP,jP,Cx=v(()=>{lr();zP=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},jP=()=>{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 ${zP(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${ba(n.values[0])}`:`Invalid option: expected one of ${xa(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":""}: ${xa(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"}}}});var Oa=v(()=>{});function Ox(){return new js}var js,Kr,Bd=v(()=>{js=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)}};Kr=Ox()});function Vd(t,e){return new t({type:"string",...B(e)})}function Wd(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...B(e)})}function Ia(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...B(e)})}function Gd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...B(e)})}function Kd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...B(e)})}function Jd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...B(e)})}function Yd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...B(e)})}function Xd(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...B(e)})}function Qd(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...B(e)})}function ep(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...B(e)})}function tp(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...B(e)})}function rp(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...B(e)})}function np(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...B(e)})}function op(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...B(e)})}function sp(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...B(e)})}function ip(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...B(e)})}function ap(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...B(e)})}function cp(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...B(e)})}function up(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...B(e)})}function lp(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...B(e)})}function dp(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...B(e)})}function pp(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...B(e)})}function mp(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...B(e)})}function Ix(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...B(e)})}function Ax(t,e){return new t({type:"string",format:"date",check:"string_format",...B(e)})}function Nx(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...B(e)})}function zx(t,e){return new t({type:"string",format:"duration",check:"string_format",...B(e)})}function fp(t,e){return new t({type:"number",checks:[],...B(e)})}function hp(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...B(e)})}function gp(t,e){return new t({type:"boolean",...B(e)})}function _p(t,e){return new t({type:"null",...B(e)})}function yp(t){return new t({type:"unknown"})}function xp(t,e){return new t({type:"never",...B(e)})}function Aa(t,e){return new Ql({check:"less_than",...B(e),value:t,inclusive:!1})}function Ds(t,e){return new Ql({check:"less_than",...B(e),value:t,inclusive:!0})}function Na(t,e){return new ed({check:"greater_than",...B(e),value:t,inclusive:!1})}function Ms(t,e){return new ed({check:"greater_than",...B(e),value:t,inclusive:!0})}function za(t,e){return new ex({check:"multiple_of",...B(e),value:t})}function ja(t,e){return new rx({check:"max_length",...B(e),maximum:t})}function $o(t,e){return new nx({check:"min_length",...B(e),minimum:t})}function Da(t,e){return new ox({check:"length_equals",...B(e),length:t})}function vp(t,e){return new sx({check:"string_format",format:"regex",...B(e),pattern:t})}function bp(t){return new ix({check:"string_format",format:"lowercase",...B(t)})}function Sp(t){return new ax({check:"string_format",format:"uppercase",...B(t)})}function kp(t,e){return new cx({check:"string_format",format:"includes",...B(e),includes:t})}function wp(t,e){return new ux({check:"string_format",format:"starts_with",...B(e),prefix:t})}function $p(t,e){return new lx({check:"string_format",format:"ends_with",...B(e),suffix:t})}function Mn(t){return new dx({check:"overwrite",tx:t})}function Ep(t){return Mn(e=>e.normalize(t))}function Tp(){return Mn(t=>t.trim())}function Pp(){return Mn(t=>t.toLowerCase())}function Rp(){return Mn(t=>t.toUpperCase())}function jx(t,e,r){return new t({type:"array",element:e,...B(r)})}function Cp(t,e,r){let n=B(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Op(t,e,r){return new t({type:"custom",check:"custom",fn:e,...B(r)})}var Dx=v(()=>{$a();lr()});var Mx=v(()=>{});function Ip(t,e){if(t instanceof js){let n=new Ma(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 Ma(e);return r.process(t),r.emit(t,e)}function He(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 He(o.element,r);case"object":{for(let s in o.shape)if(He(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(He(s,r))return!0;return!1}case"intersection":return He(o.left,r)||He(o.right,r);case"tuple":{for(let s of o.items)if(He(s,r))return!0;return!!(o.rest&&He(o.rest,r))}case"record":return He(o.keyType,r)||He(o.valueType,r);case"map":return He(o.keyType,r)||He(o.valueType,r);case"set":return He(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return He(o.innerType,r);case"lazy":return He(o.getter(),r);case"default":return He(o.innerType,r);case"prefault":return He(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return He(o.in,r)||He(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var Ma,Lx=v(()=>{Bd();lr();Ma=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Kr,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},p=e._zod.parent;if(p)a.ref=p,this.process(p,d),this.seen.get(p).isParent=!0;else{let f=a.schema;switch(o.type){case"string":{let m=f;m.type="string";let{minimum:h,maximum:g,format:y,patterns:_,contentEncoding:x}=e._zod.bag;if(typeof h=="number"&&(m.minLength=h),typeof g=="number"&&(m.maxLength=g),y&&(m.format=s[y]??y,m.format===""&&delete m.format),x&&(m.contentEncoding=x),_&&_.size>0){let k=[..._];k.length===1?m.pattern=k[0].source:k.length>1&&(a.schema.allOf=[...k.map(T=>({...this.target==="draft-7"?{type:"string"}:{},pattern:T.source}))])}break}case"number":{let m=f,{minimum:h,maximum:g,format:y,multipleOf:_,exclusiveMaximum:x,exclusiveMinimum:k}=e._zod.bag;typeof y=="string"&&y.includes("int")?m.type="integer":m.type="number",typeof k=="number"&&(m.exclusiveMinimum=k),typeof h=="number"&&(m.minimum=h,typeof k=="number"&&(k>=h?delete m.minimum:delete m.exclusiveMinimum)),typeof x=="number"&&(m.exclusiveMaximum=x),typeof g=="number"&&(m.maximum=g,typeof x=="number"&&(x<=g?delete m.maximum:delete m.exclusiveMaximum)),typeof _=="number"&&(m.multipleOf=_);break}case"boolean":{let m=f;m.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 m=f,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(m.minItems=h),typeof g=="number"&&(m.maxItems=g),m.type="array",m.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let m=f;m.type="object",m.properties={};let h=o.shape;for(let _ in h)m.properties[_]=this.process(h[_],{...d,path:[...d.path,"properties",_]});let g=new Set(Object.keys(h)),y=new Set([...g].filter(_=>{let x=o.shape[_]._zod;return this.io==="input"?x.optin===void 0:x.optout===void 0}));y.size>0&&(m.required=Array.from(y)),o.catchall?._zod.def.type==="never"?m.additionalProperties=!1:o.catchall?o.catchall&&(m.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(m.additionalProperties=!1);break}case"union":{let m=f;m.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let m=f,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),y=x=>"allOf"in x&&Object.keys(x).length===1,_=[...y(h)?h.allOf:[h],...y(g)?g.allOf:[g]];m.allOf=_;break}case"tuple":{let m=f;m.type="array";let h=o.items.map((_,x)=>this.process(_,{...d,path:[...d.path,"prefixItems",x]}));if(this.target==="draft-2020-12"?m.prefixItems=h:m.items=h,o.rest){let _=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?m.items=_:m.additionalItems=_}o.rest&&(m.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:y}=e._zod.bag;typeof g=="number"&&(m.minItems=g),typeof y=="number"&&(m.maxItems=y);break}case"record":{let m=f;m.type="object",m.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),m.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 m=f,h=Ps(o.entries);h.every(g=>typeof g=="number")&&(m.type="number"),h.every(g=>typeof g=="string")&&(m.type="string"),m.enum=h;break}case"literal":{let m=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];m.type=g===null?"null":typeof g,m.const=g}else h.every(g=>typeof g=="number")&&(m.type="number"),h.every(g=>typeof g=="string")&&(m.type="string"),h.every(g=>typeof g=="boolean")&&(m.type="string"),h.every(g=>g===null)&&(m.type="null"),m.enum=h;break}case"file":{let m=f,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:y,mime:_}=e._zod.bag;g!==void 0&&(h.minLength=g),y!==void 0&&(h.maxLength=y),_?_.length===1?(h.contentMediaType=_[0],Object.assign(m,h)):m.anyOf=_.map(x=>({...h,contentMediaType:x})):Object.assign(m,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let m=this.process(o.innerType,d);f.anyOf=[m,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let m=f;m.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 m;try{m=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}f.default=m;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let m=f,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");m.type="string",m.pattern=h.source;break}case"pipe":{let m=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(m,d),a.ref=m;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 m=e._zod.innerType;this.process(m,d),a.ref=m;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"&&He(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??(_=>_);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}/`,m=l[1].schema.id??`__schema${this.counter++}`;return{defId:m,ref:f+m}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:p,defId:f}=s(l);d.def={...d.schema},f&&(d.defId=f);let m=d.schema;for(let h in m)delete m[h];m.$ref=p};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>
44
+ })));`),p.write(`newResult[${Nn(_)}] = ${x}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let y=p.compile();return(_,x)=>y(d,_,x)},o,s=ko,i=!_a.jitless,c=i&&jl.value,u=e.catchall,l;t._zod.parse=(d,p)=>{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 m=[];if(i&&c&&p?.async===!1&&p.jitless!==!0)o||(o=n(e.shape)),d=o(d,p);else{d.value={};let x=l.shape;for(let k of l.keys){let E=x[k],H=E._zod.run({value:f[k],issues:[]},p),z=E._zod.optin==="optional"&&E._zod.optout==="optional";H instanceof Promise?m.push(H.then(K=>z?gx(K,d,k,f):Ea(K,d,k))):z?gx(H,d,k,f):Ea(H,d,k)}}if(!u)return m.length?Promise.all(m).then(()=>d):d;let h=[],g=l.keySet,y=u._zod,_=y.def.type;for(let x of Object.keys(f)){if(g.has(x))continue;if(_==="never"){h.push(x);continue}let k=y.run({value:f[x],issues:[]},p);k instanceof Promise?m.push(k.then(E=>Ea(E,d,x))):Ea(k,d,x)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:f,inst:t}),m.length?Promise.all(m).then(()=>d):d}});Ra=S("$ZodUnion",(t,e)=>{ge.init(t,e),be(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),be(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),be(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),be(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=>Os(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=>_x(i,r,t,n)):_x(s,r,t,n)}}),Rd=S("$ZodDiscriminatedUnion",(t,e)=>{Ra.init(t,e);let r=t._zod.parse;be(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=Rs(()=>{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(!ko(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)}}),Cd=S("$ZodIntersection",(t,e)=>{ge.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])=>yx(r,c,u)):yx(r,s,i)}});Od=S("$ZodRecord",(t,e)=>{ge.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!wo(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(...ur(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...ur(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=>Kt(u,n,vt())),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(...ur(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...ur(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}}),Id=S("$ZodEnum",(t,e)=>{ge.init(t,e);let r=Ps(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Dl.has(typeof n)).map(n=>typeof n=="string"?Gr(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}}),Ad=S("$ZodLiteral",(t,e)=>{ge.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Gr(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}}),Nd=S("$ZodTransform",(t,e)=>{ge.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 Rr;return r.value=o,r}}),zd=S("$ZodOptional",(t,e)=>{ge.init(t,e),t._zod.optin="optional",t._zod.optout="optional",be(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),be(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Os(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)}),jd=S("$ZodNullable",(t,e)=>{ge.init(t,e),be(t._zod,"optin",()=>e.innerType._zod.optin),be(t._zod,"optout",()=>e.innerType._zod.optout),be(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Os(r.source)}|null)$`):void 0}),be(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)}),Dd=S("$ZodDefault",(t,e)=>{ge.init(t,e),t._zod.optin="optional",be(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=>xx(s,e)):xx(o,e)}});Md=S("$ZodPrefault",(t,e)=>{ge.init(t,e),t._zod.optin="optional",be(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))}),Ld=S("$ZodNonOptional",(t,e)=>{ge.init(t,e),be(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=>vx(s,t)):vx(o,t)}});Fd=S("$ZodCatch",(t,e)=>{ge.init(t,e),t._zod.optin="optional",be(t._zod,"optout",()=>e.innerType._zod.optout),be(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=>Kt(i,n,vt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>Kt(s,n,vt()))},input:r.value}),r.issues=[]),r)}}),Ud=S("$ZodPipe",(t,e)=>{ge.init(t,e),be(t._zod,"values",()=>e.in._zod.values),be(t._zod,"optin",()=>e.in._zod.optin),be(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=>bx(s,e,n)):bx(o,e,n)}});Zd=S("$ZodReadonly",(t,e)=>{ge.init(t,e),be(t._zod,"propValues",()=>e.innerType._zod.propValues),be(t._zod,"values",()=>e.innerType._zod.values),be(t._zod,"optin",()=>e.innerType._zod.optin),be(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(Sx):Sx(o)}});Hd=S("$ZodCustom",(t,e)=>{Ge.init(t,e),ge.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=>kx(s,r,n,t));kx(o,r,n,t)}})});function Cx(){return{localeError:jP()}}var zP,jP,Ox=v(()=>{lr();zP=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},jP=()=>{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 ${zP(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${va(n.values[0])}`:`Invalid option: expected one of ${ya(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":""}: ${ya(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"}}}});var Ca=v(()=>{});function Ix(){return new js}var js,Kr,Bd=v(()=>{js=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)}};Kr=Ix()});function Vd(t,e){return new t({type:"string",...B(e)})}function Wd(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...B(e)})}function Oa(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...B(e)})}function Gd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...B(e)})}function Kd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...B(e)})}function Jd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...B(e)})}function Yd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...B(e)})}function Xd(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...B(e)})}function Qd(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...B(e)})}function ep(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...B(e)})}function tp(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...B(e)})}function rp(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...B(e)})}function np(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...B(e)})}function op(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...B(e)})}function sp(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...B(e)})}function ip(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...B(e)})}function ap(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...B(e)})}function cp(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...B(e)})}function up(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...B(e)})}function lp(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...B(e)})}function dp(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...B(e)})}function pp(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...B(e)})}function mp(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...B(e)})}function Ax(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...B(e)})}function Nx(t,e){return new t({type:"string",format:"date",check:"string_format",...B(e)})}function zx(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...B(e)})}function jx(t,e){return new t({type:"string",format:"duration",check:"string_format",...B(e)})}function fp(t,e){return new t({type:"number",checks:[],...B(e)})}function hp(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...B(e)})}function gp(t,e){return new t({type:"boolean",...B(e)})}function _p(t,e){return new t({type:"null",...B(e)})}function yp(t){return new t({type:"unknown"})}function xp(t,e){return new t({type:"never",...B(e)})}function Ia(t,e){return new Ql({check:"less_than",...B(e),value:t,inclusive:!1})}function Ds(t,e){return new Ql({check:"less_than",...B(e),value:t,inclusive:!0})}function Aa(t,e){return new ed({check:"greater_than",...B(e),value:t,inclusive:!1})}function Ms(t,e){return new ed({check:"greater_than",...B(e),value:t,inclusive:!0})}function Na(t,e){return new tx({check:"multiple_of",...B(e),value:t})}function za(t,e){return new nx({check:"max_length",...B(e),maximum:t})}function $o(t,e){return new ox({check:"min_length",...B(e),minimum:t})}function ja(t,e){return new sx({check:"length_equals",...B(e),length:t})}function vp(t,e){return new ix({check:"string_format",format:"regex",...B(e),pattern:t})}function bp(t){return new ax({check:"string_format",format:"lowercase",...B(t)})}function Sp(t){return new cx({check:"string_format",format:"uppercase",...B(t)})}function kp(t,e){return new ux({check:"string_format",format:"includes",...B(e),includes:t})}function wp(t,e){return new lx({check:"string_format",format:"starts_with",...B(e),prefix:t})}function $p(t,e){return new dx({check:"string_format",format:"ends_with",...B(e),suffix:t})}function Mn(t){return new px({check:"overwrite",tx:t})}function Ep(t){return Mn(e=>e.normalize(t))}function Tp(){return Mn(t=>t.trim())}function Pp(){return Mn(t=>t.toLowerCase())}function Rp(){return Mn(t=>t.toUpperCase())}function Dx(t,e,r){return new t({type:"array",element:e,...B(r)})}function Cp(t,e,r){let n=B(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Op(t,e,r){return new t({type:"custom",check:"custom",fn:e,...B(r)})}var Mx=v(()=>{wa();lr()});var Lx=v(()=>{});function Ip(t,e){if(t instanceof js){let n=new Da(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 Da(e);return r.process(t),r.emit(t,e)}function He(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 He(o.element,r);case"object":{for(let s in o.shape)if(He(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(He(s,r))return!0;return!1}case"intersection":return He(o.left,r)||He(o.right,r);case"tuple":{for(let s of o.items)if(He(s,r))return!0;return!!(o.rest&&He(o.rest,r))}case"record":return He(o.keyType,r)||He(o.valueType,r);case"map":return He(o.keyType,r)||He(o.valueType,r);case"set":return He(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return He(o.innerType,r);case"lazy":return He(o.getter(),r);case"default":return He(o.innerType,r);case"prefault":return He(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return He(o.in,r)||He(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var Da,Fx=v(()=>{Bd();lr();Da=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Kr,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},p=e._zod.parent;if(p)a.ref=p,this.process(p,d),this.seen.get(p).isParent=!0;else{let f=a.schema;switch(o.type){case"string":{let m=f;m.type="string";let{minimum:h,maximum:g,format:y,patterns:_,contentEncoding:x}=e._zod.bag;if(typeof h=="number"&&(m.minLength=h),typeof g=="number"&&(m.maxLength=g),y&&(m.format=s[y]??y,m.format===""&&delete m.format),x&&(m.contentEncoding=x),_&&_.size>0){let k=[..._];k.length===1?m.pattern=k[0].source:k.length>1&&(a.schema.allOf=[...k.map(E=>({...this.target==="draft-7"?{type:"string"}:{},pattern:E.source}))])}break}case"number":{let m=f,{minimum:h,maximum:g,format:y,multipleOf:_,exclusiveMaximum:x,exclusiveMinimum:k}=e._zod.bag;typeof y=="string"&&y.includes("int")?m.type="integer":m.type="number",typeof k=="number"&&(m.exclusiveMinimum=k),typeof h=="number"&&(m.minimum=h,typeof k=="number"&&(k>=h?delete m.minimum:delete m.exclusiveMinimum)),typeof x=="number"&&(m.exclusiveMaximum=x),typeof g=="number"&&(m.maximum=g,typeof x=="number"&&(x<=g?delete m.maximum:delete m.exclusiveMaximum)),typeof _=="number"&&(m.multipleOf=_);break}case"boolean":{let m=f;m.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 m=f,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(m.minItems=h),typeof g=="number"&&(m.maxItems=g),m.type="array",m.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let m=f;m.type="object",m.properties={};let h=o.shape;for(let _ in h)m.properties[_]=this.process(h[_],{...d,path:[...d.path,"properties",_]});let g=new Set(Object.keys(h)),y=new Set([...g].filter(_=>{let x=o.shape[_]._zod;return this.io==="input"?x.optin===void 0:x.optout===void 0}));y.size>0&&(m.required=Array.from(y)),o.catchall?._zod.def.type==="never"?m.additionalProperties=!1:o.catchall?o.catchall&&(m.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(m.additionalProperties=!1);break}case"union":{let m=f;m.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let m=f,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),y=x=>"allOf"in x&&Object.keys(x).length===1,_=[...y(h)?h.allOf:[h],...y(g)?g.allOf:[g]];m.allOf=_;break}case"tuple":{let m=f;m.type="array";let h=o.items.map((_,x)=>this.process(_,{...d,path:[...d.path,"prefixItems",x]}));if(this.target==="draft-2020-12"?m.prefixItems=h:m.items=h,o.rest){let _=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?m.items=_:m.additionalItems=_}o.rest&&(m.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:y}=e._zod.bag;typeof g=="number"&&(m.minItems=g),typeof y=="number"&&(m.maxItems=y);break}case"record":{let m=f;m.type="object",m.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),m.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 m=f,h=Ps(o.entries);h.every(g=>typeof g=="number")&&(m.type="number"),h.every(g=>typeof g=="string")&&(m.type="string"),m.enum=h;break}case"literal":{let m=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];m.type=g===null?"null":typeof g,m.const=g}else h.every(g=>typeof g=="number")&&(m.type="number"),h.every(g=>typeof g=="string")&&(m.type="string"),h.every(g=>typeof g=="boolean")&&(m.type="string"),h.every(g=>g===null)&&(m.type="null"),m.enum=h;break}case"file":{let m=f,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:y,mime:_}=e._zod.bag;g!==void 0&&(h.minLength=g),y!==void 0&&(h.maxLength=y),_?_.length===1?(h.contentMediaType=_[0],Object.assign(m,h)):m.anyOf=_.map(x=>({...h,contentMediaType:x})):Object.assign(m,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let m=this.process(o.innerType,d);f.anyOf=[m,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let m=f;m.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 m;try{m=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}f.default=m;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let m=f,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");m.type="string",m.pattern=h.source;break}case"pipe":{let m=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(m,d),a.ref=m;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 m=e._zod.innerType;this.process(m,d),a.ref=m;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"&&He(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??(_=>_);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}/`,m=l[1].schema.id??`__schema${this.counter++}`;return{defId:m,ref:f+m}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:p,defId:f}=s(l);d.def={...d.schema},f&&(d.defId=f);let m=d.schema;for(let h in m)delete m[h];m.$ref=p};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>
45
45
 
46
- 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 p=this.seen.get(l),f=p.def??p.schema,m={...f};if(p.ref===null)return;let h=p.ref;if(p.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,m))}p.isParent||this.override({zodSchema:l,jsonSchema:f,path:p.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.")}}}});var Fx=v(()=>{});var it=v(()=>{So();Jl();Hl();Px();$a();rd();lr();wa();Oa();Bd();td();Mx();Dx();Lx();Fx()});var Ap=v(()=>{it()});function Np(t,e){let r={type:"object",get shape(){return oe.assignProp(this,"shape",{...t}),this.shape},...oe.normalizeParams(e)};return new yR(r)}var _R,yR,Ux=v(()=>{it();it();Ap();_R=S("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ge.init(t,e),t.def=e,t.parse=(r,n)=>Bl(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>jn(t,r,n),t.parseAsync=async(r,n)=>Wl(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Dn(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)=>bt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))}),yR=S("ZodMiniObject",(t,e)=>{Ra.init(t,e),_R.init(t,e),oe.defineLazy(t,"shape",()=>e.shape)})});var Zx=v(()=>{});var Hx=v(()=>{});var qx=v(()=>{});var Bx=v(()=>{it();Ap();Ux();Zx();it();Oa();Hx();qx()});var Vx=v(()=>{Bx()});var zp=v(()=>{Vx()});function Nt(t){return!!t._zod}function Fn(t){let e=Object.values(t);if(e.length===0)return Np({});let r=e.every(Nt),n=e.every(o=>!Nt(o));if(r)return Np(t);if(n)return Cl(t);throw new Error("Mixed Zod versions detected in object shape.")}function Jr(t,e){return Nt(t)?jn(t,e):t.safeParse(e)}async function La(t,e){return Nt(t)?await Dn(t,e):await t.safeParseAsync(e)}function Yr(t){if(!t)return;let e;if(Nt(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function Eo(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 Fn(t)}}if(Nt(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 Fa(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 Gx(t){return t.description}function Kx(t){if(Nt(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Ua(t){if(Nt(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 Ls=v(()=>{Es();zp()});var jp=v(()=>{it()});var Fs={};Ze(Fs,{ZodISODate:()=>Yx,ZodISODateTime:()=>Jx,ZodISODuration:()=>Qx,ZodISOTime:()=>Xx,date:()=>Mp,datetime:()=>Dp,duration:()=>Fp,time:()=>Lp});function Dp(t){return Ix(Jx,t)}function Mp(t){return Ax(Yx,t)}function Lp(t){return Nx(Xx,t)}function Fp(t){return zx(Qx,t)}var Jx,Yx,Xx,Qx,Up=v(()=>{it();Zp();Jx=S("ZodISODateTime",(t,e)=>{kx.init(t,e),Ce.init(t,e)});Yx=S("ZodISODate",(t,e)=>{wx.init(t,e),Ce.init(t,e)});Xx=S("ZodISOTime",(t,e)=>{$x.init(t,e),Ce.init(t,e)});Qx=S("ZodISODuration",(t,e)=>{Ex.init(t,e),Ce.init(t,e)})});var ev,wZ,Us,Hp=v(()=>{it();it();ev=(t,e)=>{Sa.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Zl(t,r)},flatten:{value:r=>Ul(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},wZ=S("ZodError",ev),Us=S("ZodError",ev,{Parent:Error})});var tv,rv,nv,ov,qp=v(()=>{it();Hp();tv=ql(Us),rv=Vl(Us),nv=Gl(Us),ov=Kl(Us)});function b(t){return Vd(PR,t)}function me(t){return fp(uv,t)}function iv(t){return hp(VR,t)}function Be(t){return gp(WR,t)}function lv(t){return _p(GR,t)}function Oe(){return yp(KR)}function YR(t){return xp(JR,t)}function se(t,e){return jx(XR,t,e)}function I(t,e){let r={type:"object",get shape(){return oe.assignProp(this,"shape",{...t}),this.shape},...oe.normalizeParams(e)};return new dv(r)}function at(t,e){return new dv({type:"object",get shape(){return oe.assignProp(this,"shape",{...t}),this.shape},catchall:Oe(),...oe.normalizeParams(e)})}function we(t,e){return new pv({type:"union",options:t,...oe.normalizeParams(e)})}function Wp(t,e,r){return new QR({type:"union",options:e,discriminator:t,...oe.normalizeParams(r)})}function Ha(t,e){return new eC({type:"intersection",left:t,right:e})}function Se(t,e,r){return new tC({type:"record",keyType:t,valueType:e,...oe.normalizeParams(r)})}function ht(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Bp({type:"enum",entries:r,...oe.normalizeParams(e)})}function L(t,e){return new rC({type:"literal",values:Array.isArray(t)?t:[t],...oe.normalizeParams(e)})}function mv(t){return new nC({type:"transform",transform:t})}function Ie(t){return new fv({type:"optional",innerType:t})}function av(t){return new oC({type:"nullable",innerType:t})}function iC(t,e){return new sC({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function cC(t,e){return new aC({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function uC(t,e){return new hv({type:"nonoptional",innerType:t,...oe.normalizeParams(e)})}function dC(t,e){return new lC({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}function Vp(t,e){return new pC({type:"pipe",in:t,out:e})}function fC(t){return new mC({type:"readonly",innerType:t})}function hC(t){let e=new Ge({check:"custom"});return e._zod.check=t,e}function _v(t,e){return Cp(gv,t??(()=>!0),e)}function gC(t,e={}){return Op(gv,t,e)}function _C(t){let e=hC(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(oe.issue(n,r.value,e._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=e),o.continue??(o.continue=!e._zod.def.abort),r.issues.push(oe.issue(o))}},t(r.value,r)));return e}function Gp(t,e){return Vp(mv(t),e)}var ze,cv,PR,Ce,RR,sv,Za,CR,OR,IR,AR,NR,zR,jR,DR,MR,LR,FR,UR,ZR,HR,qR,BR,uv,VR,WR,GR,KR,JR,XR,dv,pv,QR,eC,tC,Bp,rC,nC,fv,oC,sC,aC,hv,lC,pC,mC,gv,Zp=v(()=>{it();it();jp();Up();qp();ze=S("ZodType",(t,e)=>(ge.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)=>bt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>tv(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>nv(t,r,n),t.parseAsync=async(r,n)=>rv(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>ov(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(gC(r,n)),t.superRefine=r=>t.check(_C(r)),t.overwrite=r=>t.check(Mn(r)),t.optional=()=>Ie(t),t.nullable=()=>av(t),t.nullish=()=>Ie(av(t)),t.nonoptional=r=>uC(t,r),t.array=()=>se(t),t.or=r=>we([t,r]),t.and=r=>Ha(t,r),t.transform=r=>Vp(t,mv(r)),t.default=r=>iC(t,r),t.prefault=r=>cC(t,r),t.catch=r=>dC(t,r),t.pipe=r=>Vp(t,r),t.readonly=()=>fC(t),t.describe=r=>{let n=t.clone();return Kr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Kr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Kr.get(t);let n=t.clone();return Kr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),cv=S("_ZodString",(t,e)=>{zs.init(t,e),ze.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(vp(...n)),t.includes=(...n)=>t.check(kp(...n)),t.startsWith=(...n)=>t.check(wp(...n)),t.endsWith=(...n)=>t.check($p(...n)),t.min=(...n)=>t.check($o(...n)),t.max=(...n)=>t.check(ja(...n)),t.length=(...n)=>t.check(Da(...n)),t.nonempty=(...n)=>t.check($o(1,...n)),t.lowercase=n=>t.check(bp(n)),t.uppercase=n=>t.check(Sp(n)),t.trim=()=>t.check(Tp()),t.normalize=(...n)=>t.check(Ep(...n)),t.toLowerCase=()=>t.check(Pp()),t.toUpperCase=()=>t.check(Rp())}),PR=S("ZodString",(t,e)=>{zs.init(t,e),cv.init(t,e),t.email=r=>t.check(Wd(RR,r)),t.url=r=>t.check(Xd(CR,r)),t.jwt=r=>t.check(mp(BR,r)),t.emoji=r=>t.check(Qd(OR,r)),t.guid=r=>t.check(Ia(sv,r)),t.uuid=r=>t.check(Gd(Za,r)),t.uuidv4=r=>t.check(Kd(Za,r)),t.uuidv6=r=>t.check(Jd(Za,r)),t.uuidv7=r=>t.check(Yd(Za,r)),t.nanoid=r=>t.check(ep(IR,r)),t.guid=r=>t.check(Ia(sv,r)),t.cuid=r=>t.check(tp(AR,r)),t.cuid2=r=>t.check(rp(NR,r)),t.ulid=r=>t.check(np(zR,r)),t.base64=r=>t.check(lp(ZR,r)),t.base64url=r=>t.check(dp(HR,r)),t.xid=r=>t.check(op(jR,r)),t.ksuid=r=>t.check(sp(DR,r)),t.ipv4=r=>t.check(ip(MR,r)),t.ipv6=r=>t.check(ap(LR,r)),t.cidrv4=r=>t.check(cp(FR,r)),t.cidrv6=r=>t.check(up(UR,r)),t.e164=r=>t.check(pp(qR,r)),t.datetime=r=>t.check(Dp(r)),t.date=r=>t.check(Mp(r)),t.time=r=>t.check(Lp(r)),t.duration=r=>t.check(Fp(r))});Ce=S("ZodStringFormat",(t,e)=>{be.init(t,e),cv.init(t,e)}),RR=S("ZodEmail",(t,e)=>{id.init(t,e),Ce.init(t,e)}),sv=S("ZodGUID",(t,e)=>{od.init(t,e),Ce.init(t,e)}),Za=S("ZodUUID",(t,e)=>{sd.init(t,e),Ce.init(t,e)}),CR=S("ZodURL",(t,e)=>{ad.init(t,e),Ce.init(t,e)}),OR=S("ZodEmoji",(t,e)=>{cd.init(t,e),Ce.init(t,e)}),IR=S("ZodNanoID",(t,e)=>{ud.init(t,e),Ce.init(t,e)}),AR=S("ZodCUID",(t,e)=>{ld.init(t,e),Ce.init(t,e)}),NR=S("ZodCUID2",(t,e)=>{dd.init(t,e),Ce.init(t,e)}),zR=S("ZodULID",(t,e)=>{pd.init(t,e),Ce.init(t,e)}),jR=S("ZodXID",(t,e)=>{md.init(t,e),Ce.init(t,e)}),DR=S("ZodKSUID",(t,e)=>{fd.init(t,e),Ce.init(t,e)}),MR=S("ZodIPv4",(t,e)=>{hd.init(t,e),Ce.init(t,e)}),LR=S("ZodIPv6",(t,e)=>{gd.init(t,e),Ce.init(t,e)}),FR=S("ZodCIDRv4",(t,e)=>{_d.init(t,e),Ce.init(t,e)}),UR=S("ZodCIDRv6",(t,e)=>{yd.init(t,e),Ce.init(t,e)}),ZR=S("ZodBase64",(t,e)=>{xd.init(t,e),Ce.init(t,e)}),HR=S("ZodBase64URL",(t,e)=>{vd.init(t,e),Ce.init(t,e)}),qR=S("ZodE164",(t,e)=>{bd.init(t,e),Ce.init(t,e)}),BR=S("ZodJWT",(t,e)=>{Sd.init(t,e),Ce.init(t,e)}),uv=S("ZodNumber",(t,e)=>{Pa.init(t,e),ze.init(t,e),t.gt=(n,o)=>t.check(Na(n,o)),t.gte=(n,o)=>t.check(Ms(n,o)),t.min=(n,o)=>t.check(Ms(n,o)),t.lt=(n,o)=>t.check(Aa(n,o)),t.lte=(n,o)=>t.check(Ds(n,o)),t.max=(n,o)=>t.check(Ds(n,o)),t.int=n=>t.check(iv(n)),t.safe=n=>t.check(iv(n)),t.positive=n=>t.check(Na(0,n)),t.nonnegative=n=>t.check(Ms(0,n)),t.negative=n=>t.check(Aa(0,n)),t.nonpositive=n=>t.check(Ds(0,n)),t.multipleOf=(n,o)=>t.check(za(n,o)),t.step=(n,o)=>t.check(za(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});VR=S("ZodNumberFormat",(t,e)=>{kd.init(t,e),uv.init(t,e)});WR=S("ZodBoolean",(t,e)=>{wd.init(t,e),ze.init(t,e)});GR=S("ZodNull",(t,e)=>{$d.init(t,e),ze.init(t,e)});KR=S("ZodUnknown",(t,e)=>{Ed.init(t,e),ze.init(t,e)});JR=S("ZodNever",(t,e)=>{Td.init(t,e),ze.init(t,e)});XR=S("ZodArray",(t,e)=>{Pd.init(t,e),ze.init(t,e),t.element=e.element,t.min=(r,n)=>t.check($o(r,n)),t.nonempty=r=>t.check($o(1,r)),t.max=(r,n)=>t.check(ja(r,n)),t.length=(r,n)=>t.check(Da(r,n)),t.unwrap=()=>t.element});dv=S("ZodObject",(t,e)=>{Ra.init(t,e),ze.init(t,e),oe.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>ht(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:Oe()}),t.loose=()=>t.clone({...t._zod.def,catchall:Oe()}),t.strict=()=>t.clone({...t._zod.def,catchall:YR()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>oe.extend(t,r),t.merge=r=>oe.merge(t,r),t.pick=r=>oe.pick(t,r),t.omit=r=>oe.omit(t,r),t.partial=(...r)=>oe.partial(fv,t,r[0]),t.required=(...r)=>oe.required(hv,t,r[0])});pv=S("ZodUnion",(t,e)=>{Ca.init(t,e),ze.init(t,e),t.options=e.options});QR=S("ZodDiscriminatedUnion",(t,e)=>{pv.init(t,e),Rd.init(t,e)});eC=S("ZodIntersection",(t,e)=>{Cd.init(t,e),ze.init(t,e)});tC=S("ZodRecord",(t,e)=>{Od.init(t,e),ze.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});Bp=S("ZodEnum",(t,e)=>{Id.init(t,e),ze.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 Bp({...e,checks:[],...oe.normalizeParams(o),entries:s})},t.exclude=(n,o)=>{let s={...e.entries};for(let i of n)if(r.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new Bp({...e,checks:[],...oe.normalizeParams(o),entries:s})}});rC=S("ZodLiteral",(t,e)=>{Ad.init(t,e),ze.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]}})});nC=S("ZodTransform",(t,e)=>{Nd.init(t,e),ze.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(oe.issue(s,r.value,e));else{let i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=t),i.continue??(i.continue=!0),r.issues.push(oe.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});fv=S("ZodOptional",(t,e)=>{zd.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType});oC=S("ZodNullable",(t,e)=>{jd.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType});sC=S("ZodDefault",(t,e)=>{Dd.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});aC=S("ZodPrefault",(t,e)=>{Md.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType});hv=S("ZodNonOptional",(t,e)=>{Ld.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType});lC=S("ZodCatch",(t,e)=>{Fd.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});pC=S("ZodPipe",(t,e)=>{Ud.init(t,e),ze.init(t,e),t.in=e.in,t.out=e.out});mC=S("ZodReadonly",(t,e)=>{Zd.init(t,e),ze.init(t,e)});gv=S("ZodCustom",(t,e)=>{Hd.init(t,e),ze.init(t,e)})});var yv=v(()=>{});var xv=v(()=>{});var vv=v(()=>{it();Zp();jp();Hp();qp();yv();it();Cx();Oa();Up();xv();vt(Rx())});var bv=v(()=>{vv()});var Sv=v(()=>{bv()});function Lv(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Fv(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var Jp,kv,Xr,Ba,qe,wv,$v,FZ,vC,bC,Yp,St,Zs,Ev,Ke,zt,jt,Je,Va,Tv,Xp,Pv,Rv,Qp,Hs,Z,em,Cv,Ov,UZ,Wa,SC,Ga,kC,qs,To,Iv,wC,$C,EC,TC,PC,RC,tm,CC,OC,rm,Ka,IC,AC,Ja,NC,Bs,Vs,zC,Ws,Po,jC,Gs,Ya,Xa,Qa,ZZ,ec,tc,rc,Av,Nv,zv,nm,jv,Ks,Ro,Dv,DC,Co,MC,Oo,LC,om,FC,nc,UC,ZC,HC,qC,BC,VC,WC,GC,KC,JC,Io,YC,XC,oc,sm,im,am,QC,eO,tO,cm,rO,nO,oO,sO,iO,Mv,sc,aO,ic,HZ,cO,Ao,uO,qZ,Js,lO,um,dO,pO,mO,fO,hO,gO,_O,qa,yO,xO,vO,Ys,lm,bO,SO,kO,wO,$O,EO,TO,PO,RO,CO,OO,IO,AO,NO,zO,jO,DO,MO,No,LO,FO,UO,ac,ZO,HO,qO,dm,BO,BZ,VZ,WZ,GZ,KZ,JZ,D,Kp,Un=v(()=>{Sv();Jp="2025-11-25",kv=[Jp,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Xr="io.modelcontextprotocol/related-task",Ba="2.0",qe=_v(t=>t!==null&&(typeof t=="object"||typeof t=="function")),wv=we([b(),me().int()]),$v=b(),FZ=at({ttl:me().optional(),pollInterval:me().optional()}),vC=I({ttl:me().optional()}),bC=I({taskId:b()}),Yp=at({progressToken:wv.optional(),[Xr]:bC.optional()}),St=I({_meta:Yp.optional()}),Zs=St.extend({task:vC.optional()}),Ev=t=>Zs.safeParse(t).success,Ke=I({method:b(),params:St.loose().optional()}),zt=I({_meta:Yp.optional()}),jt=I({method:b(),params:zt.loose().optional()}),Je=at({_meta:Yp.optional()}),Va=we([b(),me().int()]),Tv=I({jsonrpc:L(Ba),id:Va,...Ke.shape}).strict(),Xp=t=>Tv.safeParse(t).success,Pv=I({jsonrpc:L(Ba),...jt.shape}).strict(),Rv=t=>Pv.safeParse(t).success,Qp=I({jsonrpc:L(Ba),id:Va,result:Je}).strict(),Hs=t=>Qp.safeParse(t).success;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(Z||(Z={}));em=I({jsonrpc:L(Ba),id:Va.optional(),error:I({code:me().int(),message:b(),data:Oe().optional()})}).strict(),Cv=t=>em.safeParse(t).success,Ov=we([Tv,Pv,Qp,em]),UZ=we([Qp,em]),Wa=Je.strict(),SC=zt.extend({requestId:Va.optional(),reason:b().optional()}),Ga=jt.extend({method:L("notifications/cancelled"),params:SC}),kC=I({src:b(),mimeType:b().optional(),sizes:se(b()).optional(),theme:ht(["light","dark"]).optional()}),qs=I({icons:se(kC).optional()}),To=I({name:b(),title:b().optional()}),Iv=To.extend({...To.shape,...qs.shape,version:b(),websiteUrl:b().optional(),description:b().optional()}),wC=Ha(I({applyDefaults:Be().optional()}),Se(b(),Oe())),$C=Gp(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Ha(I({form:wC.optional(),url:qe.optional()}),Se(b(),Oe()).optional())),EC=at({list:qe.optional(),cancel:qe.optional(),requests:at({sampling:at({createMessage:qe.optional()}).optional(),elicitation:at({create:qe.optional()}).optional()}).optional()}),TC=at({list:qe.optional(),cancel:qe.optional(),requests:at({tools:at({call:qe.optional()}).optional()}).optional()}),PC=I({experimental:Se(b(),qe).optional(),sampling:I({context:qe.optional(),tools:qe.optional()}).optional(),elicitation:$C.optional(),roots:I({listChanged:Be().optional()}).optional(),tasks:EC.optional(),extensions:Se(b(),qe).optional()}),RC=St.extend({protocolVersion:b(),capabilities:PC,clientInfo:Iv}),tm=Ke.extend({method:L("initialize"),params:RC}),CC=I({experimental:Se(b(),qe).optional(),logging:qe.optional(),completions:qe.optional(),prompts:I({listChanged:Be().optional()}).optional(),resources:I({subscribe:Be().optional(),listChanged:Be().optional()}).optional(),tools:I({listChanged:Be().optional()}).optional(),tasks:TC.optional(),extensions:Se(b(),qe).optional()}),OC=Je.extend({protocolVersion:b(),capabilities:CC,serverInfo:Iv,instructions:b().optional()}),rm=jt.extend({method:L("notifications/initialized"),params:zt.optional()}),Ka=Ke.extend({method:L("ping"),params:St.optional()}),IC=I({progress:me(),total:Ie(me()),message:Ie(b())}),AC=I({...zt.shape,...IC.shape,progressToken:wv}),Ja=jt.extend({method:L("notifications/progress"),params:AC}),NC=St.extend({cursor:$v.optional()}),Bs=Ke.extend({params:NC.optional()}),Vs=Je.extend({nextCursor:$v.optional()}),zC=ht(["working","input_required","completed","failed","cancelled"]),Ws=I({taskId:b(),status:zC,ttl:we([me(),lv()]),createdAt:b(),lastUpdatedAt:b(),pollInterval:Ie(me()),statusMessage:Ie(b())}),Po=Je.extend({task:Ws}),jC=zt.merge(Ws),Gs=jt.extend({method:L("notifications/tasks/status"),params:jC}),Ya=Ke.extend({method:L("tasks/get"),params:St.extend({taskId:b()})}),Xa=Je.merge(Ws),Qa=Ke.extend({method:L("tasks/result"),params:St.extend({taskId:b()})}),ZZ=Je.loose(),ec=Bs.extend({method:L("tasks/list")}),tc=Vs.extend({tasks:se(Ws)}),rc=Ke.extend({method:L("tasks/cancel"),params:St.extend({taskId:b()})}),Av=Je.merge(Ws),Nv=I({uri:b(),mimeType:Ie(b()),_meta:Se(b(),Oe()).optional()}),zv=Nv.extend({text:b()}),nm=b().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),jv=Nv.extend({blob:nm}),Ks=ht(["user","assistant"]),Ro=I({audience:se(Ks).optional(),priority:me().min(0).max(1).optional(),lastModified:Fs.datetime({offset:!0}).optional()}),Dv=I({...To.shape,...qs.shape,uri:b(),description:Ie(b()),mimeType:Ie(b()),size:Ie(me()),annotations:Ro.optional(),_meta:Ie(at({}))}),DC=I({...To.shape,...qs.shape,uriTemplate:b(),description:Ie(b()),mimeType:Ie(b()),annotations:Ro.optional(),_meta:Ie(at({}))}),Co=Bs.extend({method:L("resources/list")}),MC=Vs.extend({resources:se(Dv)}),Oo=Bs.extend({method:L("resources/templates/list")}),LC=Vs.extend({resourceTemplates:se(DC)}),om=St.extend({uri:b()}),FC=om,nc=Ke.extend({method:L("resources/read"),params:FC}),UC=Je.extend({contents:se(we([zv,jv]))}),ZC=jt.extend({method:L("notifications/resources/list_changed"),params:zt.optional()}),HC=om,qC=Ke.extend({method:L("resources/subscribe"),params:HC}),BC=om,VC=Ke.extend({method:L("resources/unsubscribe"),params:BC}),WC=zt.extend({uri:b()}),GC=jt.extend({method:L("notifications/resources/updated"),params:WC}),KC=I({name:b(),description:Ie(b()),required:Ie(Be())}),JC=I({...To.shape,...qs.shape,description:Ie(b()),arguments:Ie(se(KC)),_meta:Ie(at({}))}),Io=Bs.extend({method:L("prompts/list")}),YC=Vs.extend({prompts:se(JC)}),XC=St.extend({name:b(),arguments:Se(b(),b()).optional()}),oc=Ke.extend({method:L("prompts/get"),params:XC}),sm=I({type:L("text"),text:b(),annotations:Ro.optional(),_meta:Se(b(),Oe()).optional()}),im=I({type:L("image"),data:nm,mimeType:b(),annotations:Ro.optional(),_meta:Se(b(),Oe()).optional()}),am=I({type:L("audio"),data:nm,mimeType:b(),annotations:Ro.optional(),_meta:Se(b(),Oe()).optional()}),QC=I({type:L("tool_use"),name:b(),id:b(),input:Se(b(),Oe()),_meta:Se(b(),Oe()).optional()}),eO=I({type:L("resource"),resource:we([zv,jv]),annotations:Ro.optional(),_meta:Se(b(),Oe()).optional()}),tO=Dv.extend({type:L("resource_link")}),cm=we([sm,im,am,tO,eO]),rO=I({role:Ks,content:cm}),nO=Je.extend({description:b().optional(),messages:se(rO)}),oO=jt.extend({method:L("notifications/prompts/list_changed"),params:zt.optional()}),sO=I({title:b().optional(),readOnlyHint:Be().optional(),destructiveHint:Be().optional(),idempotentHint:Be().optional(),openWorldHint:Be().optional()}),iO=I({taskSupport:ht(["required","optional","forbidden"]).optional()}),Mv=I({...To.shape,...qs.shape,description:b().optional(),inputSchema:I({type:L("object"),properties:Se(b(),qe).optional(),required:se(b()).optional()}).catchall(Oe()),outputSchema:I({type:L("object"),properties:Se(b(),qe).optional(),required:se(b()).optional()}).catchall(Oe()).optional(),annotations:sO.optional(),execution:iO.optional(),_meta:Se(b(),Oe()).optional()}),sc=Bs.extend({method:L("tools/list")}),aO=Vs.extend({tools:se(Mv)}),ic=Je.extend({content:se(cm).default([]),structuredContent:Se(b(),Oe()).optional(),isError:Be().optional()}),HZ=ic.or(Je.extend({toolResult:Oe()})),cO=Zs.extend({name:b(),arguments:Se(b(),Oe()).optional()}),Ao=Ke.extend({method:L("tools/call"),params:cO}),uO=jt.extend({method:L("notifications/tools/list_changed"),params:zt.optional()}),qZ=I({autoRefresh:Be().default(!0),debounceMs:me().int().nonnegative().default(300)}),Js=ht(["debug","info","notice","warning","error","critical","alert","emergency"]),lO=St.extend({level:Js}),um=Ke.extend({method:L("logging/setLevel"),params:lO}),dO=zt.extend({level:Js,logger:b().optional(),data:Oe()}),pO=jt.extend({method:L("notifications/message"),params:dO}),mO=I({name:b().optional()}),fO=I({hints:se(mO).optional(),costPriority:me().min(0).max(1).optional(),speedPriority:me().min(0).max(1).optional(),intelligencePriority:me().min(0).max(1).optional()}),hO=I({mode:ht(["auto","required","none"]).optional()}),gO=I({type:L("tool_result"),toolUseId:b().describe("The unique identifier for the corresponding tool call."),content:se(cm).default([]),structuredContent:I({}).loose().optional(),isError:Be().optional(),_meta:Se(b(),Oe()).optional()}),_O=Wp("type",[sm,im,am]),qa=Wp("type",[sm,im,am,QC,gO]),yO=I({role:Ks,content:we([qa,se(qa)]),_meta:Se(b(),Oe()).optional()}),xO=Zs.extend({messages:se(yO),modelPreferences:fO.optional(),systemPrompt:b().optional(),includeContext:ht(["none","thisServer","allServers"]).optional(),temperature:me().optional(),maxTokens:me().int(),stopSequences:se(b()).optional(),metadata:qe.optional(),tools:se(Mv).optional(),toolChoice:hO.optional()}),vO=Ke.extend({method:L("sampling/createMessage"),params:xO}),Ys=Je.extend({model:b(),stopReason:Ie(ht(["endTurn","stopSequence","maxTokens"]).or(b())),role:Ks,content:_O}),lm=Je.extend({model:b(),stopReason:Ie(ht(["endTurn","stopSequence","maxTokens","toolUse"]).or(b())),role:Ks,content:we([qa,se(qa)])}),bO=I({type:L("boolean"),title:b().optional(),description:b().optional(),default:Be().optional()}),SO=I({type:L("string"),title:b().optional(),description:b().optional(),minLength:me().optional(),maxLength:me().optional(),format:ht(["email","uri","date","date-time"]).optional(),default:b().optional()}),kO=I({type:ht(["number","integer"]),title:b().optional(),description:b().optional(),minimum:me().optional(),maximum:me().optional(),default:me().optional()}),wO=I({type:L("string"),title:b().optional(),description:b().optional(),enum:se(b()),default:b().optional()}),$O=I({type:L("string"),title:b().optional(),description:b().optional(),oneOf:se(I({const:b(),title:b()})),default:b().optional()}),EO=I({type:L("string"),title:b().optional(),description:b().optional(),enum:se(b()),enumNames:se(b()).optional(),default:b().optional()}),TO=we([wO,$O]),PO=I({type:L("array"),title:b().optional(),description:b().optional(),minItems:me().optional(),maxItems:me().optional(),items:I({type:L("string"),enum:se(b())}),default:se(b()).optional()}),RO=I({type:L("array"),title:b().optional(),description:b().optional(),minItems:me().optional(),maxItems:me().optional(),items:I({anyOf:se(I({const:b(),title:b()}))}),default:se(b()).optional()}),CO=we([PO,RO]),OO=we([EO,TO,CO]),IO=we([OO,bO,SO,kO]),AO=Zs.extend({mode:L("form").optional(),message:b(),requestedSchema:I({type:L("object"),properties:Se(b(),IO),required:se(b()).optional()})}),NO=Zs.extend({mode:L("url"),message:b(),elicitationId:b(),url:b().url()}),zO=we([AO,NO]),jO=Ke.extend({method:L("elicitation/create"),params:zO}),DO=zt.extend({elicitationId:b()}),MO=jt.extend({method:L("notifications/elicitation/complete"),params:DO}),No=Je.extend({action:ht(["accept","decline","cancel"]),content:Gp(t=>t===null?void 0:t,Se(b(),we([b(),me(),Be(),se(b())])).optional())}),LO=I({type:L("ref/resource"),uri:b()}),FO=I({type:L("ref/prompt"),name:b()}),UO=St.extend({ref:we([FO,LO]),argument:I({name:b(),value:b()}),context:I({arguments:Se(b(),b()).optional()}).optional()}),ac=Ke.extend({method:L("completion/complete"),params:UO});ZO=Je.extend({completion:at({values:se(b()).max(100),total:Ie(me().int()),hasMore:Ie(Be())})}),HO=I({uri:b().startsWith("file://"),name:b().optional(),_meta:Se(b(),Oe()).optional()}),qO=Ke.extend({method:L("roots/list"),params:St.optional()}),dm=Je.extend({roots:se(HO)}),BO=jt.extend({method:L("notifications/roots/list_changed"),params:zt.optional()}),BZ=we([Ka,tm,ac,um,oc,Io,Co,Oo,nc,qC,VC,Ao,sc,Ya,Qa,ec,rc]),VZ=we([Ga,Ja,rm,BO,Gs]),WZ=we([Wa,Ys,lm,No,dm,Xa,tc,Po]),GZ=we([Ka,vO,jO,qO,Ya,Qa,ec,rc]),KZ=we([Ga,Ja,pO,GC,ZC,uO,oO,Gs,MO]),JZ=we([Wa,OC,ZO,nO,YC,MC,LC,UC,ic,aO,Xa,tc,Po]),D=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===Z.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Kp(o.elicitations,r)}return new t(e,r,n)}},Kp=class extends D{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(Z.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}}});function Qr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Uv=v(()=>{});var Hv,Zv,qv,cc=v(()=>{Hv=Symbol("Let zodToJsonSchema decide on which parser to use"),Zv={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"},qv=t=>typeof t=="string"?{...Zv,name:t}:{...Zv,...t}});var Bv,pm=v(()=>{cc();Bv=t=>{let e=qv(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 mm(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function ie(t,e,r,n,o){t[e]=r,mm(t,e,n,o)}var en=v(()=>{});var uc,lc=v(()=>{uc=(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 Ae(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?uc(e,t.currentPath):e.join("/")}}var Dt=v(()=>{lc()});function Vv(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==$.ZodAny&&(r.items=V(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&ie(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&ie(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(ie(r,"minItems",t.exactLength.value,t.exactLength.message,e),ie(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}var fm=v(()=>{Es();en();Ue()});function Wv(t,e){let r={type:"integer",format:"int64"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"min":e.target==="jsonSchema7"?n.inclusive?ie(r,"minimum",n.value,n.message,e):ie(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),ie(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?ie(r,"maximum",n.value,n.message,e):ie(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),ie(r,"maximum",n.value,n.message,e));break;case"multipleOf":ie(r,"multipleOf",n.value,n.message,e);break}return r}var hm=v(()=>{en()});function Gv(){return{type:"boolean"}}var gm=v(()=>{});function dc(t,e){return V(t.type._def,e)}var pc=v(()=>{Ue()});var Kv,_m=v(()=>{Ue();Kv=(t,e)=>V(t.innerType._def,e)});function ym(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>ym(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 VO(t,e)}}var VO,xm=v(()=>{en();VO=(t,e)=>{let r={type:"integer",format:"unix-time"};if(e.target==="openApi3")return r;for(let n of t.checks)switch(n.kind){case"min":ie(r,"minimum",n.value,n.message,e);break;case"max":ie(r,"maximum",n.value,n.message,e);break}return r}});function Jv(t,e){return{...V(t.innerType._def,e),default:t.defaultValue()}}var vm=v(()=>{Ue()});function Yv(t,e){return e.effectStrategy==="input"?V(t.schema._def,e):Ae(e)}var bm=v(()=>{Ue();Dt()});function Xv(t){return{type:"string",enum:Array.from(t.values)}}var Sm=v(()=>{});function Qv(t,e){let r=[V(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),V(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(WO(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}var WO,km=v(()=>{Ue();WO=t=>"type"in t&&t.type==="string"?!1:"allOf"in t});function eb(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 wm=v(()=>{});function mc(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":ie(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":ie(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":Yt(r,"email",n.message,e);break;case"format:idn-email":Yt(r,"idn-email",n.message,e);break;case"pattern:zod":ct(r,Jt.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":ct(r,n.regex,n.message,e);break;case"cuid":ct(r,Jt.cuid,n.message,e);break;case"cuid2":ct(r,Jt.cuid2,n.message,e);break;case"startsWith":ct(r,RegExp(`^${Em(n.value,e)}`),n.message,e);break;case"endsWith":ct(r,RegExp(`${Em(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":ie(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),ie(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{ct(r,RegExp(Em(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":ct(r,Jt.base64url,n.message,e);break;case"jwt":ct(r,Jt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&ct(r,Jt.ipv4Cidr,n.message,e),n.version!=="v4"&&ct(r,Jt.ipv6Cidr,n.message,e);break}case"emoji":ct(r,Jt.emoji(),n.message,e);break;case"ulid":{ct(r,Jt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{Yt(r,"binary",n.message,e);break}case"contentEncoding:base64":{ie(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{ct(r,Jt.base64,n.message,e);break}}break}case"nanoid":ct(r,Jt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Em(t,e){return e.patternStrategy==="escape"?KO(t):t}function KO(t){let e="";for(let r=0;r<t.length;r++)GO.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}}})):ie(t,"format",e,r,n)}function ct(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:tb(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):ie(t,"pattern",tb(e,n),r,n)}function tb(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
46
+ 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 p=this.seen.get(l),f=p.def??p.schema,m={...f};if(p.ref===null)return;let h=p.ref;if(p.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,m))}p.isParent||this.override({zodSchema:l,jsonSchema:f,path:p.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.")}}}});var Ux=v(()=>{});var it=v(()=>{So();Jl();Hl();Rx();wa();rd();lr();ka();Ca();Bd();td();Lx();Mx();Fx();Ux()});var Ap=v(()=>{it()});function Np(t,e){let r={type:"object",get shape(){return oe.assignProp(this,"shape",{...t}),this.shape},...oe.normalizeParams(e)};return new yR(r)}var _R,yR,Zx=v(()=>{it();it();Ap();_R=S("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ge.init(t,e),t.def=e,t.parse=(r,n)=>Bl(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>jn(t,r,n),t.parseAsync=async(r,n)=>Wl(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Dn(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)=>bt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))}),yR=S("ZodMiniObject",(t,e)=>{Pa.init(t,e),_R.init(t,e),oe.defineLazy(t,"shape",()=>e.shape)})});var Hx=v(()=>{});var qx=v(()=>{});var Bx=v(()=>{});var Vx=v(()=>{it();Ap();Zx();Hx();it();Ca();qx();Bx()});var Wx=v(()=>{Vx()});var zp=v(()=>{Wx()});function zt(t){return!!t._zod}function Fn(t){let e=Object.values(t);if(e.length===0)return Np({});let r=e.every(zt),n=e.every(o=>!zt(o));if(r)return Np(t);if(n)return Cl(t);throw new Error("Mixed Zod versions detected in object shape.")}function Jr(t,e){return zt(t)?jn(t,e):t.safeParse(e)}async function Ma(t,e){return zt(t)?await Dn(t,e):await t.safeParseAsync(e)}function Yr(t){if(!t)return;let e;if(zt(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function Eo(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 Fn(t)}}if(zt(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 La(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 Kx(t){return t.description}function Jx(t){if(zt(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Fa(t){if(zt(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 Ls=v(()=>{Es();zp()});var jp=v(()=>{it()});var Fs={};Ze(Fs,{ZodISODate:()=>Xx,ZodISODateTime:()=>Yx,ZodISODuration:()=>ev,ZodISOTime:()=>Qx,date:()=>Mp,datetime:()=>Dp,duration:()=>Fp,time:()=>Lp});function Dp(t){return Ax(Yx,t)}function Mp(t){return Nx(Xx,t)}function Lp(t){return zx(Qx,t)}function Fp(t){return jx(ev,t)}var Yx,Xx,Qx,ev,Up=v(()=>{it();Zp();Yx=S("ZodISODateTime",(t,e)=>{wx.init(t,e),Ce.init(t,e)});Xx=S("ZodISODate",(t,e)=>{$x.init(t,e),Ce.init(t,e)});Qx=S("ZodISOTime",(t,e)=>{Ex.init(t,e),Ce.init(t,e)});ev=S("ZodISODuration",(t,e)=>{Tx.init(t,e),Ce.init(t,e)})});var tv,wZ,Us,Hp=v(()=>{it();it();tv=(t,e)=>{ba.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Zl(t,r)},flatten:{value:r=>Ul(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},wZ=S("ZodError",tv),Us=S("ZodError",tv,{Parent:Error})});var rv,nv,ov,sv,qp=v(()=>{it();Hp();rv=ql(Us),nv=Vl(Us),ov=Gl(Us),sv=Kl(Us)});function b(t){return Vd(PR,t)}function me(t){return fp(lv,t)}function av(t){return hp(VR,t)}function Be(t){return gp(WR,t)}function dv(t){return _p(GR,t)}function Oe(){return yp(KR)}function YR(t){return xp(JR,t)}function se(t,e){return Dx(XR,t,e)}function A(t,e){let r={type:"object",get shape(){return oe.assignProp(this,"shape",{...t}),this.shape},...oe.normalizeParams(e)};return new pv(r)}function at(t,e){return new pv({type:"object",get shape(){return oe.assignProp(this,"shape",{...t}),this.shape},catchall:Oe(),...oe.normalizeParams(e)})}function $e(t,e){return new mv({type:"union",options:t,...oe.normalizeParams(e)})}function Wp(t,e,r){return new QR({type:"union",options:e,discriminator:t,...oe.normalizeParams(r)})}function Za(t,e){return new eC({type:"intersection",left:t,right:e})}function ke(t,e,r){return new tC({type:"record",keyType:t,valueType:e,...oe.normalizeParams(r)})}function ht(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Bp({type:"enum",entries:r,...oe.normalizeParams(e)})}function L(t,e){return new rC({type:"literal",values:Array.isArray(t)?t:[t],...oe.normalizeParams(e)})}function fv(t){return new nC({type:"transform",transform:t})}function Ie(t){return new hv({type:"optional",innerType:t})}function cv(t){return new oC({type:"nullable",innerType:t})}function iC(t,e){return new sC({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function cC(t,e){return new aC({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function uC(t,e){return new gv({type:"nonoptional",innerType:t,...oe.normalizeParams(e)})}function dC(t,e){return new lC({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}function Vp(t,e){return new pC({type:"pipe",in:t,out:e})}function fC(t){return new mC({type:"readonly",innerType:t})}function hC(t){let e=new Ge({check:"custom"});return e._zod.check=t,e}function yv(t,e){return Cp(_v,t??(()=>!0),e)}function gC(t,e={}){return Op(_v,t,e)}function _C(t){let e=hC(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(oe.issue(n,r.value,e._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=e),o.continue??(o.continue=!e._zod.def.abort),r.issues.push(oe.issue(o))}},t(r.value,r)));return e}function Gp(t,e){return Vp(fv(t),e)}var ze,uv,PR,Ce,RR,iv,Ua,CR,OR,IR,AR,NR,zR,jR,DR,MR,LR,FR,UR,ZR,HR,qR,BR,lv,VR,WR,GR,KR,JR,XR,pv,mv,QR,eC,tC,Bp,rC,nC,hv,oC,sC,aC,gv,lC,pC,mC,_v,Zp=v(()=>{it();it();jp();Up();qp();ze=S("ZodType",(t,e)=>(ge.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)=>bt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>rv(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>ov(t,r,n),t.parseAsync=async(r,n)=>nv(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>sv(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(gC(r,n)),t.superRefine=r=>t.check(_C(r)),t.overwrite=r=>t.check(Mn(r)),t.optional=()=>Ie(t),t.nullable=()=>cv(t),t.nullish=()=>Ie(cv(t)),t.nonoptional=r=>uC(t,r),t.array=()=>se(t),t.or=r=>$e([t,r]),t.and=r=>Za(t,r),t.transform=r=>Vp(t,fv(r)),t.default=r=>iC(t,r),t.prefault=r=>cC(t,r),t.catch=r=>dC(t,r),t.pipe=r=>Vp(t,r),t.readonly=()=>fC(t),t.describe=r=>{let n=t.clone();return Kr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Kr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Kr.get(t);let n=t.clone();return Kr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),uv=S("_ZodString",(t,e)=>{zs.init(t,e),ze.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(vp(...n)),t.includes=(...n)=>t.check(kp(...n)),t.startsWith=(...n)=>t.check(wp(...n)),t.endsWith=(...n)=>t.check($p(...n)),t.min=(...n)=>t.check($o(...n)),t.max=(...n)=>t.check(za(...n)),t.length=(...n)=>t.check(ja(...n)),t.nonempty=(...n)=>t.check($o(1,...n)),t.lowercase=n=>t.check(bp(n)),t.uppercase=n=>t.check(Sp(n)),t.trim=()=>t.check(Tp()),t.normalize=(...n)=>t.check(Ep(...n)),t.toLowerCase=()=>t.check(Pp()),t.toUpperCase=()=>t.check(Rp())}),PR=S("ZodString",(t,e)=>{zs.init(t,e),uv.init(t,e),t.email=r=>t.check(Wd(RR,r)),t.url=r=>t.check(Xd(CR,r)),t.jwt=r=>t.check(mp(BR,r)),t.emoji=r=>t.check(Qd(OR,r)),t.guid=r=>t.check(Oa(iv,r)),t.uuid=r=>t.check(Gd(Ua,r)),t.uuidv4=r=>t.check(Kd(Ua,r)),t.uuidv6=r=>t.check(Jd(Ua,r)),t.uuidv7=r=>t.check(Yd(Ua,r)),t.nanoid=r=>t.check(ep(IR,r)),t.guid=r=>t.check(Oa(iv,r)),t.cuid=r=>t.check(tp(AR,r)),t.cuid2=r=>t.check(rp(NR,r)),t.ulid=r=>t.check(np(zR,r)),t.base64=r=>t.check(lp(ZR,r)),t.base64url=r=>t.check(dp(HR,r)),t.xid=r=>t.check(op(jR,r)),t.ksuid=r=>t.check(sp(DR,r)),t.ipv4=r=>t.check(ip(MR,r)),t.ipv6=r=>t.check(ap(LR,r)),t.cidrv4=r=>t.check(cp(FR,r)),t.cidrv6=r=>t.check(up(UR,r)),t.e164=r=>t.check(pp(qR,r)),t.datetime=r=>t.check(Dp(r)),t.date=r=>t.check(Mp(r)),t.time=r=>t.check(Lp(r)),t.duration=r=>t.check(Fp(r))});Ce=S("ZodStringFormat",(t,e)=>{Se.init(t,e),uv.init(t,e)}),RR=S("ZodEmail",(t,e)=>{id.init(t,e),Ce.init(t,e)}),iv=S("ZodGUID",(t,e)=>{od.init(t,e),Ce.init(t,e)}),Ua=S("ZodUUID",(t,e)=>{sd.init(t,e),Ce.init(t,e)}),CR=S("ZodURL",(t,e)=>{ad.init(t,e),Ce.init(t,e)}),OR=S("ZodEmoji",(t,e)=>{cd.init(t,e),Ce.init(t,e)}),IR=S("ZodNanoID",(t,e)=>{ud.init(t,e),Ce.init(t,e)}),AR=S("ZodCUID",(t,e)=>{ld.init(t,e),Ce.init(t,e)}),NR=S("ZodCUID2",(t,e)=>{dd.init(t,e),Ce.init(t,e)}),zR=S("ZodULID",(t,e)=>{pd.init(t,e),Ce.init(t,e)}),jR=S("ZodXID",(t,e)=>{md.init(t,e),Ce.init(t,e)}),DR=S("ZodKSUID",(t,e)=>{fd.init(t,e),Ce.init(t,e)}),MR=S("ZodIPv4",(t,e)=>{hd.init(t,e),Ce.init(t,e)}),LR=S("ZodIPv6",(t,e)=>{gd.init(t,e),Ce.init(t,e)}),FR=S("ZodCIDRv4",(t,e)=>{_d.init(t,e),Ce.init(t,e)}),UR=S("ZodCIDRv6",(t,e)=>{yd.init(t,e),Ce.init(t,e)}),ZR=S("ZodBase64",(t,e)=>{xd.init(t,e),Ce.init(t,e)}),HR=S("ZodBase64URL",(t,e)=>{vd.init(t,e),Ce.init(t,e)}),qR=S("ZodE164",(t,e)=>{bd.init(t,e),Ce.init(t,e)}),BR=S("ZodJWT",(t,e)=>{Sd.init(t,e),Ce.init(t,e)}),lv=S("ZodNumber",(t,e)=>{Ta.init(t,e),ze.init(t,e),t.gt=(n,o)=>t.check(Aa(n,o)),t.gte=(n,o)=>t.check(Ms(n,o)),t.min=(n,o)=>t.check(Ms(n,o)),t.lt=(n,o)=>t.check(Ia(n,o)),t.lte=(n,o)=>t.check(Ds(n,o)),t.max=(n,o)=>t.check(Ds(n,o)),t.int=n=>t.check(av(n)),t.safe=n=>t.check(av(n)),t.positive=n=>t.check(Aa(0,n)),t.nonnegative=n=>t.check(Ms(0,n)),t.negative=n=>t.check(Ia(0,n)),t.nonpositive=n=>t.check(Ds(0,n)),t.multipleOf=(n,o)=>t.check(Na(n,o)),t.step=(n,o)=>t.check(Na(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});VR=S("ZodNumberFormat",(t,e)=>{kd.init(t,e),lv.init(t,e)});WR=S("ZodBoolean",(t,e)=>{wd.init(t,e),ze.init(t,e)});GR=S("ZodNull",(t,e)=>{$d.init(t,e),ze.init(t,e)});KR=S("ZodUnknown",(t,e)=>{Ed.init(t,e),ze.init(t,e)});JR=S("ZodNever",(t,e)=>{Td.init(t,e),ze.init(t,e)});XR=S("ZodArray",(t,e)=>{Pd.init(t,e),ze.init(t,e),t.element=e.element,t.min=(r,n)=>t.check($o(r,n)),t.nonempty=r=>t.check($o(1,r)),t.max=(r,n)=>t.check(za(r,n)),t.length=(r,n)=>t.check(ja(r,n)),t.unwrap=()=>t.element});pv=S("ZodObject",(t,e)=>{Pa.init(t,e),ze.init(t,e),oe.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>ht(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:Oe()}),t.loose=()=>t.clone({...t._zod.def,catchall:Oe()}),t.strict=()=>t.clone({...t._zod.def,catchall:YR()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>oe.extend(t,r),t.merge=r=>oe.merge(t,r),t.pick=r=>oe.pick(t,r),t.omit=r=>oe.omit(t,r),t.partial=(...r)=>oe.partial(hv,t,r[0]),t.required=(...r)=>oe.required(gv,t,r[0])});mv=S("ZodUnion",(t,e)=>{Ra.init(t,e),ze.init(t,e),t.options=e.options});QR=S("ZodDiscriminatedUnion",(t,e)=>{mv.init(t,e),Rd.init(t,e)});eC=S("ZodIntersection",(t,e)=>{Cd.init(t,e),ze.init(t,e)});tC=S("ZodRecord",(t,e)=>{Od.init(t,e),ze.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});Bp=S("ZodEnum",(t,e)=>{Id.init(t,e),ze.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 Bp({...e,checks:[],...oe.normalizeParams(o),entries:s})},t.exclude=(n,o)=>{let s={...e.entries};for(let i of n)if(r.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new Bp({...e,checks:[],...oe.normalizeParams(o),entries:s})}});rC=S("ZodLiteral",(t,e)=>{Ad.init(t,e),ze.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]}})});nC=S("ZodTransform",(t,e)=>{Nd.init(t,e),ze.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(oe.issue(s,r.value,e));else{let i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=t),i.continue??(i.continue=!0),r.issues.push(oe.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});hv=S("ZodOptional",(t,e)=>{zd.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType});oC=S("ZodNullable",(t,e)=>{jd.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType});sC=S("ZodDefault",(t,e)=>{Dd.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});aC=S("ZodPrefault",(t,e)=>{Md.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType});gv=S("ZodNonOptional",(t,e)=>{Ld.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType});lC=S("ZodCatch",(t,e)=>{Fd.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});pC=S("ZodPipe",(t,e)=>{Ud.init(t,e),ze.init(t,e),t.in=e.in,t.out=e.out});mC=S("ZodReadonly",(t,e)=>{Zd.init(t,e),ze.init(t,e)});_v=S("ZodCustom",(t,e)=>{Hd.init(t,e),ze.init(t,e)})});var xv=v(()=>{});var vv=v(()=>{});var bv=v(()=>{it();Zp();jp();Hp();qp();xv();it();Ox();Ca();Up();vv();vt(Cx())});var Sv=v(()=>{bv()});var kv=v(()=>{Sv()});function Fv(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Uv(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var Jp,wv,Xr,qa,qe,$v,Ev,FZ,vC,bC,Yp,St,Zs,Tv,Ke,jt,Dt,Je,Ba,Pv,Xp,Rv,Cv,Qp,Hs,Z,em,Ov,Iv,UZ,Va,SC,Wa,kC,qs,To,Av,wC,$C,EC,TC,PC,RC,tm,CC,OC,rm,Ga,IC,AC,Ka,NC,Bs,Vs,zC,Ws,Po,jC,Gs,Ja,Ya,Xa,ZZ,Qa,ec,tc,Nv,zv,jv,nm,Dv,Ks,Ro,Mv,DC,Co,MC,Oo,LC,om,FC,rc,UC,ZC,HC,qC,BC,VC,WC,GC,KC,JC,Io,YC,XC,nc,sm,im,am,QC,eO,tO,cm,rO,nO,oO,sO,iO,Lv,oc,aO,sc,HZ,cO,Ao,uO,qZ,Js,lO,um,dO,pO,mO,fO,hO,gO,_O,Ha,yO,xO,vO,Ys,lm,bO,SO,kO,wO,$O,EO,TO,PO,RO,CO,OO,IO,AO,NO,zO,jO,DO,MO,No,LO,FO,UO,ic,ZO,HO,qO,dm,BO,BZ,VZ,WZ,GZ,KZ,JZ,D,Kp,Un=v(()=>{kv();Jp="2025-11-25",wv=[Jp,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Xr="io.modelcontextprotocol/related-task",qa="2.0",qe=yv(t=>t!==null&&(typeof t=="object"||typeof t=="function")),$v=$e([b(),me().int()]),Ev=b(),FZ=at({ttl:me().optional(),pollInterval:me().optional()}),vC=A({ttl:me().optional()}),bC=A({taskId:b()}),Yp=at({progressToken:$v.optional(),[Xr]:bC.optional()}),St=A({_meta:Yp.optional()}),Zs=St.extend({task:vC.optional()}),Tv=t=>Zs.safeParse(t).success,Ke=A({method:b(),params:St.loose().optional()}),jt=A({_meta:Yp.optional()}),Dt=A({method:b(),params:jt.loose().optional()}),Je=at({_meta:Yp.optional()}),Ba=$e([b(),me().int()]),Pv=A({jsonrpc:L(qa),id:Ba,...Ke.shape}).strict(),Xp=t=>Pv.safeParse(t).success,Rv=A({jsonrpc:L(qa),...Dt.shape}).strict(),Cv=t=>Rv.safeParse(t).success,Qp=A({jsonrpc:L(qa),id:Ba,result:Je}).strict(),Hs=t=>Qp.safeParse(t).success;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(Z||(Z={}));em=A({jsonrpc:L(qa),id:Ba.optional(),error:A({code:me().int(),message:b(),data:Oe().optional()})}).strict(),Ov=t=>em.safeParse(t).success,Iv=$e([Pv,Rv,Qp,em]),UZ=$e([Qp,em]),Va=Je.strict(),SC=jt.extend({requestId:Ba.optional(),reason:b().optional()}),Wa=Dt.extend({method:L("notifications/cancelled"),params:SC}),kC=A({src:b(),mimeType:b().optional(),sizes:se(b()).optional(),theme:ht(["light","dark"]).optional()}),qs=A({icons:se(kC).optional()}),To=A({name:b(),title:b().optional()}),Av=To.extend({...To.shape,...qs.shape,version:b(),websiteUrl:b().optional(),description:b().optional()}),wC=Za(A({applyDefaults:Be().optional()}),ke(b(),Oe())),$C=Gp(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Za(A({form:wC.optional(),url:qe.optional()}),ke(b(),Oe()).optional())),EC=at({list:qe.optional(),cancel:qe.optional(),requests:at({sampling:at({createMessage:qe.optional()}).optional(),elicitation:at({create:qe.optional()}).optional()}).optional()}),TC=at({list:qe.optional(),cancel:qe.optional(),requests:at({tools:at({call:qe.optional()}).optional()}).optional()}),PC=A({experimental:ke(b(),qe).optional(),sampling:A({context:qe.optional(),tools:qe.optional()}).optional(),elicitation:$C.optional(),roots:A({listChanged:Be().optional()}).optional(),tasks:EC.optional(),extensions:ke(b(),qe).optional()}),RC=St.extend({protocolVersion:b(),capabilities:PC,clientInfo:Av}),tm=Ke.extend({method:L("initialize"),params:RC}),CC=A({experimental:ke(b(),qe).optional(),logging:qe.optional(),completions:qe.optional(),prompts:A({listChanged:Be().optional()}).optional(),resources:A({subscribe:Be().optional(),listChanged:Be().optional()}).optional(),tools:A({listChanged:Be().optional()}).optional(),tasks:TC.optional(),extensions:ke(b(),qe).optional()}),OC=Je.extend({protocolVersion:b(),capabilities:CC,serverInfo:Av,instructions:b().optional()}),rm=Dt.extend({method:L("notifications/initialized"),params:jt.optional()}),Ga=Ke.extend({method:L("ping"),params:St.optional()}),IC=A({progress:me(),total:Ie(me()),message:Ie(b())}),AC=A({...jt.shape,...IC.shape,progressToken:$v}),Ka=Dt.extend({method:L("notifications/progress"),params:AC}),NC=St.extend({cursor:Ev.optional()}),Bs=Ke.extend({params:NC.optional()}),Vs=Je.extend({nextCursor:Ev.optional()}),zC=ht(["working","input_required","completed","failed","cancelled"]),Ws=A({taskId:b(),status:zC,ttl:$e([me(),dv()]),createdAt:b(),lastUpdatedAt:b(),pollInterval:Ie(me()),statusMessage:Ie(b())}),Po=Je.extend({task:Ws}),jC=jt.merge(Ws),Gs=Dt.extend({method:L("notifications/tasks/status"),params:jC}),Ja=Ke.extend({method:L("tasks/get"),params:St.extend({taskId:b()})}),Ya=Je.merge(Ws),Xa=Ke.extend({method:L("tasks/result"),params:St.extend({taskId:b()})}),ZZ=Je.loose(),Qa=Bs.extend({method:L("tasks/list")}),ec=Vs.extend({tasks:se(Ws)}),tc=Ke.extend({method:L("tasks/cancel"),params:St.extend({taskId:b()})}),Nv=Je.merge(Ws),zv=A({uri:b(),mimeType:Ie(b()),_meta:ke(b(),Oe()).optional()}),jv=zv.extend({text:b()}),nm=b().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Dv=zv.extend({blob:nm}),Ks=ht(["user","assistant"]),Ro=A({audience:se(Ks).optional(),priority:me().min(0).max(1).optional(),lastModified:Fs.datetime({offset:!0}).optional()}),Mv=A({...To.shape,...qs.shape,uri:b(),description:Ie(b()),mimeType:Ie(b()),size:Ie(me()),annotations:Ro.optional(),_meta:Ie(at({}))}),DC=A({...To.shape,...qs.shape,uriTemplate:b(),description:Ie(b()),mimeType:Ie(b()),annotations:Ro.optional(),_meta:Ie(at({}))}),Co=Bs.extend({method:L("resources/list")}),MC=Vs.extend({resources:se(Mv)}),Oo=Bs.extend({method:L("resources/templates/list")}),LC=Vs.extend({resourceTemplates:se(DC)}),om=St.extend({uri:b()}),FC=om,rc=Ke.extend({method:L("resources/read"),params:FC}),UC=Je.extend({contents:se($e([jv,Dv]))}),ZC=Dt.extend({method:L("notifications/resources/list_changed"),params:jt.optional()}),HC=om,qC=Ke.extend({method:L("resources/subscribe"),params:HC}),BC=om,VC=Ke.extend({method:L("resources/unsubscribe"),params:BC}),WC=jt.extend({uri:b()}),GC=Dt.extend({method:L("notifications/resources/updated"),params:WC}),KC=A({name:b(),description:Ie(b()),required:Ie(Be())}),JC=A({...To.shape,...qs.shape,description:Ie(b()),arguments:Ie(se(KC)),_meta:Ie(at({}))}),Io=Bs.extend({method:L("prompts/list")}),YC=Vs.extend({prompts:se(JC)}),XC=St.extend({name:b(),arguments:ke(b(),b()).optional()}),nc=Ke.extend({method:L("prompts/get"),params:XC}),sm=A({type:L("text"),text:b(),annotations:Ro.optional(),_meta:ke(b(),Oe()).optional()}),im=A({type:L("image"),data:nm,mimeType:b(),annotations:Ro.optional(),_meta:ke(b(),Oe()).optional()}),am=A({type:L("audio"),data:nm,mimeType:b(),annotations:Ro.optional(),_meta:ke(b(),Oe()).optional()}),QC=A({type:L("tool_use"),name:b(),id:b(),input:ke(b(),Oe()),_meta:ke(b(),Oe()).optional()}),eO=A({type:L("resource"),resource:$e([jv,Dv]),annotations:Ro.optional(),_meta:ke(b(),Oe()).optional()}),tO=Mv.extend({type:L("resource_link")}),cm=$e([sm,im,am,tO,eO]),rO=A({role:Ks,content:cm}),nO=Je.extend({description:b().optional(),messages:se(rO)}),oO=Dt.extend({method:L("notifications/prompts/list_changed"),params:jt.optional()}),sO=A({title:b().optional(),readOnlyHint:Be().optional(),destructiveHint:Be().optional(),idempotentHint:Be().optional(),openWorldHint:Be().optional()}),iO=A({taskSupport:ht(["required","optional","forbidden"]).optional()}),Lv=A({...To.shape,...qs.shape,description:b().optional(),inputSchema:A({type:L("object"),properties:ke(b(),qe).optional(),required:se(b()).optional()}).catchall(Oe()),outputSchema:A({type:L("object"),properties:ke(b(),qe).optional(),required:se(b()).optional()}).catchall(Oe()).optional(),annotations:sO.optional(),execution:iO.optional(),_meta:ke(b(),Oe()).optional()}),oc=Bs.extend({method:L("tools/list")}),aO=Vs.extend({tools:se(Lv)}),sc=Je.extend({content:se(cm).default([]),structuredContent:ke(b(),Oe()).optional(),isError:Be().optional()}),HZ=sc.or(Je.extend({toolResult:Oe()})),cO=Zs.extend({name:b(),arguments:ke(b(),Oe()).optional()}),Ao=Ke.extend({method:L("tools/call"),params:cO}),uO=Dt.extend({method:L("notifications/tools/list_changed"),params:jt.optional()}),qZ=A({autoRefresh:Be().default(!0),debounceMs:me().int().nonnegative().default(300)}),Js=ht(["debug","info","notice","warning","error","critical","alert","emergency"]),lO=St.extend({level:Js}),um=Ke.extend({method:L("logging/setLevel"),params:lO}),dO=jt.extend({level:Js,logger:b().optional(),data:Oe()}),pO=Dt.extend({method:L("notifications/message"),params:dO}),mO=A({name:b().optional()}),fO=A({hints:se(mO).optional(),costPriority:me().min(0).max(1).optional(),speedPriority:me().min(0).max(1).optional(),intelligencePriority:me().min(0).max(1).optional()}),hO=A({mode:ht(["auto","required","none"]).optional()}),gO=A({type:L("tool_result"),toolUseId:b().describe("The unique identifier for the corresponding tool call."),content:se(cm).default([]),structuredContent:A({}).loose().optional(),isError:Be().optional(),_meta:ke(b(),Oe()).optional()}),_O=Wp("type",[sm,im,am]),Ha=Wp("type",[sm,im,am,QC,gO]),yO=A({role:Ks,content:$e([Ha,se(Ha)]),_meta:ke(b(),Oe()).optional()}),xO=Zs.extend({messages:se(yO),modelPreferences:fO.optional(),systemPrompt:b().optional(),includeContext:ht(["none","thisServer","allServers"]).optional(),temperature:me().optional(),maxTokens:me().int(),stopSequences:se(b()).optional(),metadata:qe.optional(),tools:se(Lv).optional(),toolChoice:hO.optional()}),vO=Ke.extend({method:L("sampling/createMessage"),params:xO}),Ys=Je.extend({model:b(),stopReason:Ie(ht(["endTurn","stopSequence","maxTokens"]).or(b())),role:Ks,content:_O}),lm=Je.extend({model:b(),stopReason:Ie(ht(["endTurn","stopSequence","maxTokens","toolUse"]).or(b())),role:Ks,content:$e([Ha,se(Ha)])}),bO=A({type:L("boolean"),title:b().optional(),description:b().optional(),default:Be().optional()}),SO=A({type:L("string"),title:b().optional(),description:b().optional(),minLength:me().optional(),maxLength:me().optional(),format:ht(["email","uri","date","date-time"]).optional(),default:b().optional()}),kO=A({type:ht(["number","integer"]),title:b().optional(),description:b().optional(),minimum:me().optional(),maximum:me().optional(),default:me().optional()}),wO=A({type:L("string"),title:b().optional(),description:b().optional(),enum:se(b()),default:b().optional()}),$O=A({type:L("string"),title:b().optional(),description:b().optional(),oneOf:se(A({const:b(),title:b()})),default:b().optional()}),EO=A({type:L("string"),title:b().optional(),description:b().optional(),enum:se(b()),enumNames:se(b()).optional(),default:b().optional()}),TO=$e([wO,$O]),PO=A({type:L("array"),title:b().optional(),description:b().optional(),minItems:me().optional(),maxItems:me().optional(),items:A({type:L("string"),enum:se(b())}),default:se(b()).optional()}),RO=A({type:L("array"),title:b().optional(),description:b().optional(),minItems:me().optional(),maxItems:me().optional(),items:A({anyOf:se(A({const:b(),title:b()}))}),default:se(b()).optional()}),CO=$e([PO,RO]),OO=$e([EO,TO,CO]),IO=$e([OO,bO,SO,kO]),AO=Zs.extend({mode:L("form").optional(),message:b(),requestedSchema:A({type:L("object"),properties:ke(b(),IO),required:se(b()).optional()})}),NO=Zs.extend({mode:L("url"),message:b(),elicitationId:b(),url:b().url()}),zO=$e([AO,NO]),jO=Ke.extend({method:L("elicitation/create"),params:zO}),DO=jt.extend({elicitationId:b()}),MO=Dt.extend({method:L("notifications/elicitation/complete"),params:DO}),No=Je.extend({action:ht(["accept","decline","cancel"]),content:Gp(t=>t===null?void 0:t,ke(b(),$e([b(),me(),Be(),se(b())])).optional())}),LO=A({type:L("ref/resource"),uri:b()}),FO=A({type:L("ref/prompt"),name:b()}),UO=St.extend({ref:$e([FO,LO]),argument:A({name:b(),value:b()}),context:A({arguments:ke(b(),b()).optional()}).optional()}),ic=Ke.extend({method:L("completion/complete"),params:UO});ZO=Je.extend({completion:at({values:se(b()).max(100),total:Ie(me().int()),hasMore:Ie(Be())})}),HO=A({uri:b().startsWith("file://"),name:b().optional(),_meta:ke(b(),Oe()).optional()}),qO=Ke.extend({method:L("roots/list"),params:St.optional()}),dm=Je.extend({roots:se(HO)}),BO=Dt.extend({method:L("notifications/roots/list_changed"),params:jt.optional()}),BZ=$e([Ga,tm,ic,um,nc,Io,Co,Oo,rc,qC,VC,Ao,oc,Ja,Xa,Qa,tc]),VZ=$e([Wa,Ka,rm,BO,Gs]),WZ=$e([Va,Ys,lm,No,dm,Ya,ec,Po]),GZ=$e([Ga,vO,jO,qO,Ja,Xa,Qa,tc]),KZ=$e([Wa,Ka,pO,GC,ZC,uO,oO,Gs,MO]),JZ=$e([Va,OC,ZO,nO,YC,MC,LC,UC,sc,aO,Ya,ec,Po]),D=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===Z.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Kp(o.elicitations,r)}return new t(e,r,n)}},Kp=class extends D{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(Z.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}}});function Qr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Zv=v(()=>{});var qv,Hv,Bv,ac=v(()=>{qv=Symbol("Let zodToJsonSchema decide on which parser to use"),Hv={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"},Bv=t=>typeof t=="string"?{...Hv,name:t}:{...Hv,...t}});var Vv,pm=v(()=>{ac();Vv=t=>{let e=Bv(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 mm(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function ie(t,e,r,n,o){t[e]=r,mm(t,e,n,o)}var en=v(()=>{});var cc,uc=v(()=>{cc=(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 Ae(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?cc(e,t.currentPath):e.join("/")}}var Mt=v(()=>{uc()});function Wv(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==T.ZodAny&&(r.items=V(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&ie(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&ie(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(ie(r,"minItems",t.exactLength.value,t.exactLength.message,e),ie(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}var fm=v(()=>{Es();en();Ue()});function Gv(t,e){let r={type:"integer",format:"int64"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"min":e.target==="jsonSchema7"?n.inclusive?ie(r,"minimum",n.value,n.message,e):ie(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),ie(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?ie(r,"maximum",n.value,n.message,e):ie(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),ie(r,"maximum",n.value,n.message,e));break;case"multipleOf":ie(r,"multipleOf",n.value,n.message,e);break}return r}var hm=v(()=>{en()});function Kv(){return{type:"boolean"}}var gm=v(()=>{});function lc(t,e){return V(t.type._def,e)}var dc=v(()=>{Ue()});var Jv,_m=v(()=>{Ue();Jv=(t,e)=>V(t.innerType._def,e)});function ym(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>ym(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 VO(t,e)}}var VO,xm=v(()=>{en();VO=(t,e)=>{let r={type:"integer",format:"unix-time"};if(e.target==="openApi3")return r;for(let n of t.checks)switch(n.kind){case"min":ie(r,"minimum",n.value,n.message,e);break;case"max":ie(r,"maximum",n.value,n.message,e);break}return r}});function Yv(t,e){return{...V(t.innerType._def,e),default:t.defaultValue()}}var vm=v(()=>{Ue()});function Xv(t,e){return e.effectStrategy==="input"?V(t.schema._def,e):Ae(e)}var bm=v(()=>{Ue();Mt()});function Qv(t){return{type:"string",enum:Array.from(t.values)}}var Sm=v(()=>{});function eb(t,e){let r=[V(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),V(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(WO(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}var WO,km=v(()=>{Ue();WO=t=>"type"in t&&t.type==="string"?!1:"allOf"in t});function tb(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 wm=v(()=>{});function pc(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":ie(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":ie(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":Yt(r,"email",n.message,e);break;case"format:idn-email":Yt(r,"idn-email",n.message,e);break;case"pattern:zod":ct(r,Jt.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":ct(r,n.regex,n.message,e);break;case"cuid":ct(r,Jt.cuid,n.message,e);break;case"cuid2":ct(r,Jt.cuid2,n.message,e);break;case"startsWith":ct(r,RegExp(`^${Em(n.value,e)}`),n.message,e);break;case"endsWith":ct(r,RegExp(`${Em(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":ie(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),ie(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{ct(r,RegExp(Em(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":ct(r,Jt.base64url,n.message,e);break;case"jwt":ct(r,Jt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&ct(r,Jt.ipv4Cidr,n.message,e),n.version!=="v4"&&ct(r,Jt.ipv6Cidr,n.message,e);break}case"emoji":ct(r,Jt.emoji(),n.message,e);break;case"ulid":{ct(r,Jt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{Yt(r,"binary",n.message,e);break}case"contentEncoding:base64":{ie(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{ct(r,Jt.base64,n.message,e);break}}break}case"nanoid":ct(r,Jt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Em(t,e){return e.patternStrategy==="escape"?KO(t):t}function KO(t){let e="";for(let r=0;r<t.length;r++)GO.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}}})):ie(t,"format",e,r,n)}function ct(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:rb(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):ie(t,"pattern",rb(e,n),r,n)}function rb(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
47
47
  ]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
48
48
  ]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
49
49
  `:`[${n[c]}\r
50
- ]`;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}var $m,Jt,GO,fc=v(()=>{en();Jt={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:()=>($m===void 0&&($m=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),$m),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-_]*$/};GO=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789")});function hc(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===$.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:V(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??Ae(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:V(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===$.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=mc(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===$.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===$.ZodBranded&&t.keyType._def.type._def.typeName===$.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=dc(t.keyType._def,e);return{...r,propertyNames:o}}}return r}var gc=v(()=>{Es();Ue();fc();pc();Dt()});function rb(t,e){if(e.mapStrategy==="record")return hc(t,e);let r=V(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||Ae(e),n=V(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||Ae(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}var Tm=v(()=>{Ue();gc();Dt()});function nb(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}}var Pm=v(()=>{});function ob(t){return t.target==="openAi"?void 0:{not:Ae({...t,currentPath:[...t.currentPath,"not"]})}}var Rm=v(()=>{Dt()});function sb(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Cm=v(()=>{});function ab(t,e){if(e.target==="openApi3")return ib(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Xs&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Xs[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 ib(t,e)}var Xs,ib,_c=v(()=>{Ue();Xs={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};ib=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>V(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 cb(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:Xs[t.innerType._def.typeName],nullable:!0}:{type:[Xs[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=V(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=V(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}var Om=v(()=>{Ue();_c()});function ub(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",mm(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?ie(r,"minimum",n.value,n.message,e):ie(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),ie(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?ie(r,"maximum",n.value,n.message,e):ie(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),ie(r,"maximum",n.value,n.message,e));break;case"multipleOf":ie(r,"multipleOf",n.value,n.message,e);break}return r}var Im=v(()=>{en()});function lb(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=YO(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=V(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=JO(t,e);return i!==void 0&&(n.additionalProperties=i),n}function JO(t,e){if(t.catchall._def.typeName!=="ZodNever")return V(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 YO(t){try{return t.isOptional()}catch{return!0}}var Am=v(()=>{Ue()});var db,Nm=v(()=>{Ue();Dt();db=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return V(t.innerType._def,e);let r=V(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:Ae(e)},r]}:Ae(e)}});var pb,zm=v(()=>{Ue();pb=(t,e)=>{if(e.pipeStrategy==="input")return V(t.in._def,e);if(e.pipeStrategy==="output")return V(t.out._def,e);let r=V(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=V(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}}});function mb(t,e){return V(t.type._def,e)}var jm=v(()=>{Ue()});function fb(t,e){let n={type:"array",uniqueItems:!0,items:V(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&ie(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&ie(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}var Dm=v(()=>{en();Ue()});function hb(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>V(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:V(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>V(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}var Mm=v(()=>{Ue()});function gb(t){return{not:Ae(t)}}var Lm=v(()=>{Dt()});function _b(t){return Ae(t)}var Fm=v(()=>{Dt()});var yb,Um=v(()=>{Ue();yb=(t,e)=>V(t.innerType._def,e)});var xb,Zm=v(()=>{Es();Dt();fm();hm();gm();pc();_m();xm();vm();bm();Sm();km();wm();Tm();Pm();Rm();Cm();Om();Im();Am();Nm();zm();jm();gc();Dm();fc();Mm();Lm();_c();Fm();Um();xb=(t,e,r)=>{switch(e){case $.ZodString:return mc(t,r);case $.ZodNumber:return ub(t,r);case $.ZodObject:return lb(t,r);case $.ZodBigInt:return Wv(t,r);case $.ZodBoolean:return Gv();case $.ZodDate:return ym(t,r);case $.ZodUndefined:return gb(r);case $.ZodNull:return sb(r);case $.ZodArray:return Vv(t,r);case $.ZodUnion:case $.ZodDiscriminatedUnion:return ab(t,r);case $.ZodIntersection:return Qv(t,r);case $.ZodTuple:return hb(t,r);case $.ZodRecord:return hc(t,r);case $.ZodLiteral:return eb(t,r);case $.ZodEnum:return Xv(t);case $.ZodNativeEnum:return nb(t);case $.ZodNullable:return cb(t,r);case $.ZodOptional:return db(t,r);case $.ZodMap:return rb(t,r);case $.ZodSet:return fb(t,r);case $.ZodLazy:return()=>t.getter()._def;case $.ZodPromise:return mb(t,r);case $.ZodNaN:case $.ZodNever:return ob(r);case $.ZodEffects:return Yv(t,r);case $.ZodAny:return Ae(r);case $.ZodUnknown:return _b(r);case $.ZodDefault:return Jv(t,r);case $.ZodBranded:return dc(t,r);case $.ZodReadonly:return yb(t,r);case $.ZodCatch:return Kv(t,r);case $.ZodPipeline:return pb(t,r);case $.ZodFunction:case $.ZodVoid:case $.ZodSymbol:return;default:return(n=>{})(e)}}});function V(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Hv)return a}if(n&&!r){let a=XO(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=xb(t,t.typeName,e),i=typeof s=="function"?V(s(),e):s;if(i&&QO(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var XO,QO,Ue=v(()=>{cc();Zm();lc();Dt();XO=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:uc(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`),Ae(e)):e.$refStrategy==="seen"?Ae(e):void 0}},QO=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r)});var vb=v(()=>{});var Hm,qm=v(()=>{Ue();pm();Dt();Hm=(t,e)=>{let r=Bv(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:V(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??Ae(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=V(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??Ae(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}});var bb=v(()=>{cc();pm();en();lc();Ue();vb();Dt();fm();hm();gm();pc();_m();xm();vm();bm();Sm();km();wm();Tm();Pm();Rm();Cm();Om();Im();Am();Nm();zm();jm();Um();gc();Dm();fc();Mm();Lm();_c();Fm();Zm();qm();qm()});function eI(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function Bm(t,e){return Nt(t)?Ip(t,{target:eI(e?.target),io:e?.pipeStrategy??"input"}):Hm(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Vm(t){let r=Yr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Ua(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Wm(t,e){let r=Jr(t,e);if(!r.success)throw r.error;return r.data}var Gm=v(()=>{zp();Ls();bb()});function Sb(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function kb(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];Sb(i)&&Sb(s)?r[o]={...i,...s}:r[o]=s}return r}var tI,yc,wb=v(()=>{Ls();Un();Uv();Gm();tI=6e4,yc=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(Ga,r=>{this._oncancel(r)}),this.setNotificationHandler(Ja,r=>{this._onprogress(r)}),this.setRequestHandler(Ka,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Ya,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new D(Z.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(Qa,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,p=new D(d.error.code,d.error.message,d.error.data);l(p)}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 D(Z.InvalidParams,`Task not found: ${s}`);if(!Qr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(Qr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Xr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(ec,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 D(Z.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(rc,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new D(Z.InvalidParams,`Task not found: ${r.params.taskId}`);if(Qr(o.status))throw new D(Z.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new D(Z.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof D?o:new D(Z.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),D.fromError(Z.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),Hs(s)||Cv(s)?this._onresponse(s):Xp(s)?this._onrequest(s,i):Rv(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=D.fromError(Z.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[Xr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:Z.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=Ev(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,p)=>{if(i.signal.aborted)throw new D(Z.ConnectionClosed,"Request was cancelled");let f={...p,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let m=f.relatedTask?.taskId??s;return m&&c&&await c.updateTaskStatus(m,"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:Z.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.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),Hs(e))n(e);else{let i=new D(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(Hs(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),Hs(e))o(e);else{let i=D.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 D?i:new D(Z.InternalError,String(i))}}return}let s;try{let i=await this.request(e,Po,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new D(Z.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},Qr(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new D(Z.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new D(Z.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof D?i:new D(Z.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=_=>{l(_)};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(_){d(_);return}n?.signal?.throwIfAborted();let p=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:p};n?.onprogress&&(this._progressHandlers.set(p,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:p}}),a&&(f.params={...f.params,task:a}),c&&(f.params={...f.params,_meta:{...f.params?._meta||{},[Xr]:c}});let m=_=>{this._responseHandlers.delete(p),this._progressHandlers.delete(p),this._cleanupTimeout(p),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:p,reason:String(_)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(k=>this._onerror(new Error(`Failed to send cancellation: ${k}`)));let x=_ instanceof D?_:new D(Z.RequestTimeout,String(_));l(x)};this._responseHandlers.set(p,_=>{if(!n?.signal?.aborted){if(_ instanceof Error)return l(_);try{let x=Jr(r,_.result);x.success?u(x.data):l(x.error)}catch(x){l(x)}}}),n?.signal?.addEventListener("abort",()=>{m(n?.signal?.reason)});let h=n?.timeout??tI,g=()=>m(D.fromError(Z.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(p,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let y=c?.taskId;if(y){let _=x=>{let k=this._responseHandlers.get(p);k?k(x):this._onerror(new Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,_),this._enqueueTaskMessage(y,{type:"request",message:f,timestamp:Date.now()}).catch(x=>{this._cleanupTimeout(p),l(x)})}else this._transport.send(f,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(_=>{this._cleanupTimeout(p),l(_)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Xa,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},tc,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Av,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||{},[Xr]: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||{},[Xr]: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||{},[Xr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=Vm(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=Wm(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=Vm(e);this._notificationHandlers.set(n,o=>{let s=Wm(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"&&Xp(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new D(Z.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new D(Z.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new D(Z.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new D(Z.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=Gs.parse({method:"notifications/tasks/status",params:a});await this.notification(c),Qr(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 D(Z.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(Qr(a.status))throw new D(Z.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=Gs.parse({method:"notifications/tasks/status",params:c});await this.notification(u),Qr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}}});var ti=C(de=>{"use strict";Object.defineProperty(de,"__esModule",{value:!0});de.regexpCode=de.getEsmExportName=de.getProperty=de.safeStringify=de.stringify=de.strConcat=de.addCodeArg=de.str=de._=de.nil=de._Code=de.Name=de.IDENTIFIER=de._CodeOrName=void 0;var Qs=class{};de._CodeOrName=Qs;de.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Zn=class extends Qs{constructor(e){if(super(),!de.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}}};de.Name=Zn;var Mt=class extends Qs{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 Zn&&(r[n.str]=(r[n.str]||0)+1),r),{})}};de._Code=Mt;de.nil=new Mt("");function $b(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Jm(r,e[n]),r.push(t[++n]);return new Mt(r)}de._=$b;var Km=new Mt("+");function Eb(t,...e){let r=[ei(t[0])],n=0;for(;n<e.length;)r.push(Km),Jm(r,e[n]),r.push(Km,ei(t[++n]));return rI(r),new Mt(r)}de.str=Eb;function Jm(t,e){e instanceof Mt?t.push(...e._items):e instanceof Zn?t.push(e):t.push(sI(e))}de.addCodeArg=Jm;function rI(t){let e=1;for(;e<t.length-1;){if(t[e]===Km){let r=nI(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function nI(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Zn||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 Zn))return`"${t}${e.slice(1)}`}function oI(t,e){return e.emptyStr()?t:t.emptyStr()?e:Eb`${t}${e}`}de.strConcat=oI;function sI(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:ei(Array.isArray(t)?t.join(","):t)}function iI(t){return new Mt(ei(t))}de.stringify=iI;function ei(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}de.safeStringify=ei;function aI(t){return typeof t=="string"&&de.IDENTIFIER.test(t)?new Mt(`.${t}`):$b`[${t}]`}de.getProperty=aI;function cI(t){if(typeof t=="string"&&de.IDENTIFIER.test(t))return new Mt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}de.getEsmExportName=cI;function uI(t){return new Mt(t.toString())}de.regexpCode=uI});var Qm=C(_t=>{"use strict";Object.defineProperty(_t,"__esModule",{value:!0});_t.ValueScope=_t.ValueScopeName=_t.Scope=_t.varKinds=_t.UsedValueState=void 0;var gt=ti(),Ym=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},xc;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(xc||(_t.UsedValueState=xc={}));_t.varKinds={const:new gt.Name("const"),let:new gt.Name("let"),var:new gt.Name("var")};var vc=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof gt.Name?e:this.name(e)}name(e){return new gt.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}}};_t.Scope=vc;var bc=class extends gt.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,gt._)`.${new gt.Name(r)}[${n}]`}};_t.ValueScopeName=bc;var lI=(0,gt._)`\n`,Xm=class extends vc{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?lI:gt.nil}}get(){return this._scope}name(e){return new bc(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,gt._)`${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=gt.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,xc.Started);let l=r(u);if(l){let d=this.opts.es5?_t.varKinds.var:_t.varKinds.const;s=(0,gt._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,gt._)`${s}${l}${this.opts._n}`;else throw new Ym(u);c.set(u,xc.Completed)})}return s}};_t.ValueScope=Xm});var Q=C(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.or=ee.and=ee.not=ee.CodeGen=ee.operators=ee.varKinds=ee.ValueScopeName=ee.ValueScope=ee.Scope=ee.Name=ee.regexpCode=ee.stringify=ee.getProperty=ee.nil=ee.strConcat=ee.str=ee._=void 0;var ae=ti(),Xt=Qm(),tn=ti();Object.defineProperty(ee,"_",{enumerable:!0,get:function(){return tn._}});Object.defineProperty(ee,"str",{enumerable:!0,get:function(){return tn.str}});Object.defineProperty(ee,"strConcat",{enumerable:!0,get:function(){return tn.strConcat}});Object.defineProperty(ee,"nil",{enumerable:!0,get:function(){return tn.nil}});Object.defineProperty(ee,"getProperty",{enumerable:!0,get:function(){return tn.getProperty}});Object.defineProperty(ee,"stringify",{enumerable:!0,get:function(){return tn.stringify}});Object.defineProperty(ee,"regexpCode",{enumerable:!0,get:function(){return tn.regexpCode}});Object.defineProperty(ee,"Name",{enumerable:!0,get:function(){return tn.Name}});var $c=Qm();Object.defineProperty(ee,"Scope",{enumerable:!0,get:function(){return $c.Scope}});Object.defineProperty(ee,"ValueScope",{enumerable:!0,get:function(){return $c.ValueScope}});Object.defineProperty(ee,"ValueScopeName",{enumerable:!0,get:function(){return $c.ValueScopeName}});Object.defineProperty(ee,"varKinds",{enumerable:!0,get:function(){return $c.varKinds}});ee.operators={GT:new ae._Code(">"),GTE:new ae._Code(">="),LT:new ae._Code("<"),LTE:new ae._Code("<="),EQ:new ae._Code("==="),NEQ:new ae._Code("!=="),NOT:new ae._Code("!"),OR:new ae._Code("||"),AND:new ae._Code("&&"),ADD:new ae._Code("+")};var Cr=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},ef=class extends Cr{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=jo(this.rhs,e,r)),this}get names(){return this.rhs instanceof ae._CodeOrName?this.rhs.names:{}}},Sc=class extends Cr{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof ae.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=jo(this.rhs,e,r),this}get names(){let e=this.lhs instanceof ae.Name?{}:{...this.lhs.names};return wc(e,this.rhs)}},tf=class extends Sc{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},rf=class extends Cr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},nf=class extends Cr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},of=class extends Cr{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},sf=class extends Cr{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=jo(this.code,e,r),this}get names(){return this.code instanceof ae._CodeOrName?this.code.names:{}}},ri=class extends Cr{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)||(dI(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Bn(e,r.names),{})}},Or=class extends ri{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},af=class extends ri{},zo=class extends Or{};zo.kind="else";var Hn=class t extends Or{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 zo(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Tb(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=jo(this.condition,e,r),this}get names(){let e=super.names;return wc(e,this.condition),this.else&&Bn(e,this.else.names),e}};Hn.kind="if";var qn=class extends Or{};qn.kind="for";var cf=class extends qn{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=jo(this.iteration,e,r),this}get names(){return Bn(super.names,this.iteration.names)}},uf=class extends qn{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=wc(super.names,this.from);return wc(e,this.to)}},kc=class extends qn{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=jo(this.iterable,e,r),this}get names(){return Bn(super.names,this.iterable.names)}},ni=class extends Or{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)}};ni.kind="func";var oi=class extends ri{render(e){return"return "+super.render(e)}};oi.kind="return";var lf=class extends Or{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&&Bn(e,this.catch.names),this.finally&&Bn(e,this.finally.names),e}},si=class extends Or{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};si.kind="catch";var ii=class extends Or{render(e){return"finally"+super.render(e)}};ii.kind="finally";var df=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
51
- `:""},this._extScope=e,this._scope=new Xt.Scope({parent:e}),this._nodes=[new af]}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 ef(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 Sc(e,r,n))}add(e,r){return this._leafNode(new tf(e,ee.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==ae.nil&&this._leafNode(new sf(e)),this}object(...e){let r=["{"];for(let[n,o]of e)r.length>1&&r.push(","),r.push(n),(n!==o||this.opts.es5)&&(r.push(":"),(0,ae.addCodeArg)(r,o));return r.push("}"),new ae._Code(r)}if(e,r,n){if(this._blockNode(new Hn(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 Hn(e))}else(){return this._elseNode(new zo)}endIf(){return this._endBlockNode(Hn,zo)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new cf(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 uf(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 ae.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,ae._)`${i}.length`,a=>{this.var(s,(0,ae._)`${i}[${a}]`),n(s)})}return this._for(new kc("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,ae._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new kc("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(qn)}label(e){return this._leafNode(new rf(e))}break(e){return this._leafNode(new nf(e))}return(e){let r=new oi;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(oi)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new lf;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new si(s),r(s)}return n&&(this._currNode=o.finally=new ii,this.code(n)),this._endBlockNode(si,ii)}throw(e){return this._leafNode(new of(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=ae.nil,n,o){return this._blockNode(new ni(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(ni)}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 Hn))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};ee.CodeGen=df;function Bn(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function wc(t,e){return e instanceof ae._CodeOrName?Bn(t,e.names):t}function jo(t,e,r){if(t instanceof ae.Name)return n(t);if(!o(t))return t;return new ae._Code(t._items.reduce((s,i)=>(i instanceof ae.Name&&(i=n(i)),i instanceof ae._Code?s.push(...i._items):s.push(i),s),[]));function n(s){let i=r[s.str];return i===void 0||e[s.str]!==1?s:(delete e[s.str],i)}function o(s){return s instanceof ae._Code&&s._items.some(i=>i instanceof ae.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function dI(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Tb(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,ae._)`!${pf(t)}`}ee.not=Tb;var pI=Pb(ee.operators.AND);function mI(...t){return t.reduce(pI)}ee.and=mI;var fI=Pb(ee.operators.OR);function hI(...t){return t.reduce(fI)}ee.or=hI;function Pb(t){return(e,r)=>e===ae.nil?r:r===ae.nil?e:(0,ae._)`${pf(e)} ${t} ${pf(r)}`}function pf(t){return t instanceof ae.Name?t:(0,ae._)`(${t})`}});var ue=C(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.checkStrictMode=te.getErrorPath=te.Type=te.useFunc=te.setEvaluated=te.evaluatedPropsToName=te.mergeEvaluated=te.eachItem=te.unescapeJsonPointer=te.escapeJsonPointer=te.escapeFragment=te.unescapeFragment=te.schemaRefOrVal=te.schemaHasRulesButRef=te.schemaHasRules=te.checkUnknownRules=te.alwaysValidSchema=te.toHash=void 0;var xe=Q(),gI=ti();function _I(t){let e={};for(let r of t)e[r]=!0;return e}te.toHash=_I;function yI(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Ob(t,e),!Ib(e,t.self.RULES.all))}te.alwaysValidSchema=yI;function Ob(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]||zb(t,`unknown keyword: "${s}"`)}te.checkUnknownRules=Ob;function Ib(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}te.schemaHasRules=Ib;function xI(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}te.schemaHasRulesButRef=xI;function vI({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,xe._)`${r}`}return(0,xe._)`${t}${e}${(0,xe.getProperty)(n)}`}te.schemaRefOrVal=vI;function bI(t){return Ab(decodeURIComponent(t))}te.unescapeFragment=bI;function SI(t){return encodeURIComponent(ff(t))}te.escapeFragment=SI;function ff(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}te.escapeJsonPointer=ff;function Ab(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}te.unescapeJsonPointer=Ab;function kI(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}te.eachItem=kI;function Rb({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof xe.Name?(s instanceof xe.Name?t(o,s,i):e(o,s,i),i):s instanceof xe.Name?(e(o,i,s),s):r(s,i);return a===xe.Name&&!(c instanceof xe.Name)?n(o,c):c}}te.mergeEvaluated={props:Rb({mergeNames:(t,e,r)=>t.if((0,xe._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,xe._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,xe._)`${r} || {}`).code((0,xe._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,xe._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,xe._)`${r} || {}`),hf(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Nb}),items:Rb({mergeNames:(t,e,r)=>t.if((0,xe._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,xe._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,xe._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,xe._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Nb(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,xe._)`{}`);return e!==void 0&&hf(t,r,e),r}te.evaluatedPropsToName=Nb;function hf(t,e,r){Object.keys(r).forEach(n=>t.assign((0,xe._)`${e}${(0,xe.getProperty)(n)}`,!0))}te.setEvaluated=hf;var Cb={};function wI(t,e){return t.scopeValue("func",{ref:e,code:Cb[e.code]||(Cb[e.code]=new gI._Code(e.code))})}te.useFunc=wI;var mf;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(mf||(te.Type=mf={}));function $I(t,e,r){if(t instanceof xe.Name){let n=e===mf.Num;return r?n?(0,xe._)`"[" + ${t} + "]"`:(0,xe._)`"['" + ${t} + "']"`:n?(0,xe._)`"/" + ${t}`:(0,xe._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,xe.getProperty)(t).toString():"/"+ff(t)}te.getErrorPath=$I;function zb(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}te.checkStrictMode=zb});var Ir=C(gf=>{"use strict";Object.defineProperty(gf,"__esModule",{value:!0});var tt=Q(),EI={data:new tt.Name("data"),valCxt:new tt.Name("valCxt"),instancePath:new tt.Name("instancePath"),parentData:new tt.Name("parentData"),parentDataProperty:new tt.Name("parentDataProperty"),rootData:new tt.Name("rootData"),dynamicAnchors:new tt.Name("dynamicAnchors"),vErrors:new tt.Name("vErrors"),errors:new tt.Name("errors"),this:new tt.Name("this"),self:new tt.Name("self"),scope:new tt.Name("scope"),json:new tt.Name("json"),jsonPos:new tt.Name("jsonPos"),jsonLen:new tt.Name("jsonLen"),jsonPart:new tt.Name("jsonPart")};gf.default=EI});var ai=C(rt=>{"use strict";Object.defineProperty(rt,"__esModule",{value:!0});rt.extendErrors=rt.resetErrorsCount=rt.reportExtraError=rt.reportError=rt.keyword$DataError=rt.keywordError=void 0;var le=Q(),Ec=ue(),ut=Ir();rt.keywordError={message:({keyword:t})=>(0,le.str)`must pass "${t}" keyword validation`};rt.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,le.str)`"${t}" keyword must be ${e} ($data)`:(0,le.str)`"${t}" keyword is invalid ($data)`};function TI(t,e=rt.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=Mb(t,e,r);n??(i||a)?jb(s,c):Db(o,(0,le._)`[${c}]`)}rt.reportError=TI;function PI(t,e=rt.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Mb(t,e,r);jb(o,a),s||i||Db(n,ut.default.vErrors)}rt.reportExtraError=PI;function RI(t,e){t.assign(ut.default.errors,e),t.if((0,le._)`${ut.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,le._)`${ut.default.vErrors}.length`,e),()=>t.assign(ut.default.vErrors,null)))}rt.resetErrorsCount=RI;function CI({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,ut.default.errors,a=>{t.const(i,(0,le._)`${ut.default.vErrors}[${a}]`),t.if((0,le._)`${i}.instancePath === undefined`,()=>t.assign((0,le._)`${i}.instancePath`,(0,le.strConcat)(ut.default.instancePath,s.errorPath))),t.assign((0,le._)`${i}.schemaPath`,(0,le.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,le._)`${i}.schema`,r),t.assign((0,le._)`${i}.data`,n))})}rt.extendErrors=CI;function jb(t,e){let r=t.const("err",e);t.if((0,le._)`${ut.default.vErrors} === null`,()=>t.assign(ut.default.vErrors,(0,le._)`[${r}]`),(0,le._)`${ut.default.vErrors}.push(${r})`),t.code((0,le._)`${ut.default.errors}++`)}function Db(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,le._)`new ${t.ValidationError}(${e})`):(r.assign((0,le._)`${n}.errors`,e),r.return(!1))}var Vn={keyword:new le.Name("keyword"),schemaPath:new le.Name("schemaPath"),params:new le.Name("params"),propertyName:new le.Name("propertyName"),message:new le.Name("message"),schema:new le.Name("schema"),parentSchema:new le.Name("parentSchema")};function Mb(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,le._)`{}`:OI(t,e,r)}function OI(t,e,r={}){let{gen:n,it:o}=t,s=[II(o,r),AI(t,r)];return NI(t,e,s),n.object(...s)}function II({errorPath:t},{instancePath:e}){let r=e?(0,le.str)`${t}${(0,Ec.getErrorPath)(e,Ec.Type.Str)}`:t;return[ut.default.instancePath,(0,le.strConcat)(ut.default.instancePath,r)]}function AI({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,le.str)`${e}/${t}`;return r&&(o=(0,le.str)`${o}${(0,Ec.getErrorPath)(r,Ec.Type.Str)}`),[Vn.schemaPath,o]}function NI(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([Vn.keyword,o],[Vn.params,typeof e=="function"?e(t):e||(0,le._)`{}`]),c.messages&&n.push([Vn.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Vn.schema,i],[Vn.parentSchema,(0,le._)`${l}${d}`],[ut.default.data,s]),u&&n.push([Vn.propertyName,u])}});var Fb=C(Do=>{"use strict";Object.defineProperty(Do,"__esModule",{value:!0});Do.boolOrEmptySchema=Do.topBoolOrEmptySchema=void 0;var zI=ai(),jI=Q(),DI=Ir(),MI={message:"boolean schema is false"};function LI(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Lb(t,!1):typeof r=="object"&&r.$async===!0?e.return(DI.default.data):(e.assign((0,jI._)`${n}.errors`,null),e.return(!0))}Do.topBoolOrEmptySchema=LI;function FI(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Lb(t)):r.var(e,!0)}Do.boolOrEmptySchema=FI;function Lb(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,zI.reportError)(o,MI,void 0,e)}});var _f=C(Mo=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});Mo.getRules=Mo.isJSONType=void 0;var UI=["string","number","integer","boolean","null","object","array"],ZI=new Set(UI);function HI(t){return typeof t=="string"&&ZI.has(t)}Mo.isJSONType=HI;function qI(){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:{}}}Mo.getRules=qI});var yf=C(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.shouldUseRule=rn.shouldUseGroup=rn.schemaHasRulesForType=void 0;function BI({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Ub(t,n)}rn.schemaHasRulesForType=BI;function Ub(t,e){return e.rules.some(r=>Zb(t,r))}rn.shouldUseGroup=Ub;function Zb(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))}rn.shouldUseRule=Zb});var ci=C(nt=>{"use strict";Object.defineProperty(nt,"__esModule",{value:!0});nt.reportTypeError=nt.checkDataTypes=nt.checkDataType=nt.coerceAndCheckDataType=nt.getJSONTypes=nt.getSchemaTypes=nt.DataType=void 0;var VI=_f(),WI=yf(),GI=ai(),Y=Q(),Hb=ue(),Lo;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Lo||(nt.DataType=Lo={}));function KI(t){let e=qb(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}nt.getSchemaTypes=KI;function qb(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(VI.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}nt.getJSONTypes=qb;function JI(t,e){let{gen:r,data:n,opts:o}=t,s=YI(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,WI.schemaHasRulesForType)(t,e[0]));if(i){let a=vf(e,n,o.strictNumbers,Lo.Wrong);r.if(a,()=>{s.length?XI(t,e,s):bf(t)})}return i}nt.coerceAndCheckDataType=JI;var Bb=new Set(["string","number","integer","boolean","null"]);function YI(t,e){return e?t.filter(r=>Bb.has(r)||e==="array"&&r==="array"):[]}function XI(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,Y._)`typeof ${o}`),a=n.let("coerced",(0,Y._)`undefined`);s.coerceTypes==="array"&&n.if((0,Y._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,Y._)`${o}[0]`).assign(i,(0,Y._)`typeof ${o}`).if(vf(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,Y._)`${a} !== undefined`);for(let u of r)(Bb.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),bf(t),n.endIf(),n.if((0,Y._)`${a} !== undefined`,()=>{n.assign(o,a),QI(t,a)});function c(u){switch(u){case"string":n.elseIf((0,Y._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,Y._)`"" + ${o}`).elseIf((0,Y._)`${o} === null`).assign(a,(0,Y._)`""`);return;case"number":n.elseIf((0,Y._)`${i} == "boolean" || ${o} === null
50
+ ]`;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}var $m,Jt,GO,mc=v(()=>{en();Jt={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:()=>($m===void 0&&($m=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),$m),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-_]*$/};GO=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789")});function fc(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===T.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:V(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??Ae(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:V(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===T.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=pc(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===T.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===T.ZodBranded&&t.keyType._def.type._def.typeName===T.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=lc(t.keyType._def,e);return{...r,propertyNames:o}}}return r}var hc=v(()=>{Es();Ue();mc();dc();Mt()});function nb(t,e){if(e.mapStrategy==="record")return fc(t,e);let r=V(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||Ae(e),n=V(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||Ae(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}var Tm=v(()=>{Ue();hc();Mt()});function ob(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}}var Pm=v(()=>{});function sb(t){return t.target==="openAi"?void 0:{not:Ae({...t,currentPath:[...t.currentPath,"not"]})}}var Rm=v(()=>{Mt()});function ib(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Cm=v(()=>{});function cb(t,e){if(e.target==="openApi3")return ab(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Xs&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Xs[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 ab(t,e)}var Xs,ab,gc=v(()=>{Ue();Xs={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};ab=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>V(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 ub(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:Xs[t.innerType._def.typeName],nullable:!0}:{type:[Xs[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=V(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=V(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}var Om=v(()=>{Ue();gc()});function lb(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",mm(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?ie(r,"minimum",n.value,n.message,e):ie(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),ie(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?ie(r,"maximum",n.value,n.message,e):ie(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),ie(r,"maximum",n.value,n.message,e));break;case"multipleOf":ie(r,"multipleOf",n.value,n.message,e);break}return r}var Im=v(()=>{en()});function db(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=YO(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=V(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=JO(t,e);return i!==void 0&&(n.additionalProperties=i),n}function JO(t,e){if(t.catchall._def.typeName!=="ZodNever")return V(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 YO(t){try{return t.isOptional()}catch{return!0}}var Am=v(()=>{Ue()});var pb,Nm=v(()=>{Ue();Mt();pb=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return V(t.innerType._def,e);let r=V(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:Ae(e)},r]}:Ae(e)}});var mb,zm=v(()=>{Ue();mb=(t,e)=>{if(e.pipeStrategy==="input")return V(t.in._def,e);if(e.pipeStrategy==="output")return V(t.out._def,e);let r=V(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=V(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}}});function fb(t,e){return V(t.type._def,e)}var jm=v(()=>{Ue()});function hb(t,e){let n={type:"array",uniqueItems:!0,items:V(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&ie(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&ie(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}var Dm=v(()=>{en();Ue()});function gb(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>V(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:V(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>V(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}var Mm=v(()=>{Ue()});function _b(t){return{not:Ae(t)}}var Lm=v(()=>{Mt()});function yb(t){return Ae(t)}var Fm=v(()=>{Mt()});var xb,Um=v(()=>{Ue();xb=(t,e)=>V(t.innerType._def,e)});var vb,Zm=v(()=>{Es();Mt();fm();hm();gm();dc();_m();xm();vm();bm();Sm();km();wm();Tm();Pm();Rm();Cm();Om();Im();Am();Nm();zm();jm();hc();Dm();mc();Mm();Lm();gc();Fm();Um();vb=(t,e,r)=>{switch(e){case T.ZodString:return pc(t,r);case T.ZodNumber:return lb(t,r);case T.ZodObject:return db(t,r);case T.ZodBigInt:return Gv(t,r);case T.ZodBoolean:return Kv();case T.ZodDate:return ym(t,r);case T.ZodUndefined:return _b(r);case T.ZodNull:return ib(r);case T.ZodArray:return Wv(t,r);case T.ZodUnion:case T.ZodDiscriminatedUnion:return cb(t,r);case T.ZodIntersection:return eb(t,r);case T.ZodTuple:return gb(t,r);case T.ZodRecord:return fc(t,r);case T.ZodLiteral:return tb(t,r);case T.ZodEnum:return Qv(t);case T.ZodNativeEnum:return ob(t);case T.ZodNullable:return ub(t,r);case T.ZodOptional:return pb(t,r);case T.ZodMap:return nb(t,r);case T.ZodSet:return hb(t,r);case T.ZodLazy:return()=>t.getter()._def;case T.ZodPromise:return fb(t,r);case T.ZodNaN:case T.ZodNever:return sb(r);case T.ZodEffects:return Xv(t,r);case T.ZodAny:return Ae(r);case T.ZodUnknown:return yb(r);case T.ZodDefault:return Yv(t,r);case T.ZodBranded:return lc(t,r);case T.ZodReadonly:return xb(t,r);case T.ZodCatch:return Jv(t,r);case T.ZodPipeline:return mb(t,r);case T.ZodFunction:case T.ZodVoid:case T.ZodSymbol:return;default:return(n=>{})(e)}}});function V(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==qv)return a}if(n&&!r){let a=XO(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=vb(t,t.typeName,e),i=typeof s=="function"?V(s(),e):s;if(i&&QO(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var XO,QO,Ue=v(()=>{ac();Zm();uc();Mt();XO=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:cc(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`),Ae(e)):e.$refStrategy==="seen"?Ae(e):void 0}},QO=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r)});var bb=v(()=>{});var Hm,qm=v(()=>{Ue();pm();Mt();Hm=(t,e)=>{let r=Vv(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:V(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??Ae(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=V(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??Ae(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}});var Sb=v(()=>{ac();pm();en();uc();Ue();bb();Mt();fm();hm();gm();dc();_m();xm();vm();bm();Sm();km();wm();Tm();Pm();Rm();Cm();Om();Im();Am();Nm();zm();jm();Um();hc();Dm();mc();Mm();Lm();gc();Fm();Zm();qm();qm()});function eI(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function Bm(t,e){return zt(t)?Ip(t,{target:eI(e?.target),io:e?.pipeStrategy??"input"}):Hm(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Vm(t){let r=Yr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Fa(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Wm(t,e){let r=Jr(t,e);if(!r.success)throw r.error;return r.data}var Gm=v(()=>{zp();Ls();Sb()});function kb(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function wb(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];kb(i)&&kb(s)?r[o]={...i,...s}:r[o]=s}return r}var tI,_c,$b=v(()=>{Ls();Un();Zv();Gm();tI=6e4,_c=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(Wa,r=>{this._oncancel(r)}),this.setNotificationHandler(Ka,r=>{this._onprogress(r)}),this.setRequestHandler(Ga,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Ja,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new D(Z.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(Xa,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,p=new D(d.error.code,d.error.message,d.error.data);l(p)}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 D(Z.InvalidParams,`Task not found: ${s}`);if(!Qr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(Qr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Xr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(Qa,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 D(Z.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(tc,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new D(Z.InvalidParams,`Task not found: ${r.params.taskId}`);if(Qr(o.status))throw new D(Z.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new D(Z.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof D?o:new D(Z.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),D.fromError(Z.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),Hs(s)||Ov(s)?this._onresponse(s):Xp(s)?this._onrequest(s,i):Cv(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=D.fromError(Z.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[Xr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:Z.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=Tv(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,p)=>{if(i.signal.aborted)throw new D(Z.ConnectionClosed,"Request was cancelled");let f={...p,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let m=f.relatedTask?.taskId??s;return m&&c&&await c.updateTaskStatus(m,"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:Z.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.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),Hs(e))n(e);else{let i=new D(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(Hs(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),Hs(e))o(e);else{let i=D.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 D?i:new D(Z.InternalError,String(i))}}return}let s;try{let i=await this.request(e,Po,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new D(Z.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},Qr(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new D(Z.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new D(Z.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof D?i:new D(Z.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=_=>{l(_)};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(_){d(_);return}n?.signal?.throwIfAborted();let p=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:p};n?.onprogress&&(this._progressHandlers.set(p,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:p}}),a&&(f.params={...f.params,task:a}),c&&(f.params={...f.params,_meta:{...f.params?._meta||{},[Xr]:c}});let m=_=>{this._responseHandlers.delete(p),this._progressHandlers.delete(p),this._cleanupTimeout(p),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:p,reason:String(_)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(k=>this._onerror(new Error(`Failed to send cancellation: ${k}`)));let x=_ instanceof D?_:new D(Z.RequestTimeout,String(_));l(x)};this._responseHandlers.set(p,_=>{if(!n?.signal?.aborted){if(_ instanceof Error)return l(_);try{let x=Jr(r,_.result);x.success?u(x.data):l(x.error)}catch(x){l(x)}}}),n?.signal?.addEventListener("abort",()=>{m(n?.signal?.reason)});let h=n?.timeout??tI,g=()=>m(D.fromError(Z.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(p,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let y=c?.taskId;if(y){let _=x=>{let k=this._responseHandlers.get(p);k?k(x):this._onerror(new Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,_),this._enqueueTaskMessage(y,{type:"request",message:f,timestamp:Date.now()}).catch(x=>{this._cleanupTimeout(p),l(x)})}else this._transport.send(f,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(_=>{this._cleanupTimeout(p),l(_)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Ya,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},ec,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Nv,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||{},[Xr]: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||{},[Xr]: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||{},[Xr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=Vm(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=Wm(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=Vm(e);this._notificationHandlers.set(n,o=>{let s=Wm(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"&&Xp(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new D(Z.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new D(Z.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new D(Z.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new D(Z.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=Gs.parse({method:"notifications/tasks/status",params:a});await this.notification(c),Qr(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 D(Z.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(Qr(a.status))throw new D(Z.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=Gs.parse({method:"notifications/tasks/status",params:c});await this.notification(u),Qr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}}});var ti=C(de=>{"use strict";Object.defineProperty(de,"__esModule",{value:!0});de.regexpCode=de.getEsmExportName=de.getProperty=de.safeStringify=de.stringify=de.strConcat=de.addCodeArg=de.str=de._=de.nil=de._Code=de.Name=de.IDENTIFIER=de._CodeOrName=void 0;var Qs=class{};de._CodeOrName=Qs;de.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Zn=class extends Qs{constructor(e){if(super(),!de.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}}};de.Name=Zn;var Lt=class extends Qs{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 Zn&&(r[n.str]=(r[n.str]||0)+1),r),{})}};de._Code=Lt;de.nil=new Lt("");function Eb(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Jm(r,e[n]),r.push(t[++n]);return new Lt(r)}de._=Eb;var Km=new Lt("+");function Tb(t,...e){let r=[ei(t[0])],n=0;for(;n<e.length;)r.push(Km),Jm(r,e[n]),r.push(Km,ei(t[++n]));return rI(r),new Lt(r)}de.str=Tb;function Jm(t,e){e instanceof Lt?t.push(...e._items):e instanceof Zn?t.push(e):t.push(sI(e))}de.addCodeArg=Jm;function rI(t){let e=1;for(;e<t.length-1;){if(t[e]===Km){let r=nI(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function nI(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Zn||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 Zn))return`"${t}${e.slice(1)}`}function oI(t,e){return e.emptyStr()?t:t.emptyStr()?e:Tb`${t}${e}`}de.strConcat=oI;function sI(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:ei(Array.isArray(t)?t.join(","):t)}function iI(t){return new Lt(ei(t))}de.stringify=iI;function ei(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}de.safeStringify=ei;function aI(t){return typeof t=="string"&&de.IDENTIFIER.test(t)?new Lt(`.${t}`):Eb`[${t}]`}de.getProperty=aI;function cI(t){if(typeof t=="string"&&de.IDENTIFIER.test(t))return new Lt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}de.getEsmExportName=cI;function uI(t){return new Lt(t.toString())}de.regexpCode=uI});var Qm=C(_t=>{"use strict";Object.defineProperty(_t,"__esModule",{value:!0});_t.ValueScope=_t.ValueScopeName=_t.Scope=_t.varKinds=_t.UsedValueState=void 0;var gt=ti(),Ym=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},yc;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(yc||(_t.UsedValueState=yc={}));_t.varKinds={const:new gt.Name("const"),let:new gt.Name("let"),var:new gt.Name("var")};var xc=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof gt.Name?e:this.name(e)}name(e){return new gt.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}}};_t.Scope=xc;var vc=class extends gt.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,gt._)`.${new gt.Name(r)}[${n}]`}};_t.ValueScopeName=vc;var lI=(0,gt._)`\n`,Xm=class extends xc{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?lI:gt.nil}}get(){return this._scope}name(e){return new vc(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,gt._)`${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=gt.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,yc.Started);let l=r(u);if(l){let d=this.opts.es5?_t.varKinds.var:_t.varKinds.const;s=(0,gt._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,gt._)`${s}${l}${this.opts._n}`;else throw new Ym(u);c.set(u,yc.Completed)})}return s}};_t.ValueScope=Xm});var Q=C(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.or=ee.and=ee.not=ee.CodeGen=ee.operators=ee.varKinds=ee.ValueScopeName=ee.ValueScope=ee.Scope=ee.Name=ee.regexpCode=ee.stringify=ee.getProperty=ee.nil=ee.strConcat=ee.str=ee._=void 0;var ae=ti(),Xt=Qm(),tn=ti();Object.defineProperty(ee,"_",{enumerable:!0,get:function(){return tn._}});Object.defineProperty(ee,"str",{enumerable:!0,get:function(){return tn.str}});Object.defineProperty(ee,"strConcat",{enumerable:!0,get:function(){return tn.strConcat}});Object.defineProperty(ee,"nil",{enumerable:!0,get:function(){return tn.nil}});Object.defineProperty(ee,"getProperty",{enumerable:!0,get:function(){return tn.getProperty}});Object.defineProperty(ee,"stringify",{enumerable:!0,get:function(){return tn.stringify}});Object.defineProperty(ee,"regexpCode",{enumerable:!0,get:function(){return tn.regexpCode}});Object.defineProperty(ee,"Name",{enumerable:!0,get:function(){return tn.Name}});var wc=Qm();Object.defineProperty(ee,"Scope",{enumerable:!0,get:function(){return wc.Scope}});Object.defineProperty(ee,"ValueScope",{enumerable:!0,get:function(){return wc.ValueScope}});Object.defineProperty(ee,"ValueScopeName",{enumerable:!0,get:function(){return wc.ValueScopeName}});Object.defineProperty(ee,"varKinds",{enumerable:!0,get:function(){return wc.varKinds}});ee.operators={GT:new ae._Code(">"),GTE:new ae._Code(">="),LT:new ae._Code("<"),LTE:new ae._Code("<="),EQ:new ae._Code("==="),NEQ:new ae._Code("!=="),NOT:new ae._Code("!"),OR:new ae._Code("||"),AND:new ae._Code("&&"),ADD:new ae._Code("+")};var Cr=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},ef=class extends Cr{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=jo(this.rhs,e,r)),this}get names(){return this.rhs instanceof ae._CodeOrName?this.rhs.names:{}}},bc=class extends Cr{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof ae.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=jo(this.rhs,e,r),this}get names(){let e=this.lhs instanceof ae.Name?{}:{...this.lhs.names};return kc(e,this.rhs)}},tf=class extends bc{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},rf=class extends Cr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},nf=class extends Cr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},of=class extends Cr{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},sf=class extends Cr{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=jo(this.code,e,r),this}get names(){return this.code instanceof ae._CodeOrName?this.code.names:{}}},ri=class extends Cr{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)||(dI(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Bn(e,r.names),{})}},Or=class extends ri{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},af=class extends ri{},zo=class extends Or{};zo.kind="else";var Hn=class t extends Or{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 zo(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Pb(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=jo(this.condition,e,r),this}get names(){let e=super.names;return kc(e,this.condition),this.else&&Bn(e,this.else.names),e}};Hn.kind="if";var qn=class extends Or{};qn.kind="for";var cf=class extends qn{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=jo(this.iteration,e,r),this}get names(){return Bn(super.names,this.iteration.names)}},uf=class extends qn{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=kc(super.names,this.from);return kc(e,this.to)}},Sc=class extends qn{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=jo(this.iterable,e,r),this}get names(){return Bn(super.names,this.iterable.names)}},ni=class extends Or{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)}};ni.kind="func";var oi=class extends ri{render(e){return"return "+super.render(e)}};oi.kind="return";var lf=class extends Or{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&&Bn(e,this.catch.names),this.finally&&Bn(e,this.finally.names),e}},si=class extends Or{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};si.kind="catch";var ii=class extends Or{render(e){return"finally"+super.render(e)}};ii.kind="finally";var df=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
51
+ `:""},this._extScope=e,this._scope=new Xt.Scope({parent:e}),this._nodes=[new af]}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 ef(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 bc(e,r,n))}add(e,r){return this._leafNode(new tf(e,ee.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==ae.nil&&this._leafNode(new sf(e)),this}object(...e){let r=["{"];for(let[n,o]of e)r.length>1&&r.push(","),r.push(n),(n!==o||this.opts.es5)&&(r.push(":"),(0,ae.addCodeArg)(r,o));return r.push("}"),new ae._Code(r)}if(e,r,n){if(this._blockNode(new Hn(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 Hn(e))}else(){return this._elseNode(new zo)}endIf(){return this._endBlockNode(Hn,zo)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new cf(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 uf(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 ae.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,ae._)`${i}.length`,a=>{this.var(s,(0,ae._)`${i}[${a}]`),n(s)})}return this._for(new Sc("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,ae._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Sc("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(qn)}label(e){return this._leafNode(new rf(e))}break(e){return this._leafNode(new nf(e))}return(e){let r=new oi;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(oi)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new lf;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new si(s),r(s)}return n&&(this._currNode=o.finally=new ii,this.code(n)),this._endBlockNode(si,ii)}throw(e){return this._leafNode(new of(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=ae.nil,n,o){return this._blockNode(new ni(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(ni)}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 Hn))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};ee.CodeGen=df;function Bn(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function kc(t,e){return e instanceof ae._CodeOrName?Bn(t,e.names):t}function jo(t,e,r){if(t instanceof ae.Name)return n(t);if(!o(t))return t;return new ae._Code(t._items.reduce((s,i)=>(i instanceof ae.Name&&(i=n(i)),i instanceof ae._Code?s.push(...i._items):s.push(i),s),[]));function n(s){let i=r[s.str];return i===void 0||e[s.str]!==1?s:(delete e[s.str],i)}function o(s){return s instanceof ae._Code&&s._items.some(i=>i instanceof ae.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function dI(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Pb(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,ae._)`!${pf(t)}`}ee.not=Pb;var pI=Rb(ee.operators.AND);function mI(...t){return t.reduce(pI)}ee.and=mI;var fI=Rb(ee.operators.OR);function hI(...t){return t.reduce(fI)}ee.or=hI;function Rb(t){return(e,r)=>e===ae.nil?r:r===ae.nil?e:(0,ae._)`${pf(e)} ${t} ${pf(r)}`}function pf(t){return t instanceof ae.Name?t:(0,ae._)`(${t})`}});var ue=C(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.checkStrictMode=te.getErrorPath=te.Type=te.useFunc=te.setEvaluated=te.evaluatedPropsToName=te.mergeEvaluated=te.eachItem=te.unescapeJsonPointer=te.escapeJsonPointer=te.escapeFragment=te.unescapeFragment=te.schemaRefOrVal=te.schemaHasRulesButRef=te.schemaHasRules=te.checkUnknownRules=te.alwaysValidSchema=te.toHash=void 0;var xe=Q(),gI=ti();function _I(t){let e={};for(let r of t)e[r]=!0;return e}te.toHash=_I;function yI(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Ib(t,e),!Ab(e,t.self.RULES.all))}te.alwaysValidSchema=yI;function Ib(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]||jb(t,`unknown keyword: "${s}"`)}te.checkUnknownRules=Ib;function Ab(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}te.schemaHasRules=Ab;function xI(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}te.schemaHasRulesButRef=xI;function vI({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,xe._)`${r}`}return(0,xe._)`${t}${e}${(0,xe.getProperty)(n)}`}te.schemaRefOrVal=vI;function bI(t){return Nb(decodeURIComponent(t))}te.unescapeFragment=bI;function SI(t){return encodeURIComponent(ff(t))}te.escapeFragment=SI;function ff(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}te.escapeJsonPointer=ff;function Nb(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}te.unescapeJsonPointer=Nb;function kI(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}te.eachItem=kI;function Cb({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof xe.Name?(s instanceof xe.Name?t(o,s,i):e(o,s,i),i):s instanceof xe.Name?(e(o,i,s),s):r(s,i);return a===xe.Name&&!(c instanceof xe.Name)?n(o,c):c}}te.mergeEvaluated={props:Cb({mergeNames:(t,e,r)=>t.if((0,xe._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,xe._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,xe._)`${r} || {}`).code((0,xe._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,xe._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,xe._)`${r} || {}`),hf(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:zb}),items:Cb({mergeNames:(t,e,r)=>t.if((0,xe._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,xe._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,xe._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,xe._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function zb(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,xe._)`{}`);return e!==void 0&&hf(t,r,e),r}te.evaluatedPropsToName=zb;function hf(t,e,r){Object.keys(r).forEach(n=>t.assign((0,xe._)`${e}${(0,xe.getProperty)(n)}`,!0))}te.setEvaluated=hf;var Ob={};function wI(t,e){return t.scopeValue("func",{ref:e,code:Ob[e.code]||(Ob[e.code]=new gI._Code(e.code))})}te.useFunc=wI;var mf;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(mf||(te.Type=mf={}));function $I(t,e,r){if(t instanceof xe.Name){let n=e===mf.Num;return r?n?(0,xe._)`"[" + ${t} + "]"`:(0,xe._)`"['" + ${t} + "']"`:n?(0,xe._)`"/" + ${t}`:(0,xe._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,xe.getProperty)(t).toString():"/"+ff(t)}te.getErrorPath=$I;function jb(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}te.checkStrictMode=jb});var Ir=C(gf=>{"use strict";Object.defineProperty(gf,"__esModule",{value:!0});var tt=Q(),EI={data:new tt.Name("data"),valCxt:new tt.Name("valCxt"),instancePath:new tt.Name("instancePath"),parentData:new tt.Name("parentData"),parentDataProperty:new tt.Name("parentDataProperty"),rootData:new tt.Name("rootData"),dynamicAnchors:new tt.Name("dynamicAnchors"),vErrors:new tt.Name("vErrors"),errors:new tt.Name("errors"),this:new tt.Name("this"),self:new tt.Name("self"),scope:new tt.Name("scope"),json:new tt.Name("json"),jsonPos:new tt.Name("jsonPos"),jsonLen:new tt.Name("jsonLen"),jsonPart:new tt.Name("jsonPart")};gf.default=EI});var ai=C(rt=>{"use strict";Object.defineProperty(rt,"__esModule",{value:!0});rt.extendErrors=rt.resetErrorsCount=rt.reportExtraError=rt.reportError=rt.keyword$DataError=rt.keywordError=void 0;var le=Q(),$c=ue(),ut=Ir();rt.keywordError={message:({keyword:t})=>(0,le.str)`must pass "${t}" keyword validation`};rt.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,le.str)`"${t}" keyword must be ${e} ($data)`:(0,le.str)`"${t}" keyword is invalid ($data)`};function TI(t,e=rt.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=Lb(t,e,r);n??(i||a)?Db(s,c):Mb(o,(0,le._)`[${c}]`)}rt.reportError=TI;function PI(t,e=rt.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Lb(t,e,r);Db(o,a),s||i||Mb(n,ut.default.vErrors)}rt.reportExtraError=PI;function RI(t,e){t.assign(ut.default.errors,e),t.if((0,le._)`${ut.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,le._)`${ut.default.vErrors}.length`,e),()=>t.assign(ut.default.vErrors,null)))}rt.resetErrorsCount=RI;function CI({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,ut.default.errors,a=>{t.const(i,(0,le._)`${ut.default.vErrors}[${a}]`),t.if((0,le._)`${i}.instancePath === undefined`,()=>t.assign((0,le._)`${i}.instancePath`,(0,le.strConcat)(ut.default.instancePath,s.errorPath))),t.assign((0,le._)`${i}.schemaPath`,(0,le.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,le._)`${i}.schema`,r),t.assign((0,le._)`${i}.data`,n))})}rt.extendErrors=CI;function Db(t,e){let r=t.const("err",e);t.if((0,le._)`${ut.default.vErrors} === null`,()=>t.assign(ut.default.vErrors,(0,le._)`[${r}]`),(0,le._)`${ut.default.vErrors}.push(${r})`),t.code((0,le._)`${ut.default.errors}++`)}function Mb(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,le._)`new ${t.ValidationError}(${e})`):(r.assign((0,le._)`${n}.errors`,e),r.return(!1))}var Vn={keyword:new le.Name("keyword"),schemaPath:new le.Name("schemaPath"),params:new le.Name("params"),propertyName:new le.Name("propertyName"),message:new le.Name("message"),schema:new le.Name("schema"),parentSchema:new le.Name("parentSchema")};function Lb(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,le._)`{}`:OI(t,e,r)}function OI(t,e,r={}){let{gen:n,it:o}=t,s=[II(o,r),AI(t,r)];return NI(t,e,s),n.object(...s)}function II({errorPath:t},{instancePath:e}){let r=e?(0,le.str)`${t}${(0,$c.getErrorPath)(e,$c.Type.Str)}`:t;return[ut.default.instancePath,(0,le.strConcat)(ut.default.instancePath,r)]}function AI({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,le.str)`${e}/${t}`;return r&&(o=(0,le.str)`${o}${(0,$c.getErrorPath)(r,$c.Type.Str)}`),[Vn.schemaPath,o]}function NI(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([Vn.keyword,o],[Vn.params,typeof e=="function"?e(t):e||(0,le._)`{}`]),c.messages&&n.push([Vn.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Vn.schema,i],[Vn.parentSchema,(0,le._)`${l}${d}`],[ut.default.data,s]),u&&n.push([Vn.propertyName,u])}});var Ub=C(Do=>{"use strict";Object.defineProperty(Do,"__esModule",{value:!0});Do.boolOrEmptySchema=Do.topBoolOrEmptySchema=void 0;var zI=ai(),jI=Q(),DI=Ir(),MI={message:"boolean schema is false"};function LI(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Fb(t,!1):typeof r=="object"&&r.$async===!0?e.return(DI.default.data):(e.assign((0,jI._)`${n}.errors`,null),e.return(!0))}Do.topBoolOrEmptySchema=LI;function FI(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Fb(t)):r.var(e,!0)}Do.boolOrEmptySchema=FI;function Fb(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,zI.reportError)(o,MI,void 0,e)}});var _f=C(Mo=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});Mo.getRules=Mo.isJSONType=void 0;var UI=["string","number","integer","boolean","null","object","array"],ZI=new Set(UI);function HI(t){return typeof t=="string"&&ZI.has(t)}Mo.isJSONType=HI;function qI(){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:{}}}Mo.getRules=qI});var yf=C(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.shouldUseRule=rn.shouldUseGroup=rn.schemaHasRulesForType=void 0;function BI({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Zb(t,n)}rn.schemaHasRulesForType=BI;function Zb(t,e){return e.rules.some(r=>Hb(t,r))}rn.shouldUseGroup=Zb;function Hb(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))}rn.shouldUseRule=Hb});var ci=C(nt=>{"use strict";Object.defineProperty(nt,"__esModule",{value:!0});nt.reportTypeError=nt.checkDataTypes=nt.checkDataType=nt.coerceAndCheckDataType=nt.getJSONTypes=nt.getSchemaTypes=nt.DataType=void 0;var VI=_f(),WI=yf(),GI=ai(),Y=Q(),qb=ue(),Lo;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Lo||(nt.DataType=Lo={}));function KI(t){let e=Bb(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}nt.getSchemaTypes=KI;function Bb(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(VI.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}nt.getJSONTypes=Bb;function JI(t,e){let{gen:r,data:n,opts:o}=t,s=YI(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,WI.schemaHasRulesForType)(t,e[0]));if(i){let a=vf(e,n,o.strictNumbers,Lo.Wrong);r.if(a,()=>{s.length?XI(t,e,s):bf(t)})}return i}nt.coerceAndCheckDataType=JI;var Vb=new Set(["string","number","integer","boolean","null"]);function YI(t,e){return e?t.filter(r=>Vb.has(r)||e==="array"&&r==="array"):[]}function XI(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,Y._)`typeof ${o}`),a=n.let("coerced",(0,Y._)`undefined`);s.coerceTypes==="array"&&n.if((0,Y._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,Y._)`${o}[0]`).assign(i,(0,Y._)`typeof ${o}`).if(vf(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,Y._)`${a} !== undefined`);for(let u of r)(Vb.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),bf(t),n.endIf(),n.if((0,Y._)`${a} !== undefined`,()=>{n.assign(o,a),QI(t,a)});function c(u){switch(u){case"string":n.elseIf((0,Y._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,Y._)`"" + ${o}`).elseIf((0,Y._)`${o} === null`).assign(a,(0,Y._)`""`);return;case"number":n.elseIf((0,Y._)`${i} == "boolean" || ${o} === null
52
52
  || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,Y._)`+${o}`);return;case"integer":n.elseIf((0,Y._)`${i} === "boolean" || ${o} === null
53
53
  || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,Y._)`+${o}`);return;case"boolean":n.elseIf((0,Y._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,Y._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,Y._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,Y._)`${i} === "string" || ${i} === "number"
54
- || ${i} === "boolean" || ${o} === null`).assign(a,(0,Y._)`[${o}]`)}}}function QI({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Y._)`${e} !== undefined`,()=>t.assign((0,Y._)`${e}[${r}]`,n))}function xf(t,e,r,n=Lo.Correct){let o=n===Lo.Correct?Y.operators.EQ:Y.operators.NEQ,s;switch(t){case"null":return(0,Y._)`${e} ${o} null`;case"array":s=(0,Y._)`Array.isArray(${e})`;break;case"object":s=(0,Y._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,Y._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,Y._)`typeof ${e} ${o} ${t}`}return n===Lo.Correct?s:(0,Y.not)(s);function i(a=Y.nil){return(0,Y.and)((0,Y._)`typeof ${e} == "number"`,a,r?(0,Y._)`isFinite(${e})`:Y.nil)}}nt.checkDataType=xf;function vf(t,e,r,n){if(t.length===1)return xf(t[0],e,r,n);let o,s=(0,Hb.toHash)(t);if(s.array&&s.object){let i=(0,Y._)`typeof ${e} != "object"`;o=s.null?i:(0,Y._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=Y.nil;s.number&&delete s.integer;for(let i in s)o=(0,Y.and)(o,xf(i,e,r,n));return o}nt.checkDataTypes=vf;var e1={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Y._)`{type: ${t}}`:(0,Y._)`{type: ${e}}`};function bf(t){let e=t1(t);(0,GI.reportError)(e,e1)}nt.reportTypeError=bf;function t1(t){let{gen:e,data:r,schema:n}=t,o=(0,Hb.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Wb=C(Tc=>{"use strict";Object.defineProperty(Tc,"__esModule",{value:!0});Tc.assignDefaults=void 0;var Fo=Q(),r1=ue();function n1(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Vb(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Vb(t,s,o.default))}Tc.assignDefaults=n1;function Vb(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Fo._)`${s}${(0,Fo.getProperty)(e)}`;if(o){(0,r1.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Fo._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Fo._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Fo._)`${a} = ${(0,Fo.stringify)(r)}`)}});var Lt=C(_e=>{"use strict";Object.defineProperty(_e,"__esModule",{value:!0});_e.validateUnion=_e.validateArray=_e.usePattern=_e.callValidateCode=_e.schemaProperties=_e.allSchemaProperties=_e.noPropertyInData=_e.propertyInData=_e.isOwnProperty=_e.hasPropFunc=_e.reportMissingProp=_e.checkMissingProp=_e.checkReportMissingProp=void 0;var $e=Q(),Sf=ue(),nn=Ir(),o1=ue();function s1(t,e){let{gen:r,data:n,it:o}=t;r.if(wf(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,$e._)`${e}`},!0),t.error()})}_e.checkReportMissingProp=s1;function i1({gen:t,data:e,it:{opts:r}},n,o){return(0,$e.or)(...n.map(s=>(0,$e.and)(wf(t,e,s,r.ownProperties),(0,$e._)`${o} = ${s}`)))}_e.checkMissingProp=i1;function a1(t,e){t.setParams({missingProperty:e},!0),t.error()}_e.reportMissingProp=a1;function Gb(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,$e._)`Object.prototype.hasOwnProperty`})}_e.hasPropFunc=Gb;function kf(t,e,r){return(0,$e._)`${Gb(t)}.call(${e}, ${r})`}_e.isOwnProperty=kf;function c1(t,e,r,n){let o=(0,$e._)`${e}${(0,$e.getProperty)(r)} !== undefined`;return n?(0,$e._)`${o} && ${kf(t,e,r)}`:o}_e.propertyInData=c1;function wf(t,e,r,n){let o=(0,$e._)`${e}${(0,$e.getProperty)(r)} === undefined`;return n?(0,$e.or)(o,(0,$e.not)(kf(t,e,r))):o}_e.noPropertyInData=wf;function Kb(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}_e.allSchemaProperties=Kb;function u1(t,e){return Kb(e).filter(r=>!(0,Sf.alwaysValidSchema)(t,e[r]))}_e.schemaProperties=u1;function l1({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,$e._)`${t}, ${e}, ${n}${o}`:e,d=[[nn.default.instancePath,(0,$e.strConcat)(nn.default.instancePath,s)],[nn.default.parentData,i.parentData],[nn.default.parentDataProperty,i.parentDataProperty],[nn.default.rootData,nn.default.rootData]];i.opts.dynamicRef&&d.push([nn.default.dynamicAnchors,nn.default.dynamicAnchors]);let p=(0,$e._)`${l}, ${r.object(...d)}`;return c!==$e.nil?(0,$e._)`${a}.call(${c}, ${p})`:(0,$e._)`${a}(${p})`}_e.callValidateCode=l1;var d1=(0,$e._)`new RegExp`;function p1({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,$e._)`${o.code==="new RegExp"?d1:(0,o1.useFunc)(t,o)}(${r}, ${n})`})}_e.usePattern=p1;function m1(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,$e._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Sf.Type.Num},s),e.if((0,$e.not)(s),a)})}}_e.validateArray=m1;function f1(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,Sf.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,$e._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,$e.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}_e.validateUnion=f1});var Xb=C(dr=>{"use strict";Object.defineProperty(dr,"__esModule",{value:!0});dr.validateKeywordUsage=dr.validSchemaType=dr.funcKeywordCode=dr.macroKeywordCode=void 0;var lt=Q(),Wn=Ir(),h1=Lt(),g1=ai();function _1(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Yb(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:lt.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}dr.macroKeywordCode=_1;function y1(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;v1(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Yb(n,o,u),d=n.let("valid");t.block$data(d,p),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function p(){if(e.errors===!1)h(),e.modifying&&Jb(t),g(()=>t.error());else{let y=e.async?f():m();e.modifying&&Jb(t),g(()=>x1(t,y))}}function f(){let y=n.let("ruleErrs",null);return n.try(()=>h((0,lt._)`await `),_=>n.assign(d,!1).if((0,lt._)`${_} instanceof ${c.ValidationError}`,()=>n.assign(y,(0,lt._)`${_}.errors`),()=>n.throw(_))),y}function m(){let y=(0,lt._)`${l}.errors`;return n.assign(y,null),h(lt.nil),y}function h(y=e.async?(0,lt._)`await `:lt.nil){let _=c.opts.passContext?Wn.default.this:Wn.default.self,x=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,lt._)`${y}${(0,h1.callValidateCode)(t,l,_,x)}`,e.modifying)}function g(y){var _;n.if((0,lt.not)((_=e.valid)!==null&&_!==void 0?_:d),y)}}dr.funcKeywordCode=y1;function Jb(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,lt._)`${n.parentData}[${n.parentDataProperty}]`))}function x1(t,e){let{gen:r}=t;r.if((0,lt._)`Array.isArray(${e})`,()=>{r.assign(Wn.default.vErrors,(0,lt._)`${Wn.default.vErrors} === null ? ${e} : ${Wn.default.vErrors}.concat(${e})`).assign(Wn.default.errors,(0,lt._)`${Wn.default.vErrors}.length`),(0,g1.extendErrors)(t)},()=>t.error())}function v1({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Yb(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,lt.stringify)(r)})}function b1(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")}dr.validSchemaType=b1;function S1({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)}}dr.validateKeywordUsage=S1});var eS=C(on=>{"use strict";Object.defineProperty(on,"__esModule",{value:!0});on.extendSubschemaMode=on.extendSubschemaData=on.getSubschema=void 0;var pr=Q(),Qb=ue();function k1(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,pr._)`${t.schemaPath}${(0,pr.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,pr._)`${t.schemaPath}${(0,pr.getProperty)(e)}${(0,pr.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Qb.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')}on.getSubschema=k1;function w1(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,p=a.let("data",(0,pr._)`${e.data}${(0,pr.getProperty)(r)}`,!0);c(p),t.errorPath=(0,pr.str)`${u}${(0,Qb.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,pr._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof pr.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]}}on.extendSubschemaData=w1;function $1(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}on.extendSubschemaMode=$1});var $f=C((pB,tS)=>{"use strict";tS.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 nS=C((mB,rS)=>{"use strict";var sn=rS.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(){};Pc(e,n,o,t,"",t)};sn.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};sn.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};sn.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};sn.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 Pc(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 sn.arrayKeywords)for(var p=0;p<d.length;p++)Pc(t,e,r,d[p],o+"/"+l+"/"+p,s,o,l,n,p)}else if(l in sn.propsKeywords){if(d&&typeof d=="object")for(var f in d)Pc(t,e,r,d[f],o+"/"+l+"/"+E1(f),s,o,l,n,f)}else(l in sn.keywords||t.allKeys&&!(l in sn.skipKeywords))&&Pc(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function E1(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var ui=C(yt=>{"use strict";Object.defineProperty(yt,"__esModule",{value:!0});yt.getSchemaRefs=yt.resolveUrl=yt.normalizeId=yt._getFullPath=yt.getFullPath=yt.inlineRef=void 0;var T1=ue(),P1=$f(),R1=nS(),C1=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function O1(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Ef(t):e?oS(t)<=e:!1}yt.inlineRef=O1;var I1=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Ef(t){for(let e in t){if(I1.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Ef)||typeof r=="object"&&Ef(r))return!0}return!1}function oS(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!C1.has(r)&&(typeof t[r]=="object"&&(0,T1.eachItem)(t[r],n=>e+=oS(n)),e===1/0))return 1/0}return e}function sS(t,e="",r){r!==!1&&(e=Uo(e));let n=t.parse(e);return iS(t,n)}yt.getFullPath=sS;function iS(t,e){return t.serialize(e).split("#")[0]+"#"}yt._getFullPath=iS;var A1=/#\/?$/;function Uo(t){return t?t.replace(A1,""):""}yt.normalizeId=Uo;function N1(t,e,r){return r=Uo(r),t.resolve(e,r)}yt.resolveUrl=N1;var z1=/^[a-z_][-a-z0-9._]*$/i;function j1(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Uo(t[r]||e),s={"":o},i=sS(n,o,!1),a={},c=new Set;return R1(t,{allKeys:!0},(d,p,f,m)=>{if(m===void 0)return;let h=i+p,g=s[m];typeof d[r]=="string"&&(g=y.call(this,d[r])),_.call(this,d.$anchor),_.call(this,d.$dynamicAnchor),s[p]=g;function y(x){let k=this.opts.uriResolver.resolve;if(x=Uo(g?k(g,x):x),c.has(x))throw l(x);c.add(x);let T=this.refs[x];return typeof T=="string"&&(T=this.refs[T]),typeof T=="object"?u(d,T.schema,x):x!==Uo(h)&&(x[0]==="#"?(u(d,a[x],x),a[x]=d):this.refs[x]=h),x}function _(x){if(typeof x=="string"){if(!z1.test(x))throw new Error(`invalid anchor "${x}"`);y.call(this,`#${x}`)}}}),a;function u(d,p,f){if(p!==void 0&&!P1(d,p))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}yt.getSchemaRefs=j1});var pi=C(an=>{"use strict";Object.defineProperty(an,"__esModule",{value:!0});an.getData=an.KeywordCxt=an.validateFunctionCode=void 0;var dS=Fb(),aS=ci(),Pf=yf(),Rc=ci(),D1=Wb(),di=Xb(),Tf=eS(),F=Q(),G=Ir(),M1=ui(),Ar=ue(),li=ai();function L1(t){if(fS(t)&&(hS(t),mS(t))){Z1(t);return}pS(t,()=>(0,dS.topBoolOrEmptySchema)(t))}an.validateFunctionCode=L1;function pS({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,F._)`${G.default.data}, ${G.default.valCxt}`,n.$async,()=>{t.code((0,F._)`"use strict"; ${cS(r,o)}`),U1(t,o),t.code(s)}):t.func(e,(0,F._)`${G.default.data}, ${F1(o)}`,n.$async,()=>t.code(cS(r,o)).code(s))}function F1(t){return(0,F._)`{${G.default.instancePath}="", ${G.default.parentData}, ${G.default.parentDataProperty}, ${G.default.rootData}=${G.default.data}${t.dynamicRef?(0,F._)`, ${G.default.dynamicAnchors}={}`:F.nil}}={}`}function U1(t,e){t.if(G.default.valCxt,()=>{t.var(G.default.instancePath,(0,F._)`${G.default.valCxt}.${G.default.instancePath}`),t.var(G.default.parentData,(0,F._)`${G.default.valCxt}.${G.default.parentData}`),t.var(G.default.parentDataProperty,(0,F._)`${G.default.valCxt}.${G.default.parentDataProperty}`),t.var(G.default.rootData,(0,F._)`${G.default.valCxt}.${G.default.rootData}`),e.dynamicRef&&t.var(G.default.dynamicAnchors,(0,F._)`${G.default.valCxt}.${G.default.dynamicAnchors}`)},()=>{t.var(G.default.instancePath,(0,F._)`""`),t.var(G.default.parentData,(0,F._)`undefined`),t.var(G.default.parentDataProperty,(0,F._)`undefined`),t.var(G.default.rootData,G.default.data),e.dynamicRef&&t.var(G.default.dynamicAnchors,(0,F._)`{}`)})}function Z1(t){let{schema:e,opts:r,gen:n}=t;pS(t,()=>{r.$comment&&e.$comment&&_S(t),W1(t),n.let(G.default.vErrors,null),n.let(G.default.errors,0),r.unevaluated&&H1(t),gS(t),J1(t)})}function H1(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,F._)`${r}.evaluated`),e.if((0,F._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,F._)`${t.evaluated}.props`,(0,F._)`undefined`)),e.if((0,F._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,F._)`${t.evaluated}.items`,(0,F._)`undefined`))}function cS(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,F._)`/*# sourceURL=${r} */`:F.nil}function q1(t,e){if(fS(t)&&(hS(t),mS(t))){B1(t,e);return}(0,dS.boolOrEmptySchema)(t,e)}function mS({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 fS(t){return typeof t.schema!="boolean"}function B1(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&_S(t),G1(t),K1(t);let s=n.const("_errs",G.default.errors);gS(t,s),n.var(e,(0,F._)`${s} === ${G.default.errors}`)}function hS(t){(0,Ar.checkUnknownRules)(t),V1(t)}function gS(t,e){if(t.opts.jtd)return uS(t,[],!1,e);let r=(0,aS.getSchemaTypes)(t.schema),n=(0,aS.coerceAndCheckDataType)(t,r);uS(t,r,!n,e)}function V1(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Ar.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function W1(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ar.checkStrictMode)(t,"default is ignored in the schema root")}function G1(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,M1.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function K1(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function _S({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,F._)`${G.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,F.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,F._)`${G.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function J1(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,F._)`${G.default.errors} === 0`,()=>e.return(G.default.data),()=>e.throw((0,F._)`new ${o}(${G.default.vErrors})`)):(e.assign((0,F._)`${n}.errors`,G.default.vErrors),s.unevaluated&&Y1(t),e.return((0,F._)`${G.default.errors} === 0`))}function Y1({gen:t,evaluated:e,props:r,items:n}){r instanceof F.Name&&t.assign((0,F._)`${e}.props`,r),n instanceof F.Name&&t.assign((0,F._)`${e}.items`,n)}function uS(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,Ar.schemaHasRulesButRef)(s,l))){o.block(()=>xS(t,"$ref",l.all.$ref.definition));return}c.jtd||X1(t,e),o.block(()=>{for(let p of l.rules)d(p);d(l.post)});function d(p){(0,Pf.shouldUseGroup)(s,p)&&(p.type?(o.if((0,Rc.checkDataType)(p.type,i,c.strictNumbers)),lS(t,p),e.length===1&&e[0]===p.type&&r&&(o.else(),(0,Rc.reportTypeError)(t)),o.endIf()):lS(t,p),a||o.if((0,F._)`${G.default.errors} === ${n||0}`))}}function lS(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,D1.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Pf.shouldUseRule)(n,s)&&xS(t,s.keyword,s.definition,e.type)})}function X1(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(Q1(t,e),t.opts.allowUnionTypes||eA(t,e),tA(t,t.dataTypes))}function Q1(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{yS(t.dataTypes,r)||Rf(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),nA(t,e)}}function eA(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Rf(t,"use allowUnionTypes to allow union type keyword")}function tA(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Pf.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>rA(e,i))&&Rf(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function rA(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function yS(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function nA(t,e){let r=[];for(let n of t.dataTypes)yS(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Rf(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Ar.checkStrictMode)(t,e,t.opts.strictTypes)}var Cc=class{constructor(e,r,n){if((0,di.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,Ar.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",vS(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,di.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",G.default.errors))}result(e,r,n){this.failResult((0,F.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,F.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,F._)`${r} !== undefined && (${(0,F.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?li.reportExtraError:li.reportError)(this,this.def.error,r)}$dataError(){(0,li.reportError)(this,this.def.$dataError||li.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,li.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=F.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=F.nil,r=F.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,F.or)((0,F._)`${o} === undefined`,r)),e!==F.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==F.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,F.or)(i(),a());function i(){if(n.length){if(!(r instanceof F.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,F._)`${(0,Rc.checkDataTypes)(c,r,s.opts.strictNumbers,Rc.DataType.Wrong)}`}return F.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,F._)`!${c}(${r})`}return F.nil}}subschema(e,r){let n=(0,Tf.getSubschema)(this.it,e);(0,Tf.extendSubschemaData)(n,this.it,e),(0,Tf.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return q1(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Ar.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Ar.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,F.Name)),!0}};an.KeywordCxt=Cc;function xS(t,e,r,n){let o=new Cc(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,di.funcKeywordCode)(o,r):"macro"in r?(0,di.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,di.funcKeywordCode)(o,r)}var oA=/^\/(?:[^~]|~0|~1)*$/,sA=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function vS(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return G.default.rootData;if(t[0]==="/"){if(!oA.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=G.default.rootData}else{let u=sA.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,F._)`${s}${(0,F.getProperty)((0,Ar.unescapeJsonPointer)(u))}`,i=(0,F._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}an.getData=vS});var Oc=C(Of=>{"use strict";Object.defineProperty(Of,"__esModule",{value:!0});var Cf=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Of.default=Cf});var mi=C(Nf=>{"use strict";Object.defineProperty(Nf,"__esModule",{value:!0});var If=ui(),Af=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,If.resolveUrl)(e,r,n),this.missingSchema=(0,If.normalizeId)((0,If.getFullPath)(e,this.missingRef))}};Nf.default=Af});var Ac=C(Ft=>{"use strict";Object.defineProperty(Ft,"__esModule",{value:!0});Ft.resolveSchema=Ft.getCompilingSchema=Ft.resolveRef=Ft.compileSchema=Ft.SchemaEnv=void 0;var Qt=Q(),iA=Oc(),Gn=Ir(),er=ui(),bS=ue(),aA=pi(),Zo=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,er.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=Zo;function jf(t){let e=SS.call(this,t);if(e)return e;let r=(0,er.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Qt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:iA.default,code:(0,Qt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Gn.default.data,parentData:Gn.default.parentData,parentDataProperty:Gn.default.parentDataProperty,dataNames:[Gn.default.data],dataPathArr:[Qt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Qt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Qt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Qt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,aA.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Gn.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let f=new Function(`${Gn.default.self}`,`${Gn.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:m,items:h}=u;f.evaluated={props:m instanceof Qt.Name?void 0:m,items:h instanceof Qt.Name?void 0:h,dynamicProps:m instanceof Qt.Name,dynamicItems:h instanceof Qt.Name},f.source&&(f.source.evaluated=(0,Qt.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=jf;function cA(t,e,r){var n;r=(0,er.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=dA.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 Zo({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=uA.call(this,s)}Ft.resolveRef=cA;function uA(t){return(0,er.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:jf.call(this,t)}function SS(t){for(let e of this._compilations)if(lA(e,t))return e}Ft.getCompilingSchema=SS;function lA(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function dA(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Ic.call(this,t,e)}function Ic(t,e){let r=this.opts.uriResolver.parse(e),n=(0,er._getFullPath)(this.opts.uriResolver,r),o=(0,er.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return zf.call(this,r,t);let s=(0,er.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Ic.call(this,t,i);return typeof a?.schema!="object"?void 0:zf.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||jf.call(this,i),s===(0,er.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,er.resolveUrl)(this.opts.uriResolver,o,u)),new Zo({schema:a,schemaId:c,root:t,baseId:o})}return zf.call(this,r,i)}}Ft.resolveSchema=Ic;var pA=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function zf(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,bS.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!pA.has(a)&&u&&(e=(0,er.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,bS.schemaHasRulesButRef)(r,this.RULES)){let a=(0,er.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Ic.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Zo({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var kS=C((xB,mA)=>{mA.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 Mf=C((vB,TS)=>{"use strict";var fA=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),$S=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 Df(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 hA=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function wS(t){return t.length=0,!0}function gA(t,e,r){if(t.length){let n=Df(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function _A(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=gA;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=wS}else{o.push(u);continue}}return o.length&&(a===wS?r.zone=o.join(""):i?n.push(o.join("")):n.push(Df(o))),r.address=n.join(""),r}function ES(t){if(yA(t,":")<2)return{host:t,isIPV6:!1};let e=_A(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function yA(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function xA(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 vA(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 bA(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!$S(r)){let n=ES(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}TS.exports={nonSimpleDomain:hA,recomposeAuthority:bA,normalizeComponentEncoding:vA,removeDotSegments:xA,isIPv4:$S,isUUID:fA,normalizeIPv6:ES,stringArrayToHexStripped:Df}});var IS=C((bB,OS)=>{"use strict";var{isUUID:SA}=Mf(),kA=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,wA=["http","https","ws","wss","urn","urn:uuid"];function $A(t){return wA.indexOf(t)!==-1}function Lf(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 PS(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function RS(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 EA(t){return t.secure=Lf(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function TA(t){if((t.port===(Lf(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 PA(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(kA);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=Ff(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function RA(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=Ff(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 CA(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!SA(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function OA(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var CS={scheme:"http",domainHost:!0,parse:PS,serialize:RS},IA={scheme:"https",domainHost:CS.domainHost,parse:PS,serialize:RS},Nc={scheme:"ws",domainHost:!0,parse:EA,serialize:TA},AA={scheme:"wss",domainHost:Nc.domainHost,parse:Nc.parse,serialize:Nc.serialize},NA={scheme:"urn",parse:PA,serialize:RA,skipNormalize:!0},zA={scheme:"urn:uuid",parse:CA,serialize:OA,skipNormalize:!0},zc={http:CS,https:IA,ws:Nc,wss:AA,urn:NA,"urn:uuid":zA};Object.setPrototypeOf(zc,null);function Ff(t){return t&&(zc[t]||zc[t.toLowerCase()])||void 0}OS.exports={wsIsSecure:Lf,SCHEMES:zc,isValidSchemeName:$A,getSchemeHandler:Ff}});var zS=C((SB,Dc)=>{"use strict";var{normalizeIPv6:jA,removeDotSegments:fi,recomposeAuthority:DA,normalizeComponentEncoding:jc,isIPv4:MA,nonSimpleDomain:LA}=Mf(),{SCHEMES:FA,getSchemeHandler:AS}=IS();function UA(t,e){return typeof t=="string"?t=mr(Nr(t,e),e):typeof t=="object"&&(t=Nr(mr(t,e),e)),t}function ZA(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=NS(Nr(t,n),Nr(e,n),n,!0);return n.skipEscape=!0,mr(o,n)}function NS(t,e,r,n){let o={};return n||(t=Nr(mr(t,r),r),e=Nr(mr(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=fi(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=fi(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=fi(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=fi(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 HA(t,e,r){return typeof t=="string"?(t=unescape(t),t=mr(jc(Nr(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=mr(jc(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=mr(jc(Nr(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=mr(jc(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function mr(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=AS(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=DA(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=fi(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 qA=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Nr(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match(qA);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(MA(n.host)===!1){let c=jA(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=AS(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&LA(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 Uf={SCHEMES:FA,normalize:UA,resolve:ZA,resolveComponent:NS,equal:HA,serialize:mr,parse:Nr};Dc.exports=Uf;Dc.exports.default=Uf;Dc.exports.fastUri=Uf});var DS=C(Zf=>{"use strict";Object.defineProperty(Zf,"__esModule",{value:!0});var jS=zS();jS.code='require("ajv/dist/runtime/uri").default';Zf.default=jS});var BS=C(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.CodeGen=Ye.Name=Ye.nil=Ye.stringify=Ye.str=Ye._=Ye.KeywordCxt=void 0;var BA=pi();Object.defineProperty(Ye,"KeywordCxt",{enumerable:!0,get:function(){return BA.KeywordCxt}});var Ho=Q();Object.defineProperty(Ye,"_",{enumerable:!0,get:function(){return Ho._}});Object.defineProperty(Ye,"str",{enumerable:!0,get:function(){return Ho.str}});Object.defineProperty(Ye,"stringify",{enumerable:!0,get:function(){return Ho.stringify}});Object.defineProperty(Ye,"nil",{enumerable:!0,get:function(){return Ho.nil}});Object.defineProperty(Ye,"Name",{enumerable:!0,get:function(){return Ho.Name}});Object.defineProperty(Ye,"CodeGen",{enumerable:!0,get:function(){return Ho.CodeGen}});var VA=Oc(),ZS=mi(),WA=_f(),hi=Ac(),GA=Q(),gi=ui(),Mc=ci(),qf=ue(),MS=kS(),KA=DS(),HS=(t,e)=>new RegExp(t,e);HS.code="new RegExp";var JA=["removeAdditional","useDefaults","coerceTypes"],YA=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),XA={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."},QA={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},LS=200;function eN(t){var e,r,n,o,s,i,a,c,u,l,d,p,f,m,h,g,y,_,x,k,T,H,z,K,Le;let P=t.strict,N=(e=t.code)===null||e===void 0?void 0:e.optimize,ce=N===!0||N===void 0?1:N||0,De=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:HS,Pe=(o=t.uriResolver)!==null&&o!==void 0?o:KA.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:P)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(p=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&p!==void 0?p:"log",strictRequired:(m=(f=t.strictRequired)!==null&&f!==void 0?f:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:ce,regExp:De}:{optimize:ce,regExp:De},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:LS,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:LS,meta:(y=t.meta)!==null&&y!==void 0?y:!0,messages:(_=t.messages)!==null&&_!==void 0?_:!0,inlineRefs:(x=t.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(k=t.schemaId)!==null&&k!==void 0?k:"$id",addUsedSchema:(T=t.addUsedSchema)!==null&&T!==void 0?T:!0,validateSchema:(H=t.validateSchema)!==null&&H!==void 0?H:!0,validateFormats:(z=t.validateFormats)!==null&&z!==void 0?z:!0,unicodeRegExp:(K=t.unicodeRegExp)!==null&&K!==void 0?K:!0,int32range:(Le=t.int32range)!==null&&Le!==void 0?Le:!0,uriResolver:Pe}}var _i=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...eN(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new GA.ValueScope({scope:{},prefixes:YA,es5:r,lines:n}),this.logger=iN(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,WA.getRules)(),FS.call(this,XA,e,"NOT SUPPORTED"),FS.call(this,QA,e,"DEPRECATED","warn"),this._metaOpts=oN.call(this),e.formats&&rN.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&nN.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),tN.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=MS;n==="id"&&(o={...MS},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 p=this._addSchema(l,d);return p.validate||i.call(this,p)}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 ZS.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,gi.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=US.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new hi.SchemaEnv({schema:{},schemaId:n});if(r=hi.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=US.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,gi.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(cN.call(this,n,r),!r)return(0,qf.eachItem)(n,s=>Hf.call(this,s)),this;lN.call(this,r);let o={...r,type:(0,Mc.getJSONTypes)(r.type),schemaType:(0,Mc.getJSONTypes)(r.schemaType)};return(0,qf.eachItem)(n,o.type.length===0?s=>Hf.call(this,s,o):s=>o.type.forEach(i=>Hf.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]=qS(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,gi.normalizeId)(i||n);let u=gi.getSchemaRefs.call(this,e,n);return c=new hi.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):hi.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{hi.compileSchema.call(this,e)}finally{this.opts=r}}};_i.ValidationError=VA.default;_i.MissingRefError=ZS.default;Ye.default=_i;function FS(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 US(t){return t=(0,gi.normalizeId)(t),this.schemas[t]||this.refs[t]}function tN(){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 rN(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function nN(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 oN(){let t={...this.opts};for(let e of JA)delete t[e];return t}var sN={log(){},warn(){},error(){}};function iN(t){if(t===!1)return sN;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 aN=/^[a-z_$][a-z0-9_$:-]*$/i;function cN(t,e){let{RULES:r}=this;if((0,qf.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!aN.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 Hf(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,Mc.getJSONTypes)(e.type),schemaType:(0,Mc.getJSONTypes)(e.schemaType)}};e.before?uN.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 uN(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 lN(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=qS(e)),t.validateSchema=this.compile(e,!0))}var dN={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function qS(t){return{anyOf:[t,dN]}}});var VS=C(Bf=>{"use strict";Object.defineProperty(Bf,"__esModule",{value:!0});var pN={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Bf.default=pN});var JS=C(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.callRef=Kn.getValidate=void 0;var mN=mi(),WS=Lt(),xt=Q(),qo=Ir(),GS=Ac(),Lc=ue(),fN={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=GS.resolveRef.call(c,u,o,r);if(l===void 0)throw new mN.default(n.opts.uriResolver,o,r);if(l instanceof GS.SchemaEnv)return p(l);return f(l);function d(){if(s===u)return Fc(t,i,s,s.$async);let m=e.scopeValue("root",{ref:u});return Fc(t,(0,xt._)`${m}.validate`,u,u.$async)}function p(m){let h=KS(t,m);Fc(t,h,m,m.$async)}function f(m){let h=e.scopeValue("schema",a.code.source===!0?{ref:m,code:(0,xt.stringify)(m)}:{ref:m}),g=e.name("valid"),y=t.subschema({schema:m,dataTypes:[],schemaPath:xt.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(y),t.ok(g)}}};function KS(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,xt._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Kn.getValidate=KS;function Fc(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?qo.default.this:xt.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let m=o.let("valid");o.try(()=>{o.code((0,xt._)`await ${(0,WS.callValidateCode)(t,e,u)}`),f(e),i||o.assign(m,!0)},h=>{o.if((0,xt._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),p(h),i||o.assign(m,!1)}),t.ok(m)}function d(){t.result((0,WS.callValidateCode)(t,e,u),()=>f(e),()=>p(e))}function p(m){let h=(0,xt._)`${m}.errors`;o.assign(qo.default.vErrors,(0,xt._)`${qo.default.vErrors} === null ? ${h} : ${qo.default.vErrors}.concat(${h})`),o.assign(qo.default.errors,(0,xt._)`${qo.default.vErrors}.length`)}function f(m){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=Lc.mergeEvaluated.props(o,g.props,s.props));else{let y=o.var("props",(0,xt._)`${m}.evaluated.props`);s.props=Lc.mergeEvaluated.props(o,y,s.props,xt.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Lc.mergeEvaluated.items(o,g.items,s.items));else{let y=o.var("items",(0,xt._)`${m}.evaluated.items`);s.items=Lc.mergeEvaluated.items(o,y,s.items,xt.Name)}}}Kn.callRef=Fc;Kn.default=fN});var YS=C(Vf=>{"use strict";Object.defineProperty(Vf,"__esModule",{value:!0});var hN=VS(),gN=JS(),_N=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",hN.default,gN.default];Vf.default=_N});var XS=C(Wf=>{"use strict";Object.defineProperty(Wf,"__esModule",{value:!0});var Uc=Q(),cn=Uc.operators,Zc={maximum:{okStr:"<=",ok:cn.LTE,fail:cn.GT},minimum:{okStr:">=",ok:cn.GTE,fail:cn.LT},exclusiveMaximum:{okStr:"<",ok:cn.LT,fail:cn.GTE},exclusiveMinimum:{okStr:">",ok:cn.GT,fail:cn.LTE}},yN={message:({keyword:t,schemaCode:e})=>(0,Uc.str)`must be ${Zc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Uc._)`{comparison: ${Zc[t].okStr}, limit: ${e}}`},xN={keyword:Object.keys(Zc),type:"number",schemaType:"number",$data:!0,error:yN,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Uc._)`${r} ${Zc[e].fail} ${n} || isNaN(${r})`)}};Wf.default=xN});var QS=C(Gf=>{"use strict";Object.defineProperty(Gf,"__esModule",{value:!0});var yi=Q(),vN={message:({schemaCode:t})=>(0,yi.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,yi._)`{multipleOf: ${t}}`},bN={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:vN,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,yi._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,yi._)`${i} !== parseInt(${i})`;t.fail$data((0,yi._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Gf.default=bN});var t0=C(Kf=>{"use strict";Object.defineProperty(Kf,"__esModule",{value:!0});function e0(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}Kf.default=e0;e0.code='require("ajv/dist/runtime/ucs2length").default'});var r0=C(Jf=>{"use strict";Object.defineProperty(Jf,"__esModule",{value:!0});var Jn=Q(),SN=ue(),kN=t0(),wN={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Jn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Jn._)`{limit: ${t}}`},$N={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:wN,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?Jn.operators.GT:Jn.operators.LT,i=o.opts.unicode===!1?(0,Jn._)`${r}.length`:(0,Jn._)`${(0,SN.useFunc)(t.gen,kN.default)}(${r})`;t.fail$data((0,Jn._)`${i} ${s} ${n}`)}};Jf.default=$N});var n0=C(Yf=>{"use strict";Object.defineProperty(Yf,"__esModule",{value:!0});var EN=Lt(),TN=ue(),Bo=Q(),PN={message:({schemaCode:t})=>(0,Bo.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Bo._)`{pattern: ${t}}`},RN={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:PN,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,Bo._)`new RegExp`:(0,TN.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Bo._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Bo._)`!${l}`)}else{let c=(0,EN.usePattern)(t,o);t.fail$data((0,Bo._)`!${c}.test(${r})`)}}};Yf.default=RN});var o0=C(Xf=>{"use strict";Object.defineProperty(Xf,"__esModule",{value:!0});var xi=Q(),CN={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,xi.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,xi._)`{limit: ${t}}`},ON={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:CN,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?xi.operators.GT:xi.operators.LT;t.fail$data((0,xi._)`Object.keys(${r}).length ${o} ${n}`)}};Xf.default=ON});var s0=C(Qf=>{"use strict";Object.defineProperty(Qf,"__esModule",{value:!0});var vi=Lt(),bi=Q(),IN=ue(),AN={message:({params:{missingProperty:t}})=>(0,bi.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,bi._)`{missingProperty: ${t}}`},NN={keyword:"required",type:"object",schemaType:"array",$data:!0,error:AN,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:m}=t.it;for(let h of r)if(f?.[h]===void 0&&!m.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,y=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,IN.checkStrictMode)(i,y,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(bi.nil,d);else for(let f of r)(0,vi.checkReportMissingProp)(t,f)}function l(){let f=e.let("missing");if(c||s){let m=e.let("valid",!0);t.block$data(m,()=>p(f,m)),t.ok(m)}else e.if((0,vi.checkMissingProp)(t,r,f)),(0,vi.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,vi.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function p(f,m){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(m,(0,vi.propertyInData)(e,o,f,a.ownProperties)),e.if((0,bi.not)(m),()=>{t.error(),e.break()})},bi.nil)}}};Qf.default=NN});var i0=C(eh=>{"use strict";Object.defineProperty(eh,"__esModule",{value:!0});var Si=Q(),zN={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Si.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Si._)`{limit: ${t}}`},jN={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:zN,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?Si.operators.GT:Si.operators.LT;t.fail$data((0,Si._)`${r}.length ${o} ${n}`)}};eh.default=jN});var Hc=C(th=>{"use strict";Object.defineProperty(th,"__esModule",{value:!0});var a0=$f();a0.code='require("ajv/dist/runtime/equal").default';th.default=a0});var c0=C(nh=>{"use strict";Object.defineProperty(nh,"__esModule",{value:!0});var rh=ci(),Xe=Q(),DN=ue(),MN=Hc(),LN={message:({params:{i:t,j:e}})=>(0,Xe.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Xe._)`{i: ${t}, j: ${e}}`},FN={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:LN,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,rh.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Xe._)`${i} === false`),t.ok(c);function l(){let m=e.let("i",(0,Xe._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,Xe._)`${m} > 1`,()=>(d()?p:f)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function p(m,h){let g=e.name("item"),y=(0,rh.checkDataTypes)(u,g,a.opts.strictNumbers,rh.DataType.Wrong),_=e.const("indices",(0,Xe._)`{}`);e.for((0,Xe._)`;${m}--;`,()=>{e.let(g,(0,Xe._)`${r}[${m}]`),e.if(y,(0,Xe._)`continue`),u.length>1&&e.if((0,Xe._)`typeof ${g} == "string"`,(0,Xe._)`${g} += "_"`),e.if((0,Xe._)`typeof ${_}[${g}] == "number"`,()=>{e.assign(h,(0,Xe._)`${_}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Xe._)`${_}[${g}] = ${m}`)})}function f(m,h){let g=(0,DN.useFunc)(e,MN.default),y=e.name("outer");e.label(y).for((0,Xe._)`;${m}--;`,()=>e.for((0,Xe._)`${h} = ${m}; ${h}--;`,()=>e.if((0,Xe._)`${g}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(y)})))}}};nh.default=FN});var u0=C(sh=>{"use strict";Object.defineProperty(sh,"__esModule",{value:!0});var oh=Q(),UN=ue(),ZN=Hc(),HN={message:"must be equal to constant",params:({schemaCode:t})=>(0,oh._)`{allowedValue: ${t}}`},qN={keyword:"const",$data:!0,error:HN,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,oh._)`!${(0,UN.useFunc)(e,ZN.default)}(${r}, ${o})`):t.fail((0,oh._)`${s} !== ${r}`)}};sh.default=qN});var l0=C(ih=>{"use strict";Object.defineProperty(ih,"__esModule",{value:!0});var ki=Q(),BN=ue(),VN=Hc(),WN={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,ki._)`{allowedValues: ${t}}`},GN={keyword:"enum",schemaType:"array",$data:!0,error:WN,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,BN.useFunc)(e,VN.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,ki.or)(...o.map((m,h)=>p(f,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,f=>e.if((0,ki._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function p(f,m){let h=o[m];return typeof h=="object"&&h!==null?(0,ki._)`${u()}(${r}, ${f}[${m}])`:(0,ki._)`${r} === ${h}`}}};ih.default=GN});var d0=C(ah=>{"use strict";Object.defineProperty(ah,"__esModule",{value:!0});var KN=XS(),JN=QS(),YN=r0(),XN=n0(),QN=o0(),ez=s0(),tz=i0(),rz=c0(),nz=u0(),oz=l0(),sz=[KN.default,JN.default,YN.default,XN.default,QN.default,ez.default,tz.default,rz.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},nz.default,oz.default];ah.default=sz});var uh=C(wi=>{"use strict";Object.defineProperty(wi,"__esModule",{value:!0});wi.validateAdditionalItems=void 0;var Yn=Q(),ch=ue(),iz={message:({params:{len:t}})=>(0,Yn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Yn._)`{limit: ${t}}`},az={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:iz,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,ch.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}p0(t,n)}};function p0(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Yn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Yn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,ch.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Yn._)`${a} <= ${e.length}`);r.if((0,Yn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:ch.Type.Num},u),i.allErrors||r.if((0,Yn.not)(u),()=>r.break())})}}wi.validateAdditionalItems=p0;wi.default=az});var lh=C($i=>{"use strict";Object.defineProperty($i,"__esModule",{value:!0});$i.validateTuple=void 0;var m0=Q(),qc=ue(),cz=Lt(),uz={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return f0(t,"additionalItems",e);r.items=!0,!(0,qc.alwaysValidSchema)(r,e)&&t.ok((0,cz.validateArray)(t))}};function f0(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=qc.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,m0._)`${s}.length`);r.forEach((d,p)=>{(0,qc.alwaysValidSchema)(a,d)||(n.if((0,m0._)`${u} > ${p}`,()=>t.subschema({keyword:i,schemaProp:p,dataProp:p},c)),t.ok(c))});function l(d){let{opts:p,errSchemaPath:f}=a,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(p.strictTuples&&!h){let g=`"${i}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,qc.checkStrictMode)(a,g,p.strictTuples)}}}$i.validateTuple=f0;$i.default=uz});var h0=C(dh=>{"use strict";Object.defineProperty(dh,"__esModule",{value:!0});var lz=lh(),dz={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,lz.validateTuple)(t,"items")};dh.default=dz});var _0=C(ph=>{"use strict";Object.defineProperty(ph,"__esModule",{value:!0});var g0=Q(),pz=ue(),mz=Lt(),fz=uh(),hz={message:({params:{len:t}})=>(0,g0.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,g0._)`{limit: ${t}}`},gz={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:hz,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,pz.alwaysValidSchema)(n,e)&&(o?(0,fz.validateAdditionalItems)(t,o):t.ok((0,mz.validateArray)(t)))}};ph.default=gz});var y0=C(mh=>{"use strict";Object.defineProperty(mh,"__esModule",{value:!0});var Ut=Q(),Bc=ue(),_z={message:({params:{min:t,max:e}})=>e===void 0?(0,Ut.str)`must contain at least ${t} valid item(s)`:(0,Ut.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Ut._)`{minContains: ${t}}`:(0,Ut._)`{minContains: ${t}, maxContains: ${e}}`},yz={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:_z,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,Ut._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Bc.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Bc.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Bc.alwaysValidSchema)(s,r)){let h=(0,Ut._)`${l} >= ${i}`;a!==void 0&&(h=(0,Ut._)`${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,Ut._)`${o}.length > 0`,p)):(e.let(d,!1),p()),t.result(d,()=>t.reset());function p(){let h=e.name("_valid"),g=e.let("count",0);f(h,()=>e.if(h,()=>m(g)))}function f(h,g){e.forRange("i",0,l,y=>{t.subschema({keyword:"contains",dataProp:y,dataPropType:Bc.Type.Num,compositeRule:!0},h),g()})}function m(h){e.code((0,Ut._)`${h}++`),a===void 0?e.if((0,Ut._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,Ut._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,Ut._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};mh.default=yz});var b0=C(fr=>{"use strict";Object.defineProperty(fr,"__esModule",{value:!0});fr.validateSchemaDeps=fr.validatePropertyDeps=fr.error=void 0;var fh=Q(),xz=ue(),Ei=Lt();fr.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,fh.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,fh._)`{property: ${t},
54
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,Y._)`[${o}]`)}}}function QI({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Y._)`${e} !== undefined`,()=>t.assign((0,Y._)`${e}[${r}]`,n))}function xf(t,e,r,n=Lo.Correct){let o=n===Lo.Correct?Y.operators.EQ:Y.operators.NEQ,s;switch(t){case"null":return(0,Y._)`${e} ${o} null`;case"array":s=(0,Y._)`Array.isArray(${e})`;break;case"object":s=(0,Y._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,Y._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,Y._)`typeof ${e} ${o} ${t}`}return n===Lo.Correct?s:(0,Y.not)(s);function i(a=Y.nil){return(0,Y.and)((0,Y._)`typeof ${e} == "number"`,a,r?(0,Y._)`isFinite(${e})`:Y.nil)}}nt.checkDataType=xf;function vf(t,e,r,n){if(t.length===1)return xf(t[0],e,r,n);let o,s=(0,qb.toHash)(t);if(s.array&&s.object){let i=(0,Y._)`typeof ${e} != "object"`;o=s.null?i:(0,Y._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=Y.nil;s.number&&delete s.integer;for(let i in s)o=(0,Y.and)(o,xf(i,e,r,n));return o}nt.checkDataTypes=vf;var e1={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Y._)`{type: ${t}}`:(0,Y._)`{type: ${e}}`};function bf(t){let e=t1(t);(0,GI.reportError)(e,e1)}nt.reportTypeError=bf;function t1(t){let{gen:e,data:r,schema:n}=t,o=(0,qb.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Gb=C(Ec=>{"use strict";Object.defineProperty(Ec,"__esModule",{value:!0});Ec.assignDefaults=void 0;var Fo=Q(),r1=ue();function n1(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Wb(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Wb(t,s,o.default))}Ec.assignDefaults=n1;function Wb(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Fo._)`${s}${(0,Fo.getProperty)(e)}`;if(o){(0,r1.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Fo._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Fo._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Fo._)`${a} = ${(0,Fo.stringify)(r)}`)}});var Ft=C(_e=>{"use strict";Object.defineProperty(_e,"__esModule",{value:!0});_e.validateUnion=_e.validateArray=_e.usePattern=_e.callValidateCode=_e.schemaProperties=_e.allSchemaProperties=_e.noPropertyInData=_e.propertyInData=_e.isOwnProperty=_e.hasPropFunc=_e.reportMissingProp=_e.checkMissingProp=_e.checkReportMissingProp=void 0;var Ee=Q(),Sf=ue(),nn=Ir(),o1=ue();function s1(t,e){let{gen:r,data:n,it:o}=t;r.if(wf(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Ee._)`${e}`},!0),t.error()})}_e.checkReportMissingProp=s1;function i1({gen:t,data:e,it:{opts:r}},n,o){return(0,Ee.or)(...n.map(s=>(0,Ee.and)(wf(t,e,s,r.ownProperties),(0,Ee._)`${o} = ${s}`)))}_e.checkMissingProp=i1;function a1(t,e){t.setParams({missingProperty:e},!0),t.error()}_e.reportMissingProp=a1;function Kb(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Ee._)`Object.prototype.hasOwnProperty`})}_e.hasPropFunc=Kb;function kf(t,e,r){return(0,Ee._)`${Kb(t)}.call(${e}, ${r})`}_e.isOwnProperty=kf;function c1(t,e,r,n){let o=(0,Ee._)`${e}${(0,Ee.getProperty)(r)} !== undefined`;return n?(0,Ee._)`${o} && ${kf(t,e,r)}`:o}_e.propertyInData=c1;function wf(t,e,r,n){let o=(0,Ee._)`${e}${(0,Ee.getProperty)(r)} === undefined`;return n?(0,Ee.or)(o,(0,Ee.not)(kf(t,e,r))):o}_e.noPropertyInData=wf;function Jb(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}_e.allSchemaProperties=Jb;function u1(t,e){return Jb(e).filter(r=>!(0,Sf.alwaysValidSchema)(t,e[r]))}_e.schemaProperties=u1;function l1({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,Ee._)`${t}, ${e}, ${n}${o}`:e,d=[[nn.default.instancePath,(0,Ee.strConcat)(nn.default.instancePath,s)],[nn.default.parentData,i.parentData],[nn.default.parentDataProperty,i.parentDataProperty],[nn.default.rootData,nn.default.rootData]];i.opts.dynamicRef&&d.push([nn.default.dynamicAnchors,nn.default.dynamicAnchors]);let p=(0,Ee._)`${l}, ${r.object(...d)}`;return c!==Ee.nil?(0,Ee._)`${a}.call(${c}, ${p})`:(0,Ee._)`${a}(${p})`}_e.callValidateCode=l1;var d1=(0,Ee._)`new RegExp`;function p1({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,Ee._)`${o.code==="new RegExp"?d1:(0,o1.useFunc)(t,o)}(${r}, ${n})`})}_e.usePattern=p1;function m1(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,Ee._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Sf.Type.Num},s),e.if((0,Ee.not)(s),a)})}}_e.validateArray=m1;function f1(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,Sf.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,Ee._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,Ee.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}_e.validateUnion=f1});var Qb=C(dr=>{"use strict";Object.defineProperty(dr,"__esModule",{value:!0});dr.validateKeywordUsage=dr.validSchemaType=dr.funcKeywordCode=dr.macroKeywordCode=void 0;var lt=Q(),Wn=Ir(),h1=Ft(),g1=ai();function _1(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Xb(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:lt.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}dr.macroKeywordCode=_1;function y1(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;v1(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Xb(n,o,u),d=n.let("valid");t.block$data(d,p),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function p(){if(e.errors===!1)h(),e.modifying&&Yb(t),g(()=>t.error());else{let y=e.async?f():m();e.modifying&&Yb(t),g(()=>x1(t,y))}}function f(){let y=n.let("ruleErrs",null);return n.try(()=>h((0,lt._)`await `),_=>n.assign(d,!1).if((0,lt._)`${_} instanceof ${c.ValidationError}`,()=>n.assign(y,(0,lt._)`${_}.errors`),()=>n.throw(_))),y}function m(){let y=(0,lt._)`${l}.errors`;return n.assign(y,null),h(lt.nil),y}function h(y=e.async?(0,lt._)`await `:lt.nil){let _=c.opts.passContext?Wn.default.this:Wn.default.self,x=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,lt._)`${y}${(0,h1.callValidateCode)(t,l,_,x)}`,e.modifying)}function g(y){var _;n.if((0,lt.not)((_=e.valid)!==null&&_!==void 0?_:d),y)}}dr.funcKeywordCode=y1;function Yb(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,lt._)`${n.parentData}[${n.parentDataProperty}]`))}function x1(t,e){let{gen:r}=t;r.if((0,lt._)`Array.isArray(${e})`,()=>{r.assign(Wn.default.vErrors,(0,lt._)`${Wn.default.vErrors} === null ? ${e} : ${Wn.default.vErrors}.concat(${e})`).assign(Wn.default.errors,(0,lt._)`${Wn.default.vErrors}.length`),(0,g1.extendErrors)(t)},()=>t.error())}function v1({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Xb(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,lt.stringify)(r)})}function b1(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")}dr.validSchemaType=b1;function S1({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)}}dr.validateKeywordUsage=S1});var tS=C(on=>{"use strict";Object.defineProperty(on,"__esModule",{value:!0});on.extendSubschemaMode=on.extendSubschemaData=on.getSubschema=void 0;var pr=Q(),eS=ue();function k1(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,pr._)`${t.schemaPath}${(0,pr.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,pr._)`${t.schemaPath}${(0,pr.getProperty)(e)}${(0,pr.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,eS.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')}on.getSubschema=k1;function w1(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,p=a.let("data",(0,pr._)`${e.data}${(0,pr.getProperty)(r)}`,!0);c(p),t.errorPath=(0,pr.str)`${u}${(0,eS.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,pr._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof pr.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]}}on.extendSubschemaData=w1;function $1(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}on.extendSubschemaMode=$1});var $f=C((pB,rS)=>{"use strict";rS.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 oS=C((mB,nS)=>{"use strict";var sn=nS.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(){};Tc(e,n,o,t,"",t)};sn.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};sn.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};sn.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};sn.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 Tc(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 sn.arrayKeywords)for(var p=0;p<d.length;p++)Tc(t,e,r,d[p],o+"/"+l+"/"+p,s,o,l,n,p)}else if(l in sn.propsKeywords){if(d&&typeof d=="object")for(var f in d)Tc(t,e,r,d[f],o+"/"+l+"/"+E1(f),s,o,l,n,f)}else(l in sn.keywords||t.allKeys&&!(l in sn.skipKeywords))&&Tc(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function E1(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var ui=C(yt=>{"use strict";Object.defineProperty(yt,"__esModule",{value:!0});yt.getSchemaRefs=yt.resolveUrl=yt.normalizeId=yt._getFullPath=yt.getFullPath=yt.inlineRef=void 0;var T1=ue(),P1=$f(),R1=oS(),C1=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function O1(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Ef(t):e?sS(t)<=e:!1}yt.inlineRef=O1;var I1=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Ef(t){for(let e in t){if(I1.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Ef)||typeof r=="object"&&Ef(r))return!0}return!1}function sS(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!C1.has(r)&&(typeof t[r]=="object"&&(0,T1.eachItem)(t[r],n=>e+=sS(n)),e===1/0))return 1/0}return e}function iS(t,e="",r){r!==!1&&(e=Uo(e));let n=t.parse(e);return aS(t,n)}yt.getFullPath=iS;function aS(t,e){return t.serialize(e).split("#")[0]+"#"}yt._getFullPath=aS;var A1=/#\/?$/;function Uo(t){return t?t.replace(A1,""):""}yt.normalizeId=Uo;function N1(t,e,r){return r=Uo(r),t.resolve(e,r)}yt.resolveUrl=N1;var z1=/^[a-z_][-a-z0-9._]*$/i;function j1(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Uo(t[r]||e),s={"":o},i=iS(n,o,!1),a={},c=new Set;return R1(t,{allKeys:!0},(d,p,f,m)=>{if(m===void 0)return;let h=i+p,g=s[m];typeof d[r]=="string"&&(g=y.call(this,d[r])),_.call(this,d.$anchor),_.call(this,d.$dynamicAnchor),s[p]=g;function y(x){let k=this.opts.uriResolver.resolve;if(x=Uo(g?k(g,x):x),c.has(x))throw l(x);c.add(x);let E=this.refs[x];return typeof E=="string"&&(E=this.refs[E]),typeof E=="object"?u(d,E.schema,x):x!==Uo(h)&&(x[0]==="#"?(u(d,a[x],x),a[x]=d):this.refs[x]=h),x}function _(x){if(typeof x=="string"){if(!z1.test(x))throw new Error(`invalid anchor "${x}"`);y.call(this,`#${x}`)}}}),a;function u(d,p,f){if(p!==void 0&&!P1(d,p))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}yt.getSchemaRefs=j1});var pi=C(an=>{"use strict";Object.defineProperty(an,"__esModule",{value:!0});an.getData=an.KeywordCxt=an.validateFunctionCode=void 0;var pS=Ub(),cS=ci(),Pf=yf(),Pc=ci(),D1=Gb(),di=Qb(),Tf=tS(),F=Q(),G=Ir(),M1=ui(),Ar=ue(),li=ai();function L1(t){if(hS(t)&&(gS(t),fS(t))){Z1(t);return}mS(t,()=>(0,pS.topBoolOrEmptySchema)(t))}an.validateFunctionCode=L1;function mS({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,F._)`${G.default.data}, ${G.default.valCxt}`,n.$async,()=>{t.code((0,F._)`"use strict"; ${uS(r,o)}`),U1(t,o),t.code(s)}):t.func(e,(0,F._)`${G.default.data}, ${F1(o)}`,n.$async,()=>t.code(uS(r,o)).code(s))}function F1(t){return(0,F._)`{${G.default.instancePath}="", ${G.default.parentData}, ${G.default.parentDataProperty}, ${G.default.rootData}=${G.default.data}${t.dynamicRef?(0,F._)`, ${G.default.dynamicAnchors}={}`:F.nil}}={}`}function U1(t,e){t.if(G.default.valCxt,()=>{t.var(G.default.instancePath,(0,F._)`${G.default.valCxt}.${G.default.instancePath}`),t.var(G.default.parentData,(0,F._)`${G.default.valCxt}.${G.default.parentData}`),t.var(G.default.parentDataProperty,(0,F._)`${G.default.valCxt}.${G.default.parentDataProperty}`),t.var(G.default.rootData,(0,F._)`${G.default.valCxt}.${G.default.rootData}`),e.dynamicRef&&t.var(G.default.dynamicAnchors,(0,F._)`${G.default.valCxt}.${G.default.dynamicAnchors}`)},()=>{t.var(G.default.instancePath,(0,F._)`""`),t.var(G.default.parentData,(0,F._)`undefined`),t.var(G.default.parentDataProperty,(0,F._)`undefined`),t.var(G.default.rootData,G.default.data),e.dynamicRef&&t.var(G.default.dynamicAnchors,(0,F._)`{}`)})}function Z1(t){let{schema:e,opts:r,gen:n}=t;mS(t,()=>{r.$comment&&e.$comment&&yS(t),W1(t),n.let(G.default.vErrors,null),n.let(G.default.errors,0),r.unevaluated&&H1(t),_S(t),J1(t)})}function H1(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,F._)`${r}.evaluated`),e.if((0,F._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,F._)`${t.evaluated}.props`,(0,F._)`undefined`)),e.if((0,F._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,F._)`${t.evaluated}.items`,(0,F._)`undefined`))}function uS(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,F._)`/*# sourceURL=${r} */`:F.nil}function q1(t,e){if(hS(t)&&(gS(t),fS(t))){B1(t,e);return}(0,pS.boolOrEmptySchema)(t,e)}function fS({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 hS(t){return typeof t.schema!="boolean"}function B1(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&yS(t),G1(t),K1(t);let s=n.const("_errs",G.default.errors);_S(t,s),n.var(e,(0,F._)`${s} === ${G.default.errors}`)}function gS(t){(0,Ar.checkUnknownRules)(t),V1(t)}function _S(t,e){if(t.opts.jtd)return lS(t,[],!1,e);let r=(0,cS.getSchemaTypes)(t.schema),n=(0,cS.coerceAndCheckDataType)(t,r);lS(t,r,!n,e)}function V1(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Ar.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function W1(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ar.checkStrictMode)(t,"default is ignored in the schema root")}function G1(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,M1.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function K1(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function yS({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,F._)`${G.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,F.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,F._)`${G.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function J1(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,F._)`${G.default.errors} === 0`,()=>e.return(G.default.data),()=>e.throw((0,F._)`new ${o}(${G.default.vErrors})`)):(e.assign((0,F._)`${n}.errors`,G.default.vErrors),s.unevaluated&&Y1(t),e.return((0,F._)`${G.default.errors} === 0`))}function Y1({gen:t,evaluated:e,props:r,items:n}){r instanceof F.Name&&t.assign((0,F._)`${e}.props`,r),n instanceof F.Name&&t.assign((0,F._)`${e}.items`,n)}function lS(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,Ar.schemaHasRulesButRef)(s,l))){o.block(()=>vS(t,"$ref",l.all.$ref.definition));return}c.jtd||X1(t,e),o.block(()=>{for(let p of l.rules)d(p);d(l.post)});function d(p){(0,Pf.shouldUseGroup)(s,p)&&(p.type?(o.if((0,Pc.checkDataType)(p.type,i,c.strictNumbers)),dS(t,p),e.length===1&&e[0]===p.type&&r&&(o.else(),(0,Pc.reportTypeError)(t)),o.endIf()):dS(t,p),a||o.if((0,F._)`${G.default.errors} === ${n||0}`))}}function dS(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,D1.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Pf.shouldUseRule)(n,s)&&vS(t,s.keyword,s.definition,e.type)})}function X1(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(Q1(t,e),t.opts.allowUnionTypes||eA(t,e),tA(t,t.dataTypes))}function Q1(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{xS(t.dataTypes,r)||Rf(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),nA(t,e)}}function eA(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Rf(t,"use allowUnionTypes to allow union type keyword")}function tA(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Pf.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>rA(e,i))&&Rf(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function rA(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function xS(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function nA(t,e){let r=[];for(let n of t.dataTypes)xS(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Rf(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Ar.checkStrictMode)(t,e,t.opts.strictTypes)}var Rc=class{constructor(e,r,n){if((0,di.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,Ar.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",bS(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,di.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",G.default.errors))}result(e,r,n){this.failResult((0,F.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,F.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,F._)`${r} !== undefined && (${(0,F.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?li.reportExtraError:li.reportError)(this,this.def.error,r)}$dataError(){(0,li.reportError)(this,this.def.$dataError||li.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,li.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=F.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=F.nil,r=F.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,F.or)((0,F._)`${o} === undefined`,r)),e!==F.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==F.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,F.or)(i(),a());function i(){if(n.length){if(!(r instanceof F.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,F._)`${(0,Pc.checkDataTypes)(c,r,s.opts.strictNumbers,Pc.DataType.Wrong)}`}return F.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,F._)`!${c}(${r})`}return F.nil}}subschema(e,r){let n=(0,Tf.getSubschema)(this.it,e);(0,Tf.extendSubschemaData)(n,this.it,e),(0,Tf.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return q1(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Ar.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Ar.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,F.Name)),!0}};an.KeywordCxt=Rc;function vS(t,e,r,n){let o=new Rc(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,di.funcKeywordCode)(o,r):"macro"in r?(0,di.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,di.funcKeywordCode)(o,r)}var oA=/^\/(?:[^~]|~0|~1)*$/,sA=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function bS(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return G.default.rootData;if(t[0]==="/"){if(!oA.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=G.default.rootData}else{let u=sA.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,F._)`${s}${(0,F.getProperty)((0,Ar.unescapeJsonPointer)(u))}`,i=(0,F._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}an.getData=bS});var Cc=C(Of=>{"use strict";Object.defineProperty(Of,"__esModule",{value:!0});var Cf=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Of.default=Cf});var mi=C(Nf=>{"use strict";Object.defineProperty(Nf,"__esModule",{value:!0});var If=ui(),Af=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,If.resolveUrl)(e,r,n),this.missingSchema=(0,If.normalizeId)((0,If.getFullPath)(e,this.missingRef))}};Nf.default=Af});var Ic=C(Ut=>{"use strict";Object.defineProperty(Ut,"__esModule",{value:!0});Ut.resolveSchema=Ut.getCompilingSchema=Ut.resolveRef=Ut.compileSchema=Ut.SchemaEnv=void 0;var Qt=Q(),iA=Cc(),Gn=Ir(),er=ui(),SS=ue(),aA=pi(),Zo=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,er.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Ut.SchemaEnv=Zo;function jf(t){let e=kS.call(this,t);if(e)return e;let r=(0,er.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Qt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:iA.default,code:(0,Qt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Gn.default.data,parentData:Gn.default.parentData,parentDataProperty:Gn.default.parentDataProperty,dataNames:[Gn.default.data],dataPathArr:[Qt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Qt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Qt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Qt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,aA.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Gn.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let f=new Function(`${Gn.default.self}`,`${Gn.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:m,items:h}=u;f.evaluated={props:m instanceof Qt.Name?void 0:m,items:h instanceof Qt.Name?void 0:h,dynamicProps:m instanceof Qt.Name,dynamicItems:h instanceof Qt.Name},f.source&&(f.source.evaluated=(0,Qt.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)}}Ut.compileSchema=jf;function cA(t,e,r){var n;r=(0,er.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=dA.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 Zo({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=uA.call(this,s)}Ut.resolveRef=cA;function uA(t){return(0,er.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:jf.call(this,t)}function kS(t){for(let e of this._compilations)if(lA(e,t))return e}Ut.getCompilingSchema=kS;function lA(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function dA(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Oc.call(this,t,e)}function Oc(t,e){let r=this.opts.uriResolver.parse(e),n=(0,er._getFullPath)(this.opts.uriResolver,r),o=(0,er.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return zf.call(this,r,t);let s=(0,er.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Oc.call(this,t,i);return typeof a?.schema!="object"?void 0:zf.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||jf.call(this,i),s===(0,er.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,er.resolveUrl)(this.opts.uriResolver,o,u)),new Zo({schema:a,schemaId:c,root:t,baseId:o})}return zf.call(this,r,i)}}Ut.resolveSchema=Oc;var pA=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function zf(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,SS.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!pA.has(a)&&u&&(e=(0,er.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,SS.schemaHasRulesButRef)(r,this.RULES)){let a=(0,er.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Oc.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Zo({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var wS=C((xB,mA)=>{mA.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 Mf=C((vB,PS)=>{"use strict";var fA=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),ES=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 Df(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 hA=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function $S(t){return t.length=0,!0}function gA(t,e,r){if(t.length){let n=Df(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function _A(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=gA;for(let c=0;c<t.length;c++){let u=t[c];if(!(u==="["||u==="]"))if(u===":"){if(s===!0&&(i=!0),!a(o,n,r))break;if(++e>7){r.error=!0;break}c>0&&t[c-1]===":"&&(s=!0),n.push(":");continue}else if(u==="%"){if(!a(o,n,r))break;a=$S}else{o.push(u);continue}}return o.length&&(a===$S?r.zone=o.join(""):i?n.push(o.join("")):n.push(Df(o))),r.address=n.join(""),r}function TS(t){if(yA(t,":")<2)return{host:t,isIPV6:!1};let e=_A(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function yA(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function xA(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 vA(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 bA(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!ES(r)){let n=TS(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}PS.exports={nonSimpleDomain:hA,recomposeAuthority:bA,normalizeComponentEncoding:vA,removeDotSegments:xA,isIPv4:ES,isUUID:fA,normalizeIPv6:TS,stringArrayToHexStripped:Df}});var AS=C((bB,IS)=>{"use strict";var{isUUID:SA}=Mf(),kA=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,wA=["http","https","ws","wss","urn","urn:uuid"];function $A(t){return wA.indexOf(t)!==-1}function Lf(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 RS(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function CS(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 EA(t){return t.secure=Lf(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function TA(t){if((t.port===(Lf(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 PA(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(kA);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=Ff(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function RA(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=Ff(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 CA(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!SA(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function OA(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var OS={scheme:"http",domainHost:!0,parse:RS,serialize:CS},IA={scheme:"https",domainHost:OS.domainHost,parse:RS,serialize:CS},Ac={scheme:"ws",domainHost:!0,parse:EA,serialize:TA},AA={scheme:"wss",domainHost:Ac.domainHost,parse:Ac.parse,serialize:Ac.serialize},NA={scheme:"urn",parse:PA,serialize:RA,skipNormalize:!0},zA={scheme:"urn:uuid",parse:CA,serialize:OA,skipNormalize:!0},Nc={http:OS,https:IA,ws:Ac,wss:AA,urn:NA,"urn:uuid":zA};Object.setPrototypeOf(Nc,null);function Ff(t){return t&&(Nc[t]||Nc[t.toLowerCase()])||void 0}IS.exports={wsIsSecure:Lf,SCHEMES:Nc,isValidSchemeName:$A,getSchemeHandler:Ff}});var jS=C((SB,jc)=>{"use strict";var{normalizeIPv6:jA,removeDotSegments:fi,recomposeAuthority:DA,normalizeComponentEncoding:zc,isIPv4:MA,nonSimpleDomain:LA}=Mf(),{SCHEMES:FA,getSchemeHandler:NS}=AS();function UA(t,e){return typeof t=="string"?t=mr(Nr(t,e),e):typeof t=="object"&&(t=Nr(mr(t,e),e)),t}function ZA(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=zS(Nr(t,n),Nr(e,n),n,!0);return n.skipEscape=!0,mr(o,n)}function zS(t,e,r,n){let o={};return n||(t=Nr(mr(t,r),r),e=Nr(mr(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=fi(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=fi(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=fi(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=fi(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 HA(t,e,r){return typeof t=="string"?(t=unescape(t),t=mr(zc(Nr(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=mr(zc(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=mr(zc(Nr(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=mr(zc(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function mr(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=NS(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=DA(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=fi(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 qA=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Nr(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match(qA);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(MA(n.host)===!1){let c=jA(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=NS(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&LA(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 Uf={SCHEMES:FA,normalize:UA,resolve:ZA,resolveComponent:zS,equal:HA,serialize:mr,parse:Nr};jc.exports=Uf;jc.exports.default=Uf;jc.exports.fastUri=Uf});var MS=C(Zf=>{"use strict";Object.defineProperty(Zf,"__esModule",{value:!0});var DS=jS();DS.code='require("ajv/dist/runtime/uri").default';Zf.default=DS});var VS=C(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.CodeGen=Ye.Name=Ye.nil=Ye.stringify=Ye.str=Ye._=Ye.KeywordCxt=void 0;var BA=pi();Object.defineProperty(Ye,"KeywordCxt",{enumerable:!0,get:function(){return BA.KeywordCxt}});var Ho=Q();Object.defineProperty(Ye,"_",{enumerable:!0,get:function(){return Ho._}});Object.defineProperty(Ye,"str",{enumerable:!0,get:function(){return Ho.str}});Object.defineProperty(Ye,"stringify",{enumerable:!0,get:function(){return Ho.stringify}});Object.defineProperty(Ye,"nil",{enumerable:!0,get:function(){return Ho.nil}});Object.defineProperty(Ye,"Name",{enumerable:!0,get:function(){return Ho.Name}});Object.defineProperty(Ye,"CodeGen",{enumerable:!0,get:function(){return Ho.CodeGen}});var VA=Cc(),HS=mi(),WA=_f(),hi=Ic(),GA=Q(),gi=ui(),Dc=ci(),qf=ue(),LS=wS(),KA=MS(),qS=(t,e)=>new RegExp(t,e);qS.code="new RegExp";var JA=["removeAdditional","useDefaults","coerceTypes"],YA=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),XA={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."},QA={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},FS=200;function eN(t){var e,r,n,o,s,i,a,c,u,l,d,p,f,m,h,g,y,_,x,k,E,H,z,K,Le;let P=t.strict,N=(e=t.code)===null||e===void 0?void 0:e.optimize,ce=N===!0||N===void 0?1:N||0,De=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:qS,Pe=(o=t.uriResolver)!==null&&o!==void 0?o:KA.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:P)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(p=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&p!==void 0?p:"log",strictRequired:(m=(f=t.strictRequired)!==null&&f!==void 0?f:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:ce,regExp:De}:{optimize:ce,regExp:De},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:FS,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:FS,meta:(y=t.meta)!==null&&y!==void 0?y:!0,messages:(_=t.messages)!==null&&_!==void 0?_:!0,inlineRefs:(x=t.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(k=t.schemaId)!==null&&k!==void 0?k:"$id",addUsedSchema:(E=t.addUsedSchema)!==null&&E!==void 0?E:!0,validateSchema:(H=t.validateSchema)!==null&&H!==void 0?H:!0,validateFormats:(z=t.validateFormats)!==null&&z!==void 0?z:!0,unicodeRegExp:(K=t.unicodeRegExp)!==null&&K!==void 0?K:!0,int32range:(Le=t.int32range)!==null&&Le!==void 0?Le:!0,uriResolver:Pe}}var _i=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...eN(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new GA.ValueScope({scope:{},prefixes:YA,es5:r,lines:n}),this.logger=iN(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,WA.getRules)(),US.call(this,XA,e,"NOT SUPPORTED"),US.call(this,QA,e,"DEPRECATED","warn"),this._metaOpts=oN.call(this),e.formats&&rN.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&nN.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),tN.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=LS;n==="id"&&(o={...LS},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 p=this._addSchema(l,d);return p.validate||i.call(this,p)}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 HS.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,gi.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=ZS.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new hi.SchemaEnv({schema:{},schemaId:n});if(r=hi.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=ZS.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,gi.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(cN.call(this,n,r),!r)return(0,qf.eachItem)(n,s=>Hf.call(this,s)),this;lN.call(this,r);let o={...r,type:(0,Dc.getJSONTypes)(r.type),schemaType:(0,Dc.getJSONTypes)(r.schemaType)};return(0,qf.eachItem)(n,o.type.length===0?s=>Hf.call(this,s,o):s=>o.type.forEach(i=>Hf.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]=BS(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,gi.normalizeId)(i||n);let u=gi.getSchemaRefs.call(this,e,n);return c=new hi.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):hi.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{hi.compileSchema.call(this,e)}finally{this.opts=r}}};_i.ValidationError=VA.default;_i.MissingRefError=HS.default;Ye.default=_i;function US(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 ZS(t){return t=(0,gi.normalizeId)(t),this.schemas[t]||this.refs[t]}function tN(){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 rN(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function nN(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 oN(){let t={...this.opts};for(let e of JA)delete t[e];return t}var sN={log(){},warn(){},error(){}};function iN(t){if(t===!1)return sN;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 aN=/^[a-z_$][a-z0-9_$:-]*$/i;function cN(t,e){let{RULES:r}=this;if((0,qf.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!aN.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 Hf(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,Dc.getJSONTypes)(e.type),schemaType:(0,Dc.getJSONTypes)(e.schemaType)}};e.before?uN.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 uN(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 lN(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=BS(e)),t.validateSchema=this.compile(e,!0))}var dN={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function BS(t){return{anyOf:[t,dN]}}});var WS=C(Bf=>{"use strict";Object.defineProperty(Bf,"__esModule",{value:!0});var pN={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Bf.default=pN});var YS=C(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.callRef=Kn.getValidate=void 0;var mN=mi(),GS=Ft(),xt=Q(),qo=Ir(),KS=Ic(),Mc=ue(),fN={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=KS.resolveRef.call(c,u,o,r);if(l===void 0)throw new mN.default(n.opts.uriResolver,o,r);if(l instanceof KS.SchemaEnv)return p(l);return f(l);function d(){if(s===u)return Lc(t,i,s,s.$async);let m=e.scopeValue("root",{ref:u});return Lc(t,(0,xt._)`${m}.validate`,u,u.$async)}function p(m){let h=JS(t,m);Lc(t,h,m,m.$async)}function f(m){let h=e.scopeValue("schema",a.code.source===!0?{ref:m,code:(0,xt.stringify)(m)}:{ref:m}),g=e.name("valid"),y=t.subschema({schema:m,dataTypes:[],schemaPath:xt.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(y),t.ok(g)}}};function JS(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,xt._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Kn.getValidate=JS;function Lc(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?qo.default.this:xt.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let m=o.let("valid");o.try(()=>{o.code((0,xt._)`await ${(0,GS.callValidateCode)(t,e,u)}`),f(e),i||o.assign(m,!0)},h=>{o.if((0,xt._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),p(h),i||o.assign(m,!1)}),t.ok(m)}function d(){t.result((0,GS.callValidateCode)(t,e,u),()=>f(e),()=>p(e))}function p(m){let h=(0,xt._)`${m}.errors`;o.assign(qo.default.vErrors,(0,xt._)`${qo.default.vErrors} === null ? ${h} : ${qo.default.vErrors}.concat(${h})`),o.assign(qo.default.errors,(0,xt._)`${qo.default.vErrors}.length`)}function f(m){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=Mc.mergeEvaluated.props(o,g.props,s.props));else{let y=o.var("props",(0,xt._)`${m}.evaluated.props`);s.props=Mc.mergeEvaluated.props(o,y,s.props,xt.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Mc.mergeEvaluated.items(o,g.items,s.items));else{let y=o.var("items",(0,xt._)`${m}.evaluated.items`);s.items=Mc.mergeEvaluated.items(o,y,s.items,xt.Name)}}}Kn.callRef=Lc;Kn.default=fN});var XS=C(Vf=>{"use strict";Object.defineProperty(Vf,"__esModule",{value:!0});var hN=WS(),gN=YS(),_N=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",hN.default,gN.default];Vf.default=_N});var QS=C(Wf=>{"use strict";Object.defineProperty(Wf,"__esModule",{value:!0});var Fc=Q(),cn=Fc.operators,Uc={maximum:{okStr:"<=",ok:cn.LTE,fail:cn.GT},minimum:{okStr:">=",ok:cn.GTE,fail:cn.LT},exclusiveMaximum:{okStr:"<",ok:cn.LT,fail:cn.GTE},exclusiveMinimum:{okStr:">",ok:cn.GT,fail:cn.LTE}},yN={message:({keyword:t,schemaCode:e})=>(0,Fc.str)`must be ${Uc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Fc._)`{comparison: ${Uc[t].okStr}, limit: ${e}}`},xN={keyword:Object.keys(Uc),type:"number",schemaType:"number",$data:!0,error:yN,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Fc._)`${r} ${Uc[e].fail} ${n} || isNaN(${r})`)}};Wf.default=xN});var e0=C(Gf=>{"use strict";Object.defineProperty(Gf,"__esModule",{value:!0});var yi=Q(),vN={message:({schemaCode:t})=>(0,yi.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,yi._)`{multipleOf: ${t}}`},bN={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:vN,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,yi._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,yi._)`${i} !== parseInt(${i})`;t.fail$data((0,yi._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Gf.default=bN});var r0=C(Kf=>{"use strict";Object.defineProperty(Kf,"__esModule",{value:!0});function t0(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}Kf.default=t0;t0.code='require("ajv/dist/runtime/ucs2length").default'});var n0=C(Jf=>{"use strict";Object.defineProperty(Jf,"__esModule",{value:!0});var Jn=Q(),SN=ue(),kN=r0(),wN={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Jn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Jn._)`{limit: ${t}}`},$N={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:wN,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?Jn.operators.GT:Jn.operators.LT,i=o.opts.unicode===!1?(0,Jn._)`${r}.length`:(0,Jn._)`${(0,SN.useFunc)(t.gen,kN.default)}(${r})`;t.fail$data((0,Jn._)`${i} ${s} ${n}`)}};Jf.default=$N});var o0=C(Yf=>{"use strict";Object.defineProperty(Yf,"__esModule",{value:!0});var EN=Ft(),TN=ue(),Bo=Q(),PN={message:({schemaCode:t})=>(0,Bo.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Bo._)`{pattern: ${t}}`},RN={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:PN,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,Bo._)`new RegExp`:(0,TN.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Bo._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Bo._)`!${l}`)}else{let c=(0,EN.usePattern)(t,o);t.fail$data((0,Bo._)`!${c}.test(${r})`)}}};Yf.default=RN});var s0=C(Xf=>{"use strict";Object.defineProperty(Xf,"__esModule",{value:!0});var xi=Q(),CN={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,xi.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,xi._)`{limit: ${t}}`},ON={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:CN,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?xi.operators.GT:xi.operators.LT;t.fail$data((0,xi._)`Object.keys(${r}).length ${o} ${n}`)}};Xf.default=ON});var i0=C(Qf=>{"use strict";Object.defineProperty(Qf,"__esModule",{value:!0});var vi=Ft(),bi=Q(),IN=ue(),AN={message:({params:{missingProperty:t}})=>(0,bi.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,bi._)`{missingProperty: ${t}}`},NN={keyword:"required",type:"object",schemaType:"array",$data:!0,error:AN,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:m}=t.it;for(let h of r)if(f?.[h]===void 0&&!m.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,y=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,IN.checkStrictMode)(i,y,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(bi.nil,d);else for(let f of r)(0,vi.checkReportMissingProp)(t,f)}function l(){let f=e.let("missing");if(c||s){let m=e.let("valid",!0);t.block$data(m,()=>p(f,m)),t.ok(m)}else e.if((0,vi.checkMissingProp)(t,r,f)),(0,vi.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,vi.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function p(f,m){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(m,(0,vi.propertyInData)(e,o,f,a.ownProperties)),e.if((0,bi.not)(m),()=>{t.error(),e.break()})},bi.nil)}}};Qf.default=NN});var a0=C(eh=>{"use strict";Object.defineProperty(eh,"__esModule",{value:!0});var Si=Q(),zN={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Si.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Si._)`{limit: ${t}}`},jN={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:zN,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?Si.operators.GT:Si.operators.LT;t.fail$data((0,Si._)`${r}.length ${o} ${n}`)}};eh.default=jN});var Zc=C(th=>{"use strict";Object.defineProperty(th,"__esModule",{value:!0});var c0=$f();c0.code='require("ajv/dist/runtime/equal").default';th.default=c0});var u0=C(nh=>{"use strict";Object.defineProperty(nh,"__esModule",{value:!0});var rh=ci(),Xe=Q(),DN=ue(),MN=Zc(),LN={message:({params:{i:t,j:e}})=>(0,Xe.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Xe._)`{i: ${t}, j: ${e}}`},FN={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:LN,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,rh.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Xe._)`${i} === false`),t.ok(c);function l(){let m=e.let("i",(0,Xe._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,Xe._)`${m} > 1`,()=>(d()?p:f)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function p(m,h){let g=e.name("item"),y=(0,rh.checkDataTypes)(u,g,a.opts.strictNumbers,rh.DataType.Wrong),_=e.const("indices",(0,Xe._)`{}`);e.for((0,Xe._)`;${m}--;`,()=>{e.let(g,(0,Xe._)`${r}[${m}]`),e.if(y,(0,Xe._)`continue`),u.length>1&&e.if((0,Xe._)`typeof ${g} == "string"`,(0,Xe._)`${g} += "_"`),e.if((0,Xe._)`typeof ${_}[${g}] == "number"`,()=>{e.assign(h,(0,Xe._)`${_}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Xe._)`${_}[${g}] = ${m}`)})}function f(m,h){let g=(0,DN.useFunc)(e,MN.default),y=e.name("outer");e.label(y).for((0,Xe._)`;${m}--;`,()=>e.for((0,Xe._)`${h} = ${m}; ${h}--;`,()=>e.if((0,Xe._)`${g}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(y)})))}}};nh.default=FN});var l0=C(sh=>{"use strict";Object.defineProperty(sh,"__esModule",{value:!0});var oh=Q(),UN=ue(),ZN=Zc(),HN={message:"must be equal to constant",params:({schemaCode:t})=>(0,oh._)`{allowedValue: ${t}}`},qN={keyword:"const",$data:!0,error:HN,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,oh._)`!${(0,UN.useFunc)(e,ZN.default)}(${r}, ${o})`):t.fail((0,oh._)`${s} !== ${r}`)}};sh.default=qN});var d0=C(ih=>{"use strict";Object.defineProperty(ih,"__esModule",{value:!0});var ki=Q(),BN=ue(),VN=Zc(),WN={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,ki._)`{allowedValues: ${t}}`},GN={keyword:"enum",schemaType:"array",$data:!0,error:WN,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,BN.useFunc)(e,VN.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,ki.or)(...o.map((m,h)=>p(f,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,f=>e.if((0,ki._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function p(f,m){let h=o[m];return typeof h=="object"&&h!==null?(0,ki._)`${u()}(${r}, ${f}[${m}])`:(0,ki._)`${r} === ${h}`}}};ih.default=GN});var p0=C(ah=>{"use strict";Object.defineProperty(ah,"__esModule",{value:!0});var KN=QS(),JN=e0(),YN=n0(),XN=o0(),QN=s0(),ez=i0(),tz=a0(),rz=u0(),nz=l0(),oz=d0(),sz=[KN.default,JN.default,YN.default,XN.default,QN.default,ez.default,tz.default,rz.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},nz.default,oz.default];ah.default=sz});var uh=C(wi=>{"use strict";Object.defineProperty(wi,"__esModule",{value:!0});wi.validateAdditionalItems=void 0;var Yn=Q(),ch=ue(),iz={message:({params:{len:t}})=>(0,Yn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Yn._)`{limit: ${t}}`},az={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:iz,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,ch.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}m0(t,n)}};function m0(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Yn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Yn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,ch.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Yn._)`${a} <= ${e.length}`);r.if((0,Yn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:ch.Type.Num},u),i.allErrors||r.if((0,Yn.not)(u),()=>r.break())})}}wi.validateAdditionalItems=m0;wi.default=az});var lh=C($i=>{"use strict";Object.defineProperty($i,"__esModule",{value:!0});$i.validateTuple=void 0;var f0=Q(),Hc=ue(),cz=Ft(),uz={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return h0(t,"additionalItems",e);r.items=!0,!(0,Hc.alwaysValidSchema)(r,e)&&t.ok((0,cz.validateArray)(t))}};function h0(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=Hc.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,f0._)`${s}.length`);r.forEach((d,p)=>{(0,Hc.alwaysValidSchema)(a,d)||(n.if((0,f0._)`${u} > ${p}`,()=>t.subschema({keyword:i,schemaProp:p,dataProp:p},c)),t.ok(c))});function l(d){let{opts:p,errSchemaPath:f}=a,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(p.strictTuples&&!h){let g=`"${i}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,Hc.checkStrictMode)(a,g,p.strictTuples)}}}$i.validateTuple=h0;$i.default=uz});var g0=C(dh=>{"use strict";Object.defineProperty(dh,"__esModule",{value:!0});var lz=lh(),dz={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,lz.validateTuple)(t,"items")};dh.default=dz});var y0=C(ph=>{"use strict";Object.defineProperty(ph,"__esModule",{value:!0});var _0=Q(),pz=ue(),mz=Ft(),fz=uh(),hz={message:({params:{len:t}})=>(0,_0.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,_0._)`{limit: ${t}}`},gz={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:hz,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,pz.alwaysValidSchema)(n,e)&&(o?(0,fz.validateAdditionalItems)(t,o):t.ok((0,mz.validateArray)(t)))}};ph.default=gz});var x0=C(mh=>{"use strict";Object.defineProperty(mh,"__esModule",{value:!0});var Zt=Q(),qc=ue(),_z={message:({params:{min:t,max:e}})=>e===void 0?(0,Zt.str)`must contain at least ${t} valid item(s)`:(0,Zt.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Zt._)`{minContains: ${t}}`:(0,Zt._)`{minContains: ${t}, maxContains: ${e}}`},yz={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:_z,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,Zt._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,qc.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,qc.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,qc.alwaysValidSchema)(s,r)){let h=(0,Zt._)`${l} >= ${i}`;a!==void 0&&(h=(0,Zt._)`${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,Zt._)`${o}.length > 0`,p)):(e.let(d,!1),p()),t.result(d,()=>t.reset());function p(){let h=e.name("_valid"),g=e.let("count",0);f(h,()=>e.if(h,()=>m(g)))}function f(h,g){e.forRange("i",0,l,y=>{t.subschema({keyword:"contains",dataProp:y,dataPropType:qc.Type.Num,compositeRule:!0},h),g()})}function m(h){e.code((0,Zt._)`${h}++`),a===void 0?e.if((0,Zt._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,Zt._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,Zt._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};mh.default=yz});var S0=C(fr=>{"use strict";Object.defineProperty(fr,"__esModule",{value:!0});fr.validateSchemaDeps=fr.validatePropertyDeps=fr.error=void 0;var fh=Q(),xz=ue(),Ei=Ft();fr.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,fh.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,fh._)`{property: ${t},
55
55
  missingProperty: ${n},
56
56
  depsCount: ${e},
57
- deps: ${r}}`};var vz={keyword:"dependencies",type:"object",schemaType:"object",error:fr.error,code(t){let[e,r]=bz(t);x0(t,e),v0(t,r)}};function bz({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 x0(t,e=t.schema){let{gen:r,data:n,it:o}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let i in e){let a=e[i];if(a.length===0)continue;let c=(0,Ei.propertyInData)(r,n,i,o.opts.ownProperties);t.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let u of a)(0,Ei.checkReportMissingProp)(t,u)}):(r.if((0,fh._)`${c} && (${(0,Ei.checkMissingProp)(t,a,s)})`),(0,Ei.reportMissingProp)(t,s),r.else())}}fr.validatePropertyDeps=x0;function v0(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,xz.alwaysValidSchema)(s,e[a])||(r.if((0,Ei.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}fr.validateSchemaDeps=v0;fr.default=vz});var k0=C(hh=>{"use strict";Object.defineProperty(hh,"__esModule",{value:!0});var S0=Q(),Sz=ue(),kz={message:"property name must be valid",params:({params:t})=>(0,S0._)`{propertyName: ${t.propertyName}}`},wz={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:kz,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,Sz.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,S0.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};hh.default=wz});var _h=C(gh=>{"use strict";Object.defineProperty(gh,"__esModule",{value:!0});var Vc=Lt(),tr=Q(),$z=Ir(),Wc=ue(),Ez={message:"must NOT have additional properties",params:({params:t})=>(0,tr._)`{additionalProperty: ${t.additionalProperty}}`},Tz={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Ez,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,Wc.alwaysValidSchema)(i,r))return;let u=(0,Vc.allSchemaProperties)(n.properties),l=(0,Vc.allSchemaProperties)(n.patternProperties);d(),t.ok((0,tr._)`${s} === ${$z.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?m(g):e.if(p(g),()=>m(g))})}function p(g){let y;if(u.length>8){let _=(0,Wc.schemaRefOrVal)(i,n.properties,"properties");y=(0,Vc.isOwnProperty)(e,_,g)}else u.length?y=(0,tr.or)(...u.map(_=>(0,tr._)`${g} === ${_}`)):y=tr.nil;return l.length&&(y=(0,tr.or)(y,...l.map(_=>(0,tr._)`${(0,Vc.usePattern)(t,_)}.test(${g})`))),(0,tr.not)(y)}function f(g){e.code((0,tr._)`delete ${o}[${g}]`)}function m(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,Wc.alwaysValidSchema)(i,r)){let y=e.name("valid");c.removeAdditional==="failing"?(h(g,y,!1),e.if((0,tr.not)(y),()=>{t.reset(),f(g)})):(h(g,y),a||e.if((0,tr.not)(y),()=>e.break()))}}function h(g,y,_){let x={keyword:"additionalProperties",dataProp:g,dataPropType:Wc.Type.Str};_===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(x,y)}}};gh.default=Tz});var E0=C(xh=>{"use strict";Object.defineProperty(xh,"__esModule",{value:!0});var Pz=pi(),w0=Lt(),yh=ue(),$0=_h(),Rz={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&&$0.default.code(new Pz.KeywordCxt(s,$0.default,"additionalProperties"));let i=(0,w0.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=yh.mergeEvaluated.props(e,(0,yh.toHash)(i),s.props));let a=i.filter(d=>!(0,yh.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,w0.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)}}};xh.default=Rz});var C0=C(vh=>{"use strict";Object.defineProperty(vh,"__esModule",{value:!0});var T0=Lt(),Gc=Q(),P0=ue(),R0=ue(),Cz={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,T0.allSchemaProperties)(r),c=a.filter(h=>(0,P0.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 Gc.Name)&&(s.props=(0,R0.evaluatedPropsToName)(e,s.props));let{props:d}=s;p();function p(){for(let h of a)u&&f(h),s.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function f(h){for(let g in u)new RegExp(h).test(g)&&(0,P0.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,g=>{e.if((0,Gc._)`${(0,T0.usePattern)(t,h)}.test(${g})`,()=>{let y=c.includes(h);y||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:R0.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Gc._)`${d}[${g}]`,!0):!y&&!s.allErrors&&e.if((0,Gc.not)(l),()=>e.break())})})}}};vh.default=Cz});var O0=C(bh=>{"use strict";Object.defineProperty(bh,"__esModule",{value:!0});var Oz=ue(),Iz={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,Oz.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"}};bh.default=Iz});var I0=C(Sh=>{"use strict";Object.defineProperty(Sh,"__esModule",{value:!0});var Az=Lt(),Nz={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Az.validateUnion,error:{message:"must match a schema in anyOf"}};Sh.default=Nz});var A0=C(kh=>{"use strict";Object.defineProperty(kh,"__esModule",{value:!0});var Kc=Q(),zz=ue(),jz={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Kc._)`{passingSchemas: ${t.passing}}`},Dz={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:jz,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 p;(0,zz.alwaysValidSchema)(o,l)?e.var(c,!0):p=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Kc._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Kc._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),p&&t.mergeEvaluated(p,Kc.Name)})})}}};kh.default=Dz});var N0=C(wh=>{"use strict";Object.defineProperty(wh,"__esModule",{value:!0});var Mz=ue(),Lz={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,Mz.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};wh.default=Lz});var D0=C($h=>{"use strict";Object.defineProperty($h,"__esModule",{value:!0});var Jc=Q(),j0=ue(),Fz={message:({params:t})=>(0,Jc.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Jc._)`{failingKeyword: ${t.ifClause}}`},Uz={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Fz,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,j0.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=z0(n,"then"),s=z0(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,Jc.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 p=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(p,i),d?e.assign(d,(0,Jc._)`${l}`):t.setParams({ifClause:l})}}}};function z0(t,e){let r=t.schema[e];return r!==void 0&&!(0,j0.alwaysValidSchema)(t,r)}$h.default=Uz});var M0=C(Eh=>{"use strict";Object.defineProperty(Eh,"__esModule",{value:!0});var Zz=ue(),Hz={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,Zz.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Eh.default=Hz});var L0=C(Th=>{"use strict";Object.defineProperty(Th,"__esModule",{value:!0});var qz=uh(),Bz=h0(),Vz=lh(),Wz=_0(),Gz=y0(),Kz=b0(),Jz=k0(),Yz=_h(),Xz=E0(),Qz=C0(),ej=O0(),tj=I0(),rj=A0(),nj=N0(),oj=D0(),sj=M0();function ij(t=!1){let e=[ej.default,tj.default,rj.default,nj.default,oj.default,sj.default,Jz.default,Yz.default,Kz.default,Xz.default,Qz.default];return t?e.push(Bz.default,Wz.default):e.push(qz.default,Vz.default),e.push(Gz.default),e}Th.default=ij});var F0=C(Ph=>{"use strict";Object.defineProperty(Ph,"__esModule",{value:!0});var Fe=Q(),aj={message:({schemaCode:t})=>(0,Fe.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Fe._)`{format: ${t}}`},cj={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:aj,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?p():f();function p(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Fe._)`${m}[${i}]`),g=r.let("fType"),y=r.let("format");r.if((0,Fe._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,Fe._)`${h}.type || "string"`).assign(y,(0,Fe._)`${h}.validate`),()=>r.assign(g,(0,Fe._)`"string"`).assign(y,h)),t.fail$data((0,Fe.or)(_(),x()));function _(){return c.strictSchema===!1?Fe.nil:(0,Fe._)`${i} && !${y}`}function x(){let k=l.$async?(0,Fe._)`(${h}.async ? await ${y}(${n}) : ${y}(${n}))`:(0,Fe._)`${y}(${n})`,T=(0,Fe._)`(typeof ${y} == "function" ? ${k} : ${y}.test(${n}))`;return(0,Fe._)`${y} && ${y} !== true && ${g} === ${e} && !${T}`}}function f(){let m=d.formats[s];if(!m){_();return}if(m===!0)return;let[h,g,y]=x(m);h===e&&t.pass(k());function _(){if(c.strictSchema===!1){d.logger.warn(T());return}throw new Error(T());function T(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function x(T){let H=T instanceof RegExp?(0,Fe.regexpCode)(T):c.code.formats?(0,Fe._)`${c.code.formats}${(0,Fe.getProperty)(s)}`:void 0,z=r.scopeValue("formats",{key:s,ref:T,code:H});return typeof T=="object"&&!(T instanceof RegExp)?[T.type||"string",T.validate,(0,Fe._)`${z}.validate`]:["string",T,z]}function k(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Fe._)`await ${y}(${n})`}return typeof g=="function"?(0,Fe._)`${y}(${n})`:(0,Fe._)`${y}.test(${n})`}}}};Ph.default=cj});var U0=C(Rh=>{"use strict";Object.defineProperty(Rh,"__esModule",{value:!0});var uj=F0(),lj=[uj.default];Rh.default=lj});var Z0=C(Vo=>{"use strict";Object.defineProperty(Vo,"__esModule",{value:!0});Vo.contentVocabulary=Vo.metadataVocabulary=void 0;Vo.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Vo.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var q0=C(Ch=>{"use strict";Object.defineProperty(Ch,"__esModule",{value:!0});var dj=YS(),pj=d0(),mj=L0(),fj=U0(),H0=Z0(),hj=[dj.default,pj.default,(0,mj.default)(),fj.default,H0.metadataVocabulary,H0.contentVocabulary];Ch.default=hj});var V0=C(Yc=>{"use strict";Object.defineProperty(Yc,"__esModule",{value:!0});Yc.DiscrError=void 0;var B0;(function(t){t.Tag="tag",t.Mapping="mapping"})(B0||(Yc.DiscrError=B0={}))});var G0=C(Ih=>{"use strict";Object.defineProperty(Ih,"__esModule",{value:!0});var Wo=Q(),Oh=V0(),W0=Ac(),gj=mi(),_j=ue(),yj={message:({params:{discrError:t,tagName:e}})=>t===Oh.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Wo._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},xj={keyword:"discriminator",type:"object",schemaType:"object",error:yj,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,Wo._)`${r}${(0,Wo.getProperty)(a)}`);e.if((0,Wo._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Oh.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let f=p();e.if(!1);for(let m in f)e.elseIf((0,Wo._)`${u} === ${m}`),e.assign(c,d(f[m]));e.else(),t.error(!1,{discrError:Oh.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(f){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:f},m);return t.mergeEvaluated(h,Wo.Name),m}function p(){var f;let m={},h=y(o),g=!0;for(let k=0;k<i.length;k++){let T=i[k];if(T?.$ref&&!(0,_j.schemaHasRulesButRef)(T,s.self.RULES)){let z=T.$ref;if(T=W0.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,z),T instanceof W0.SchemaEnv&&(T=T.schema),T===void 0)throw new gj.default(s.opts.uriResolver,s.baseId,z)}let H=(f=T?.properties)===null||f===void 0?void 0:f[a];if(typeof H!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||y(T)),_(H,k)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return m;function y({required:k}){return Array.isArray(k)&&k.includes(a)}function _(k,T){if(k.const)x(k.const,T);else if(k.enum)for(let H of k.enum)x(H,T);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function x(k,T){if(typeof k!="string"||k in m)throw new Error(`discriminator: "${a}" values must be unique strings`);m[k]=T}}}};Ih.default=xj});var K0=C((l9,vj)=>{vj.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 Nh=C((Ee,Ah)=>{"use strict";Object.defineProperty(Ee,"__esModule",{value:!0});Ee.MissingRefError=Ee.ValidationError=Ee.CodeGen=Ee.Name=Ee.nil=Ee.stringify=Ee.str=Ee._=Ee.KeywordCxt=Ee.Ajv=void 0;var bj=BS(),Sj=q0(),kj=G0(),J0=K0(),wj=["/properties"],Xc="http://json-schema.org/draft-07/schema",Go=class extends bj.default{_addVocabularies(){super._addVocabularies(),Sj.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(kj.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(J0,wj):J0;this.addMetaSchema(e,Xc,!1),this.refs["http://json-schema.org/schema"]=Xc}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Xc)?Xc:void 0)}};Ee.Ajv=Go;Ah.exports=Ee=Go;Ah.exports.Ajv=Go;Object.defineProperty(Ee,"__esModule",{value:!0});Ee.default=Go;var $j=pi();Object.defineProperty(Ee,"KeywordCxt",{enumerable:!0,get:function(){return $j.KeywordCxt}});var Ko=Q();Object.defineProperty(Ee,"_",{enumerable:!0,get:function(){return Ko._}});Object.defineProperty(Ee,"str",{enumerable:!0,get:function(){return Ko.str}});Object.defineProperty(Ee,"stringify",{enumerable:!0,get:function(){return Ko.stringify}});Object.defineProperty(Ee,"nil",{enumerable:!0,get:function(){return Ko.nil}});Object.defineProperty(Ee,"Name",{enumerable:!0,get:function(){return Ko.Name}});Object.defineProperty(Ee,"CodeGen",{enumerable:!0,get:function(){return Ko.CodeGen}});var Ej=Oc();Object.defineProperty(Ee,"ValidationError",{enumerable:!0,get:function(){return Ej.default}});var Tj=mi();Object.defineProperty(Ee,"MissingRefError",{enumerable:!0,get:function(){return Tj.default}})});var ok=C(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.formatNames=gr.fastFormats=gr.fullFormats=void 0;function hr(t,e){return{validate:t,compare:e}}gr.fullFormats={date:hr(ek,Mh),time:hr(jh(!0),Lh),"date-time":hr(Y0(!0),rk),"iso-time":hr(jh(),tk),"iso-date-time":hr(Y0(),nk),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:Aj,"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:Fj,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:Nj,int32:{type:"number",validate:Dj},int64:{type:"number",validate:Mj},float:{type:"number",validate:Q0},double:{type:"number",validate:Q0},password:!0,binary:!0};gr.fastFormats={...gr.fullFormats,date:hr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Mh),time:hr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Lh),"date-time":hr(/^\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,rk),"iso-time":hr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,tk),"iso-date-time":hr(/^\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,nk),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};gr.formatNames=Object.keys(gr.fullFormats);function Pj(t){return t%4===0&&(t%100!==0||t%400===0)}var Rj=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,Cj=[0,31,28,31,30,31,30,31,31,30,31,30,31];function ek(t){let e=Rj.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&&Pj(r)?29:Cj[n])}function Mh(t,e){if(t&&e)return t>e?1:t<e?-1:0}var zh=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function jh(t){return function(r){let n=zh.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,p=o-u*c-(d<0?1:0);return(p===23||p===-1)&&(d===59||d===-1)&&i<61}}function Lh(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 tk(t,e){if(!(t&&e))return;let r=zh.exec(t),n=zh.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 Dh=/t|\s/i;function Y0(t){let e=jh(t);return function(n){let o=n.split(Dh);return o.length===2&&ek(o[0])&&e(o[1])}}function rk(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function nk(t,e){if(!(t&&e))return;let[r,n]=t.split(Dh),[o,s]=e.split(Dh),i=Mh(r,o);if(i!==void 0)return i||Lh(n,s)}var Oj=/\/|:/,Ij=/^(?:[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 Aj(t){return Oj.test(t)&&Ij.test(t)}var X0=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function Nj(t){return X0.lastIndex=0,X0.test(t)}var zj=-(2**31),jj=2**31-1;function Dj(t){return Number.isInteger(t)&&t<=jj&&t>=zj}function Mj(t){return Number.isInteger(t)}function Q0(){return!0}var Lj=/[^\\]\\Z/;function Fj(t){if(Lj.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var sk=C(Jo=>{"use strict";Object.defineProperty(Jo,"__esModule",{value:!0});Jo.formatLimitDefinition=void 0;var Uj=Nh(),rr=Q(),un=rr.operators,Qc={formatMaximum:{okStr:"<=",ok:un.LTE,fail:un.GT},formatMinimum:{okStr:">=",ok:un.GTE,fail:un.LT},formatExclusiveMaximum:{okStr:"<",ok:un.LT,fail:un.GTE},formatExclusiveMinimum:{okStr:">",ok:un.GT,fail:un.LTE}},Zj={message:({keyword:t,schemaCode:e})=>(0,rr.str)`should be ${Qc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,rr._)`{comparison: ${Qc[t].okStr}, limit: ${e}}`};Jo.formatLimitDefinition={keyword:Object.keys(Qc),type:"string",schemaType:"string",$data:!0,error:Zj,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 Uj.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let p=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),f=e.const("fmt",(0,rr._)`${p}[${c.schemaCode}]`);t.fail$data((0,rr.or)((0,rr._)`typeof ${f} != "object"`,(0,rr._)`${f} instanceof RegExp`,(0,rr._)`typeof ${f}.compare != "function"`,d(f)))}function l(){let p=c.schema,f=a.formats[p];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${o}": format "${p}" does not define "compare" function`);let m=e.scopeValue("formats",{key:p,ref:f,code:i.code.formats?(0,rr._)`${i.code.formats}${(0,rr.getProperty)(p)}`:void 0});t.fail$data(d(m))}function d(p){return(0,rr._)`${p}.compare(${r}, ${n}) ${Qc[o].fail} 0`}},dependencies:["format"]};var Hj=t=>(t.addKeyword(Jo.formatLimitDefinition),t);Jo.default=Hj});var uk=C((Ti,ck)=>{"use strict";Object.defineProperty(Ti,"__esModule",{value:!0});var Yo=ok(),qj=sk(),Fh=Q(),ik=new Fh.Name("fullFormats"),Bj=new Fh.Name("fastFormats"),Uh=(t,e={keywords:!0})=>{if(Array.isArray(e))return ak(t,e,Yo.fullFormats,ik),t;let[r,n]=e.mode==="fast"?[Yo.fastFormats,Bj]:[Yo.fullFormats,ik],o=e.formats||Yo.formatNames;return ak(t,o,r,n),e.keywords&&(0,qj.default)(t),t};Uh.get=(t,e="full")=>{let n=(e==="fast"?Yo.fastFormats:Yo.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function ak(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Fh._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}ck.exports=Ti=Uh;Object.defineProperty(Ti,"__esModule",{value:!0});Ti.default=Uh});function Vj(){let t=new lk.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,dk.default)(t),t}var lk,dk,eu,pk=v(()=>{lk=fs(Nh(),1),dk=fs(uk(),1);eu=class{constructor(e){this._ajv=e??Vj()}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 tu,mk=v(()=>{Un();tu=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(p=>p.type==="tool_use").map(p=>p.id)),d=new Set(s.filter(p=>p.type==="tool_result").map(p=>p.toolUseId));if(l.size!==d.size||![...l].every(p=>d.has(p)))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},Ys,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},No,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 fk(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 hk(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 gk=v(()=>{});var ru,_k=v(()=>{wb();Un();pk();Ls();mk();gk();ru=class extends yc{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Js.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 eu,this.setRequestHandler(tm,n=>this._oninitialize(n)),this.setNotificationHandler(rm,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(um,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Js.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new tu(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=kb(this._capabilities,e)}setRequestHandler(e,r){let o=Yr(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(Nt(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=Jr(Ao,c);if(!l.success){let m=l.error instanceof Error?l.error.message:String(l.error);throw new D(Z.InvalidParams,`Invalid tools/call request: ${m}`)}let{params:d}=l.data,p=await Promise.resolve(r(c,u));if(d.task){let m=Jr(Po,p);if(!m.success){let h=m.error instanceof Error?m.error.message:String(m.error);throw new D(Z.InvalidParams,`Invalid task creation result: ${h}`)}return m.data}let f=Jr(ic,p);if(!f.success){let m=f.error instanceof Error?f.error.message:String(f.error);throw new D(Z.InvalidParams,`Invalid tools/call result: ${m}`)}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){hk(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&fk(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:kv.includes(r)?r:Jp,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"},Wa)}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},lm,r):this.request({method:"sampling/createMessage",params:e},Ys,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},No,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},No,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new D(Z.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof D?i:new D(Z.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},dm,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"})}}});function Zh(t){return!!t&&typeof t=="object"&&xk in t}function vk(t){return t[xk]?.complete}var xk,yk,bk=v(()=>{xk=Symbol.for("mcp.completable");(function(t){t.Completable="McpCompletable"})(yk||(yk={}))});var Sk=v(()=>{});function Gj(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"),!Wj.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 Kj(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 Hh(t){let e=Gj(t);return Kj(t,e.warnings),e.isValid}var Wj,kk=v(()=>{Wj=/^[A-Za-z0-9._-]{1,128}$/});var nu,wk=v(()=>{nu=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 qh=v(()=>{_a();_a()});function Tk(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function Pk(t){return"_def"in t||"_zod"in t||Tk(t)}function Bh(t){return typeof t!="object"||t===null||Pk(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(Tk)}function $k(t){if(t){if(Bh(t))return Fn(t);if(!Pk(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function Yj(t){let e=Yr(t);return e?Object.entries(e).map(([r,n])=>{let o=Gx(n),s=Kx(n);return{name:r,description:o,required:!s}}):[]}function ln(t){let r=Yr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Ua(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function Ek(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var ou,Jj,Pi,Rk=v(()=>{_k();Ls();Gm();Un();bk();Sk();kk();wk();qh();ou=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 ru(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new nu(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(ln(sc)),this.server.assertCanSetRequestHandler(ln(Ao)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(sc,()=>({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=Eo(r.inputSchema);return o?Bm(o,{strictUnions:!0,pipeStrategy:"input"}):Jj})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=Eo(r.outputSchema);o&&(n.outputSchema=Bm(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(Ao,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new D(Z.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new D(Z.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new D(Z.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new D(Z.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof D&&n.code===Z.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=Eo(e.inputSchema)??e.inputSchema,i=await La(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Fa(a);throw new D(Z.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new D(Z.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=Eo(e.outputSchema),s=await La(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Fa(i);throw new D(Z.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(p=>setTimeout(p,l));let d=await n.taskStore.getTask(c);if(!d)throw new D(Z.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(ln(ac)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(ac,async e=>{switch(e.params.ref.type){case"ref/prompt":return Lv(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Fv(e),this.handleResourceCompletion(e,e.params.ref);default:throw new D(Z.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new D(Z.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new D(Z.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return Pi;let s=Yr(n.argsSchema)?.[e.params.argument.name];if(!Zh(s))return Pi;let i=vk(s);if(!i)return Pi;let a=await i(e.params.argument.value,e.params.context);return Ek(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 Pi;throw new D(Z.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return Pi;let s=await o(e.params.argument.value,e.params.context);return Ek(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(ln(Co)),this.server.assertCanSetRequestHandler(ln(Oo)),this.server.assertCanSetRequestHandler(ln(nc)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Co,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(Oo,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(nc,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new D(Z.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new D(Z.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(ln(Io)),this.server.assertCanSetRequestHandler(ln(oc)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Io,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?Yj(r.argsSchema):void 0}))})),this.server.setRequestHandler(oc,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new D(Z.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new D(Z.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=Eo(n.argsSchema),s=await La(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Fa(c);throw new D(Z.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:Fn(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=Fn(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 mt?c._def?.innerType:c;return Zh(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){Hh(e);let l={title:r,description:n,inputSchema:$k(o),outputSchema:$k(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"&&Hh(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=Fn(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Fn(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(Bh(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!Bh(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()}},Jj={type:"object",properties:{}};Pi={completion:{values:[],hasMore:!1}}});function Xj(t){return Ov.parse(JSON.parse(t))}function Ck(t){return JSON.stringify(t)+`
58
- `}var su,Ok=v(()=>{Un();su=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
59
- `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),Xj(r)}clear(){this._buffer=void 0}}});import Ik from"node:process";var iu,Ak=v(()=>{Ok();iu=class{constructor(e=Ik.stdin,r=Ik.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new su,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=Ck(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}}});var Uk={};Ze(Uk,{PolyglotExecutor:()=>Xo,buildScriptFilename:()=>Lk,buildSpawnOptions:()=>Fk});import{spawn as Qj,execSync as eD,execFileSync as Dk}from"node:child_process";import{mkdtempSync as tD,writeFileSync as Nk,rmSync as zk,existsSync as jk}from"node:fs";import{join as au,resolve as Mk}from"node:path";import{tmpdir as rD}from"node:os";function Lk(t,e,r){if(e==="win32"&&t==="shell"){let n=r?.toLowerCase()??"";return n.includes("powershell")||n.includes("pwsh")?"script.ps1":"script"}return`script.${nD[t]}`}function Fk(t){return{windowsHide:t==="win32"}}function Vh(t){if(Zt&&t.pid)try{eD(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var Zt,nD,oD,Xo,Wh=v(()=>{"use strict";Xi();Zt=process.platform==="win32",nD={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};oD=(()=>{if(Zt)return process.env.TEMP??process.env.TMP??rD();try{let t=Dk(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:Mk(t,"..");if(e&&e!==process.cwd())return e}catch{}return"/tmp"})();Xo=class{#e;#t;#n;#s=new Set;constructor(e){this.#e=e?.hardCapBytes??100*1024*1024;let r=e?.projectRoot;typeof r=="function"?this.#t=r:typeof r=="string"?this.#t=()=>r:this.#t=()=>process.cwd(),this.#n=e?.runtimes??so()}get#o(){return this.#t()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#s)try{process.kill(Zt?e:-e,"SIGTERM")}catch{}this.#s.clear()}async execute(e){let{language:r,code:n,timeout:o,background:s=!1}=e,i=tD(au(oD,".ctx-mode-"));try{let a=this.#a(i,n,r),c=Qg(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#c(a,i,o);let u=r==="shell"?this.#o:i,l=await this.#i(c,u,i,o,s);if(!l.backgrounded)try{zk(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{zk(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s}=e,i=Mk(this.#o,r),a=this.#l(i,n,o);return this.execute({language:n,code:a,timeout:s})}#a(e,r,n){n==="go"&&!r.includes("package ")&&(r=`package main
57
+ deps: ${r}}`};var vz={keyword:"dependencies",type:"object",schemaType:"object",error:fr.error,code(t){let[e,r]=bz(t);v0(t,e),b0(t,r)}};function bz({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 v0(t,e=t.schema){let{gen:r,data:n,it:o}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let i in e){let a=e[i];if(a.length===0)continue;let c=(0,Ei.propertyInData)(r,n,i,o.opts.ownProperties);t.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let u of a)(0,Ei.checkReportMissingProp)(t,u)}):(r.if((0,fh._)`${c} && (${(0,Ei.checkMissingProp)(t,a,s)})`),(0,Ei.reportMissingProp)(t,s),r.else())}}fr.validatePropertyDeps=v0;function b0(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,xz.alwaysValidSchema)(s,e[a])||(r.if((0,Ei.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}fr.validateSchemaDeps=b0;fr.default=vz});var w0=C(hh=>{"use strict";Object.defineProperty(hh,"__esModule",{value:!0});var k0=Q(),Sz=ue(),kz={message:"property name must be valid",params:({params:t})=>(0,k0._)`{propertyName: ${t.propertyName}}`},wz={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:kz,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,Sz.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,k0.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};hh.default=wz});var _h=C(gh=>{"use strict";Object.defineProperty(gh,"__esModule",{value:!0});var Bc=Ft(),tr=Q(),$z=Ir(),Vc=ue(),Ez={message:"must NOT have additional properties",params:({params:t})=>(0,tr._)`{additionalProperty: ${t.additionalProperty}}`},Tz={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Ez,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,Vc.alwaysValidSchema)(i,r))return;let u=(0,Bc.allSchemaProperties)(n.properties),l=(0,Bc.allSchemaProperties)(n.patternProperties);d(),t.ok((0,tr._)`${s} === ${$z.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?m(g):e.if(p(g),()=>m(g))})}function p(g){let y;if(u.length>8){let _=(0,Vc.schemaRefOrVal)(i,n.properties,"properties");y=(0,Bc.isOwnProperty)(e,_,g)}else u.length?y=(0,tr.or)(...u.map(_=>(0,tr._)`${g} === ${_}`)):y=tr.nil;return l.length&&(y=(0,tr.or)(y,...l.map(_=>(0,tr._)`${(0,Bc.usePattern)(t,_)}.test(${g})`))),(0,tr.not)(y)}function f(g){e.code((0,tr._)`delete ${o}[${g}]`)}function m(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,Vc.alwaysValidSchema)(i,r)){let y=e.name("valid");c.removeAdditional==="failing"?(h(g,y,!1),e.if((0,tr.not)(y),()=>{t.reset(),f(g)})):(h(g,y),a||e.if((0,tr.not)(y),()=>e.break()))}}function h(g,y,_){let x={keyword:"additionalProperties",dataProp:g,dataPropType:Vc.Type.Str};_===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(x,y)}}};gh.default=Tz});var T0=C(xh=>{"use strict";Object.defineProperty(xh,"__esModule",{value:!0});var Pz=pi(),$0=Ft(),yh=ue(),E0=_h(),Rz={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&&E0.default.code(new Pz.KeywordCxt(s,E0.default,"additionalProperties"));let i=(0,$0.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=yh.mergeEvaluated.props(e,(0,yh.toHash)(i),s.props));let a=i.filter(d=>!(0,yh.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,$0.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)}}};xh.default=Rz});var O0=C(vh=>{"use strict";Object.defineProperty(vh,"__esModule",{value:!0});var P0=Ft(),Wc=Q(),R0=ue(),C0=ue(),Cz={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,P0.allSchemaProperties)(r),c=a.filter(h=>(0,R0.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 Wc.Name)&&(s.props=(0,C0.evaluatedPropsToName)(e,s.props));let{props:d}=s;p();function p(){for(let h of a)u&&f(h),s.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function f(h){for(let g in u)new RegExp(h).test(g)&&(0,R0.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,g=>{e.if((0,Wc._)`${(0,P0.usePattern)(t,h)}.test(${g})`,()=>{let y=c.includes(h);y||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:C0.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Wc._)`${d}[${g}]`,!0):!y&&!s.allErrors&&e.if((0,Wc.not)(l),()=>e.break())})})}}};vh.default=Cz});var I0=C(bh=>{"use strict";Object.defineProperty(bh,"__esModule",{value:!0});var Oz=ue(),Iz={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,Oz.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"}};bh.default=Iz});var A0=C(Sh=>{"use strict";Object.defineProperty(Sh,"__esModule",{value:!0});var Az=Ft(),Nz={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Az.validateUnion,error:{message:"must match a schema in anyOf"}};Sh.default=Nz});var N0=C(kh=>{"use strict";Object.defineProperty(kh,"__esModule",{value:!0});var Gc=Q(),zz=ue(),jz={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Gc._)`{passingSchemas: ${t.passing}}`},Dz={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:jz,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 p;(0,zz.alwaysValidSchema)(o,l)?e.var(c,!0):p=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Gc._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Gc._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),p&&t.mergeEvaluated(p,Gc.Name)})})}}};kh.default=Dz});var z0=C(wh=>{"use strict";Object.defineProperty(wh,"__esModule",{value:!0});var Mz=ue(),Lz={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,Mz.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};wh.default=Lz});var M0=C($h=>{"use strict";Object.defineProperty($h,"__esModule",{value:!0});var Kc=Q(),D0=ue(),Fz={message:({params:t})=>(0,Kc.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Kc._)`{failingKeyword: ${t.ifClause}}`},Uz={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Fz,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,D0.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=j0(n,"then"),s=j0(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,Kc.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 p=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(p,i),d?e.assign(d,(0,Kc._)`${l}`):t.setParams({ifClause:l})}}}};function j0(t,e){let r=t.schema[e];return r!==void 0&&!(0,D0.alwaysValidSchema)(t,r)}$h.default=Uz});var L0=C(Eh=>{"use strict";Object.defineProperty(Eh,"__esModule",{value:!0});var Zz=ue(),Hz={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,Zz.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Eh.default=Hz});var F0=C(Th=>{"use strict";Object.defineProperty(Th,"__esModule",{value:!0});var qz=uh(),Bz=g0(),Vz=lh(),Wz=y0(),Gz=x0(),Kz=S0(),Jz=w0(),Yz=_h(),Xz=T0(),Qz=O0(),ej=I0(),tj=A0(),rj=N0(),nj=z0(),oj=M0(),sj=L0();function ij(t=!1){let e=[ej.default,tj.default,rj.default,nj.default,oj.default,sj.default,Jz.default,Yz.default,Kz.default,Xz.default,Qz.default];return t?e.push(Bz.default,Wz.default):e.push(qz.default,Vz.default),e.push(Gz.default),e}Th.default=ij});var U0=C(Ph=>{"use strict";Object.defineProperty(Ph,"__esModule",{value:!0});var Fe=Q(),aj={message:({schemaCode:t})=>(0,Fe.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Fe._)`{format: ${t}}`},cj={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:aj,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?p():f();function p(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Fe._)`${m}[${i}]`),g=r.let("fType"),y=r.let("format");r.if((0,Fe._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,Fe._)`${h}.type || "string"`).assign(y,(0,Fe._)`${h}.validate`),()=>r.assign(g,(0,Fe._)`"string"`).assign(y,h)),t.fail$data((0,Fe.or)(_(),x()));function _(){return c.strictSchema===!1?Fe.nil:(0,Fe._)`${i} && !${y}`}function x(){let k=l.$async?(0,Fe._)`(${h}.async ? await ${y}(${n}) : ${y}(${n}))`:(0,Fe._)`${y}(${n})`,E=(0,Fe._)`(typeof ${y} == "function" ? ${k} : ${y}.test(${n}))`;return(0,Fe._)`${y} && ${y} !== true && ${g} === ${e} && !${E}`}}function f(){let m=d.formats[s];if(!m){_();return}if(m===!0)return;let[h,g,y]=x(m);h===e&&t.pass(k());function _(){if(c.strictSchema===!1){d.logger.warn(E());return}throw new Error(E());function E(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function x(E){let H=E instanceof RegExp?(0,Fe.regexpCode)(E):c.code.formats?(0,Fe._)`${c.code.formats}${(0,Fe.getProperty)(s)}`:void 0,z=r.scopeValue("formats",{key:s,ref:E,code:H});return typeof E=="object"&&!(E instanceof RegExp)?[E.type||"string",E.validate,(0,Fe._)`${z}.validate`]:["string",E,z]}function k(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Fe._)`await ${y}(${n})`}return typeof g=="function"?(0,Fe._)`${y}(${n})`:(0,Fe._)`${y}.test(${n})`}}}};Ph.default=cj});var Z0=C(Rh=>{"use strict";Object.defineProperty(Rh,"__esModule",{value:!0});var uj=U0(),lj=[uj.default];Rh.default=lj});var H0=C(Vo=>{"use strict";Object.defineProperty(Vo,"__esModule",{value:!0});Vo.contentVocabulary=Vo.metadataVocabulary=void 0;Vo.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Vo.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var B0=C(Ch=>{"use strict";Object.defineProperty(Ch,"__esModule",{value:!0});var dj=XS(),pj=p0(),mj=F0(),fj=Z0(),q0=H0(),hj=[dj.default,pj.default,(0,mj.default)(),fj.default,q0.metadataVocabulary,q0.contentVocabulary];Ch.default=hj});var W0=C(Jc=>{"use strict";Object.defineProperty(Jc,"__esModule",{value:!0});Jc.DiscrError=void 0;var V0;(function(t){t.Tag="tag",t.Mapping="mapping"})(V0||(Jc.DiscrError=V0={}))});var K0=C(Ih=>{"use strict";Object.defineProperty(Ih,"__esModule",{value:!0});var Wo=Q(),Oh=W0(),G0=Ic(),gj=mi(),_j=ue(),yj={message:({params:{discrError:t,tagName:e}})=>t===Oh.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Wo._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},xj={keyword:"discriminator",type:"object",schemaType:"object",error:yj,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,Wo._)`${r}${(0,Wo.getProperty)(a)}`);e.if((0,Wo._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Oh.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let f=p();e.if(!1);for(let m in f)e.elseIf((0,Wo._)`${u} === ${m}`),e.assign(c,d(f[m]));e.else(),t.error(!1,{discrError:Oh.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(f){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:f},m);return t.mergeEvaluated(h,Wo.Name),m}function p(){var f;let m={},h=y(o),g=!0;for(let k=0;k<i.length;k++){let E=i[k];if(E?.$ref&&!(0,_j.schemaHasRulesButRef)(E,s.self.RULES)){let z=E.$ref;if(E=G0.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,z),E instanceof G0.SchemaEnv&&(E=E.schema),E===void 0)throw new gj.default(s.opts.uriResolver,s.baseId,z)}let H=(f=E?.properties)===null||f===void 0?void 0:f[a];if(typeof H!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||y(E)),_(H,k)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return m;function y({required:k}){return Array.isArray(k)&&k.includes(a)}function _(k,E){if(k.const)x(k.const,E);else if(k.enum)for(let H of k.enum)x(H,E);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function x(k,E){if(typeof k!="string"||k in m)throw new Error(`discriminator: "${a}" values must be unique strings`);m[k]=E}}}};Ih.default=xj});var J0=C((l9,vj)=>{vj.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 Nh=C((Te,Ah)=>{"use strict";Object.defineProperty(Te,"__esModule",{value:!0});Te.MissingRefError=Te.ValidationError=Te.CodeGen=Te.Name=Te.nil=Te.stringify=Te.str=Te._=Te.KeywordCxt=Te.Ajv=void 0;var bj=VS(),Sj=B0(),kj=K0(),Y0=J0(),wj=["/properties"],Yc="http://json-schema.org/draft-07/schema",Go=class extends bj.default{_addVocabularies(){super._addVocabularies(),Sj.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(kj.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Y0,wj):Y0;this.addMetaSchema(e,Yc,!1),this.refs["http://json-schema.org/schema"]=Yc}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Yc)?Yc:void 0)}};Te.Ajv=Go;Ah.exports=Te=Go;Ah.exports.Ajv=Go;Object.defineProperty(Te,"__esModule",{value:!0});Te.default=Go;var $j=pi();Object.defineProperty(Te,"KeywordCxt",{enumerable:!0,get:function(){return $j.KeywordCxt}});var Ko=Q();Object.defineProperty(Te,"_",{enumerable:!0,get:function(){return Ko._}});Object.defineProperty(Te,"str",{enumerable:!0,get:function(){return Ko.str}});Object.defineProperty(Te,"stringify",{enumerable:!0,get:function(){return Ko.stringify}});Object.defineProperty(Te,"nil",{enumerable:!0,get:function(){return Ko.nil}});Object.defineProperty(Te,"Name",{enumerable:!0,get:function(){return Ko.Name}});Object.defineProperty(Te,"CodeGen",{enumerable:!0,get:function(){return Ko.CodeGen}});var Ej=Cc();Object.defineProperty(Te,"ValidationError",{enumerable:!0,get:function(){return Ej.default}});var Tj=mi();Object.defineProperty(Te,"MissingRefError",{enumerable:!0,get:function(){return Tj.default}})});var sk=C(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.formatNames=gr.fastFormats=gr.fullFormats=void 0;function hr(t,e){return{validate:t,compare:e}}gr.fullFormats={date:hr(tk,Mh),time:hr(jh(!0),Lh),"date-time":hr(X0(!0),nk),"iso-time":hr(jh(),rk),"iso-date-time":hr(X0(),ok),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:Aj,"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:Fj,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:Nj,int32:{type:"number",validate:Dj},int64:{type:"number",validate:Mj},float:{type:"number",validate:ek},double:{type:"number",validate:ek},password:!0,binary:!0};gr.fastFormats={...gr.fullFormats,date:hr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Mh),time:hr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Lh),"date-time":hr(/^\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,nk),"iso-time":hr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,rk),"iso-date-time":hr(/^\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,ok),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};gr.formatNames=Object.keys(gr.fullFormats);function Pj(t){return t%4===0&&(t%100!==0||t%400===0)}var Rj=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,Cj=[0,31,28,31,30,31,30,31,31,30,31,30,31];function tk(t){let e=Rj.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&&Pj(r)?29:Cj[n])}function Mh(t,e){if(t&&e)return t>e?1:t<e?-1:0}var zh=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function jh(t){return function(r){let n=zh.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,p=o-u*c-(d<0?1:0);return(p===23||p===-1)&&(d===59||d===-1)&&i<61}}function Lh(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 rk(t,e){if(!(t&&e))return;let r=zh.exec(t),n=zh.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 Dh=/t|\s/i;function X0(t){let e=jh(t);return function(n){let o=n.split(Dh);return o.length===2&&tk(o[0])&&e(o[1])}}function nk(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function ok(t,e){if(!(t&&e))return;let[r,n]=t.split(Dh),[o,s]=e.split(Dh),i=Mh(r,o);if(i!==void 0)return i||Lh(n,s)}var Oj=/\/|:/,Ij=/^(?:[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 Aj(t){return Oj.test(t)&&Ij.test(t)}var Q0=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function Nj(t){return Q0.lastIndex=0,Q0.test(t)}var zj=-(2**31),jj=2**31-1;function Dj(t){return Number.isInteger(t)&&t<=jj&&t>=zj}function Mj(t){return Number.isInteger(t)}function ek(){return!0}var Lj=/[^\\]\\Z/;function Fj(t){if(Lj.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var ik=C(Jo=>{"use strict";Object.defineProperty(Jo,"__esModule",{value:!0});Jo.formatLimitDefinition=void 0;var Uj=Nh(),rr=Q(),un=rr.operators,Xc={formatMaximum:{okStr:"<=",ok:un.LTE,fail:un.GT},formatMinimum:{okStr:">=",ok:un.GTE,fail:un.LT},formatExclusiveMaximum:{okStr:"<",ok:un.LT,fail:un.GTE},formatExclusiveMinimum:{okStr:">",ok:un.GT,fail:un.LTE}},Zj={message:({keyword:t,schemaCode:e})=>(0,rr.str)`should be ${Xc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,rr._)`{comparison: ${Xc[t].okStr}, limit: ${e}}`};Jo.formatLimitDefinition={keyword:Object.keys(Xc),type:"string",schemaType:"string",$data:!0,error:Zj,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 Uj.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let p=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),f=e.const("fmt",(0,rr._)`${p}[${c.schemaCode}]`);t.fail$data((0,rr.or)((0,rr._)`typeof ${f} != "object"`,(0,rr._)`${f} instanceof RegExp`,(0,rr._)`typeof ${f}.compare != "function"`,d(f)))}function l(){let p=c.schema,f=a.formats[p];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${o}": format "${p}" does not define "compare" function`);let m=e.scopeValue("formats",{key:p,ref:f,code:i.code.formats?(0,rr._)`${i.code.formats}${(0,rr.getProperty)(p)}`:void 0});t.fail$data(d(m))}function d(p){return(0,rr._)`${p}.compare(${r}, ${n}) ${Xc[o].fail} 0`}},dependencies:["format"]};var Hj=t=>(t.addKeyword(Jo.formatLimitDefinition),t);Jo.default=Hj});var lk=C((Ti,uk)=>{"use strict";Object.defineProperty(Ti,"__esModule",{value:!0});var Yo=sk(),qj=ik(),Fh=Q(),ak=new Fh.Name("fullFormats"),Bj=new Fh.Name("fastFormats"),Uh=(t,e={keywords:!0})=>{if(Array.isArray(e))return ck(t,e,Yo.fullFormats,ak),t;let[r,n]=e.mode==="fast"?[Yo.fastFormats,Bj]:[Yo.fullFormats,ak],o=e.formats||Yo.formatNames;return ck(t,o,r,n),e.keywords&&(0,qj.default)(t),t};Uh.get=(t,e="full")=>{let n=(e==="fast"?Yo.fastFormats:Yo.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function ck(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Fh._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}uk.exports=Ti=Uh;Object.defineProperty(Ti,"__esModule",{value:!0});Ti.default=Uh});function Vj(){let t=new dk.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,pk.default)(t),t}var dk,pk,Qc,mk=v(()=>{dk=fs(Nh(),1),pk=fs(lk(),1);Qc=class{constructor(e){this._ajv=e??Vj()}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 eu,fk=v(()=>{Un();eu=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(p=>p.type==="tool_use").map(p=>p.id)),d=new Set(s.filter(p=>p.type==="tool_result").map(p=>p.toolUseId));if(l.size!==d.size||![...l].every(p=>d.has(p)))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},Ys,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},No,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 hk(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 gk(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 _k=v(()=>{});var tu,yk=v(()=>{$b();Un();mk();Ls();fk();_k();tu=class extends _c{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Js.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 Qc,this.setRequestHandler(tm,n=>this._oninitialize(n)),this.setNotificationHandler(rm,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(um,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Js.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new eu(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=wb(this._capabilities,e)}setRequestHandler(e,r){let o=Yr(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(zt(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=Jr(Ao,c);if(!l.success){let m=l.error instanceof Error?l.error.message:String(l.error);throw new D(Z.InvalidParams,`Invalid tools/call request: ${m}`)}let{params:d}=l.data,p=await Promise.resolve(r(c,u));if(d.task){let m=Jr(Po,p);if(!m.success){let h=m.error instanceof Error?m.error.message:String(m.error);throw new D(Z.InvalidParams,`Invalid task creation result: ${h}`)}return m.data}let f=Jr(sc,p);if(!f.success){let m=f.error instanceof Error?f.error.message:String(f.error);throw new D(Z.InvalidParams,`Invalid tools/call result: ${m}`)}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){gk(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&hk(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:wv.includes(r)?r:Jp,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"},Va)}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},lm,r):this.request({method:"sampling/createMessage",params:e},Ys,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},No,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},No,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new D(Z.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof D?i:new D(Z.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},dm,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"})}}});function Zh(t){return!!t&&typeof t=="object"&&vk in t}function bk(t){return t[vk]?.complete}var vk,xk,Sk=v(()=>{vk=Symbol.for("mcp.completable");(function(t){t.Completable="McpCompletable"})(xk||(xk={}))});var kk=v(()=>{});function Gj(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"),!Wj.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 Kj(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 Hh(t){let e=Gj(t);return Kj(t,e.warnings),e.isValid}var Wj,wk=v(()=>{Wj=/^[A-Za-z0-9._-]{1,128}$/});var ru,$k=v(()=>{ru=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 qh=v(()=>{ga();ga()});function Pk(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function Rk(t){return"_def"in t||"_zod"in t||Pk(t)}function Bh(t){return typeof t!="object"||t===null||Rk(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(Pk)}function Ek(t){if(t){if(Bh(t))return Fn(t);if(!Rk(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function Yj(t){let e=Yr(t);return e?Object.entries(e).map(([r,n])=>{let o=Kx(n),s=Jx(n);return{name:r,description:o,required:!s}}):[]}function ln(t){let r=Yr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Fa(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function Tk(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var nu,Jj,Pi,Ck=v(()=>{yk();Ls();Gm();Un();Sk();kk();wk();$k();qh();nu=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 tu(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new ru(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(ln(oc)),this.server.assertCanSetRequestHandler(ln(Ao)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(oc,()=>({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=Eo(r.inputSchema);return o?Bm(o,{strictUnions:!0,pipeStrategy:"input"}):Jj})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=Eo(r.outputSchema);o&&(n.outputSchema=Bm(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(Ao,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new D(Z.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new D(Z.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new D(Z.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new D(Z.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof D&&n.code===Z.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=Eo(e.inputSchema)??e.inputSchema,i=await Ma(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=La(a);throw new D(Z.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new D(Z.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=Eo(e.outputSchema),s=await Ma(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=La(i);throw new D(Z.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(p=>setTimeout(p,l));let d=await n.taskStore.getTask(c);if(!d)throw new D(Z.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(ln(ic)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(ic,async e=>{switch(e.params.ref.type){case"ref/prompt":return Fv(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Uv(e),this.handleResourceCompletion(e,e.params.ref);default:throw new D(Z.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new D(Z.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new D(Z.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return Pi;let s=Yr(n.argsSchema)?.[e.params.argument.name];if(!Zh(s))return Pi;let i=bk(s);if(!i)return Pi;let a=await i(e.params.argument.value,e.params.context);return Tk(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 Pi;throw new D(Z.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return Pi;let s=await o(e.params.argument.value,e.params.context);return Tk(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(ln(Co)),this.server.assertCanSetRequestHandler(ln(Oo)),this.server.assertCanSetRequestHandler(ln(rc)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Co,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(Oo,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(rc,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new D(Z.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new D(Z.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(ln(Io)),this.server.assertCanSetRequestHandler(ln(nc)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Io,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?Yj(r.argsSchema):void 0}))})),this.server.setRequestHandler(nc,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new D(Z.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new D(Z.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=Eo(n.argsSchema),s=await Ma(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=La(c);throw new D(Z.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:Fn(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=Fn(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 mt?c._def?.innerType:c;return Zh(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){Hh(e);let l={title:r,description:n,inputSchema:Ek(o),outputSchema:Ek(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"&&Hh(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=Fn(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Fn(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(Bh(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!Bh(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()}},Jj={type:"object",properties:{}};Pi={completion:{values:[],hasMore:!1}}});function Xj(t){return Iv.parse(JSON.parse(t))}function Ok(t){return JSON.stringify(t)+`
58
+ `}var ou,Ik=v(()=>{Un();ou=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
59
+ `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),Xj(r)}clear(){this._buffer=void 0}}});import Ak from"node:process";var su,Nk=v(()=>{Ik();su=class{constructor(e=Ak.stdin,r=Ak.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new ou,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=Ok(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}}});var Zk={};Ze(Zk,{PolyglotExecutor:()=>Xo,buildScriptFilename:()=>Fk,buildSpawnOptions:()=>Uk});import{spawn as Qj,execSync as eD,execFileSync as Mk}from"node:child_process";import{mkdtempSync as tD,writeFileSync as zk,rmSync as jk,existsSync as Dk}from"node:fs";import{join as iu,resolve as Lk}from"node:path";import{tmpdir as rD}from"node:os";function Fk(t,e,r){if(e==="win32"&&t==="shell"){let n=r?.toLowerCase()??"";return n.includes("powershell")||n.includes("pwsh")?"script.ps1":"script"}return`script.${nD[t]}`}function Uk(t){return{windowsHide:t==="win32"}}function Vh(t){if(Ht&&t.pid)try{eD(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var Ht,nD,oD,Xo,Wh=v(()=>{"use strict";Yi();Ht=process.platform==="win32",nD={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};oD=(()=>{if(Ht)return process.env.TEMP??process.env.TMP??rD();try{let t=Mk(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:Lk(t,"..");if(e&&e!==process.cwd())return e}catch{}return"/tmp"})();Xo=class{#e;#t;#n;#s=new Set;constructor(e){this.#e=e?.hardCapBytes??100*1024*1024;let r=e?.projectRoot;typeof r=="function"?this.#t=r:typeof r=="string"?this.#t=()=>r:this.#t=()=>process.cwd(),this.#n=e?.runtimes??so()}get#o(){return this.#t()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#s)try{process.kill(Ht?e:-e,"SIGTERM")}catch{}this.#s.clear()}async execute(e){let{language:r,code:n,timeout:o,background:s=!1}=e,i=tD(iu(oD,".ctx-mode-"));try{let a=this.#a(i,n,r),c=e_(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#c(a,i,o);let u=r==="shell"?this.#o:i,l=await this.#i(c,u,i,o,s);if(!l.backgrounded)try{jk(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{jk(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s}=e,i=Lk(this.#o,r),a=this.#l(i,n,o);return this.execute({language:n,code:a,timeout:s})}#a(e,r,n){n==="go"&&!r.includes("package ")&&(r=`package main
60
60
 
61
61
  import "fmt"
62
62
 
@@ -64,12 +64,12 @@ func main() {
64
64
  ${r}
65
65
  }
66
66
  `),n==="php"&&!r.trimStart().startsWith("<?")&&(r=`<?php
67
- ${r}`),n==="elixir"&&jk(au(this.#o,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(au(this.#o,"_build/dev/lib"))}, "*/ebin"))
67
+ ${r}`),n==="elixir"&&Dk(iu(this.#o,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(iu(this.#o,"_build/dev/lib"))}, "*/ebin"))
68
68
  |> Enum.each(&Code.prepend_path/1)
69
69
 
70
- ${r}`);let o=au(e,Lk(n,process.platform,n==="shell"?this.#n.shell:null));return n==="shell"?Nk(o,r,{encoding:"utf-8",mode:448}):Nk(o,r,"utf-8"),o}async#c(e,r,n){let o=Zt?".exe":"",s=e.replace(/\.rs$/,"")+o;try{Dk("rustc",[e,"-o",s],{cwd:r,timeout:n===void 0?6e4:Math.min(n,6e4),encoding:"utf-8",stdio:["pipe","pipe","pipe"]})}catch(i){return{stdout:"",stderr:`Compilation failed:
71
- ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#i([s],r,r,n)}async#i(e,r,n,o,s=!1){return new Promise(i=>{let a=Zt&&["tsx","ts-node","elixir"].includes(e[0]),c=e[0],u;Zt&&e.length===2&&e[1]?u=[e[1].replace(/\\/g,"/")]:u=Zt?e.slice(1).map(_=>_.replace(/\\/g,"/")):e.slice(1);let l=Qj(c,u,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#u(n),shell:a,detached:!Zt,...Fk(process.platform)}),d=!1,p=!1,f=o===void 0?void 0:setTimeout(()=>{if(d=!0,s){p=!0,l.pid&&this.#s.add(l.pid),l.unref(),l.stdout.destroy(),l.stderr.destroy();let _=Buffer.concat(m).toString("utf-8"),x=Buffer.concat(h).toString("utf-8");i({stdout:_,stderr:x,exitCode:0,timedOut:!0,backgrounded:!0})}else Vh(l)},o),m=[],h=[],g=0,y=!1;l.stdout.on("data",_=>{g+=_.length,g<=this.#e?m.push(_):y||(y=!0,Vh(l))}),l.stderr.on("data",_=>{g+=_.length,g<=this.#e?h.push(_):y||(y=!0,Vh(l))}),l.on("close",_=>{if(clearTimeout(f),p)return;let x=Buffer.concat(m).toString("utf-8"),k=Buffer.concat(h).toString("utf-8");y&&(k+=`
72
- [output capped at ${(this.#e/1024/1024).toFixed(0)}MB \u2014 process killed]`),i({stdout:x,stderr:k,exitCode:d?1:_??1,timedOut:d})}),l.on("error",_=>{clearTimeout(f),!p&&i({stdout:"",stderr:_.message,exitCode:1,timedOut:!1})})})}#u(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",Zt&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=Zt?"":"/usr/local/bin:/usr/bin:/bin"),Zt){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=Zt?[]:["/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(jk(i)){o.SSL_CERT_FILE=i;break}}return o}#l(e,r,n){let o=JSON.stringify(e);switch(r){case"javascript":case"typescript":return`const FILE_CONTENT_PATH = ${o};
70
+ ${r}`);let o=iu(e,Fk(n,process.platform,n==="shell"?this.#n.shell:null));return n==="shell"?zk(o,r,{encoding:"utf-8",mode:448}):zk(o,r,"utf-8"),o}async#c(e,r,n){let o=Ht?".exe":"",s=e.replace(/\.rs$/,"")+o;try{Mk("rustc",[e,"-o",s],{cwd:r,timeout:n===void 0?6e4:Math.min(n,6e4),encoding:"utf-8",stdio:["pipe","pipe","pipe"]})}catch(i){return{stdout:"",stderr:`Compilation failed:
71
+ ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#i([s],r,r,n)}async#i(e,r,n,o,s=!1){return new Promise(i=>{let a=Ht&&["tsx","ts-node","elixir"].includes(e[0]),c=e[0],u;Ht&&e.length===2&&e[1]?u=[e[1].replace(/\\/g,"/")]:u=Ht?e.slice(1).map(_=>_.replace(/\\/g,"/")):e.slice(1);let l=Qj(c,u,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#u(n),shell:a,detached:!Ht,...Uk(process.platform)}),d=!1,p=!1,f=o===void 0?void 0:setTimeout(()=>{if(d=!0,s){p=!0,l.pid&&this.#s.add(l.pid),l.unref(),l.stdout.destroy(),l.stderr.destroy();let _=Buffer.concat(m).toString("utf-8"),x=Buffer.concat(h).toString("utf-8");i({stdout:_,stderr:x,exitCode:0,timedOut:!0,backgrounded:!0})}else Vh(l)},o),m=[],h=[],g=0,y=!1;l.stdout.on("data",_=>{g+=_.length,g<=this.#e?m.push(_):y||(y=!0,Vh(l))}),l.stderr.on("data",_=>{g+=_.length,g<=this.#e?h.push(_):y||(y=!0,Vh(l))}),l.on("close",_=>{if(clearTimeout(f),p)return;let x=Buffer.concat(m).toString("utf-8"),k=Buffer.concat(h).toString("utf-8");y&&(k+=`
72
+ [output capped at ${(this.#e/1024/1024).toFixed(0)}MB \u2014 process killed]`),i({stdout:x,stderr:k,exitCode:d?1:_??1,timedOut:d})}),l.on("error",_=>{clearTimeout(f),!p&&i({stdout:"",stderr:_.message,exitCode:1,timedOut:!1})})})}#u(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",Ht&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=Ht?"":"/usr/local/bin:/usr/bin:/bin"),Ht){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=Ht?[]:["/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(Dk(i)){o.SSL_CERT_FILE=i;break}}return o}#l(e,r,n){let o=JSON.stringify(e);switch(r){case"javascript":case"typescript":return`const FILE_CONTENT_PATH = ${o};
73
73
  const file_path = FILE_CONTENT_PATH;
74
74
  const FILE_CONTENT = require("fs").readFileSync(FILE_CONTENT_PATH, "utf-8");
75
75
  ${n}`;case"python":return`FILE_CONTENT_PATH = ${o}
@@ -124,7 +124,7 @@ FILE_CONTENT <- paste(FILE_CONTENT, collapse="\\n")
124
124
  ${n}`;case"elixir":return`file_content_path = ${o}
125
125
  file_path = file_content_path
126
126
  file_content = File.read!(file_content_path)
127
- ${n}`}}}});import{cpus as sD}from"node:os";async function Gh(t,e){let{concurrency:r,capByCpuCount:n=!1,onSettled:o}=e;if(t.length===0)return{settled:[],effectiveConcurrency:0,capped:!1};let s=Math.max(1,r),i=n?Math.max(1,sD().length):s,a=Math.min(s,i,t.length),c=a<s,u=new Array(t.length),l=0;async function d(){for(;;){let f=l++;if(f>=t.length)return;try{let m=await t[f].run();u[f]={status:"fulfilled",value:m}}catch(m){u[f]={status:"rejected",reason:m}}o?.(f,u[f])}}let p=[];for(let f=0;f<a;f++)p.push(d());return await Promise.allSettled(p),{settled:u,effectiveConcurrency:a,capped:c}}var Zk=v(()=>{"use strict"});var Bk={};Ze(Bk,{BunSQLiteAdapter:()=>cu,NodeSQLiteAdapter:()=>uu,SQLiteBase:()=>Ci,applyWALPragmas:()=>es,cleanOrphanedWALFiles:()=>ts,closeDB:()=>rs,defaultDBPath:()=>Jh,deleteDBFiles:()=>lu,isSQLiteCorruptionError:()=>du,loadDatabase:()=>zr,renameCorruptDB:()=>qk,withRetry:()=>dn});import{createRequire as iD}from"node:module";import{existsSync as aD,unlinkSync as Hk,renameSync as cD}from"node:fs";import{tmpdir as uD}from"node:os";import{join as lD}from"node:path";function zr(){if(!Qo){let t=iD(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;Qo=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0}),i=new cu(s);return o?.timeout&&i.pragma(`busy_timeout = ${o.timeout}`),i}}else if(process.platform==="linux")try{let{DatabaseSync:e}=t(["node","sqlite"].join(":"));Qo=function(n,o){let s=new e(n,{readOnly:o?.readonly??!1});return new uu(s)}}catch{Qo=t("better-sqlite3")}else Qo=t("better-sqlite3")}return Qo}function es(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL");try{t.pragma("mmap_size = 268435456")}catch{}}function ts(t){if(!aD(t))for(let e of["-wal","-shm"])try{Hk(t+e)}catch{}}function lu(t){for(let e of["","-wal","-shm"])try{Hk(t+e)}catch{}}function rs(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}function Jh(t="context-mode"){return lD(uD(),`${t}-${process.pid}.db`)}function dn(t,e=[100,500,2e3]){let r;for(let n=0;n<=e.length;n++)try{return t()}catch(o){let s=o instanceof Error?o.message:String(o);if(!s.includes("SQLITE_BUSY")&&!s.includes("database is locked"))throw o;if(r=o instanceof Error?o:new Error(s),n<e.length){let i=e[n],a=Date.now();for(;Date.now()-a<i;);}}throw new Error(`SQLITE_BUSY: database is locked after ${e.length} retries. Original error: ${r?.message}`)}function du(t){return t.includes("SQLITE_CORRUPT")||t.includes("SQLITE_NOTADB")||t.includes("database disk image is malformed")||t.includes("file is not a database")}function qk(t){let e=Date.now();for(let r of["","-wal","-shm"])try{cD(t+r,`${t}${r}.corrupt-${e}`)}catch{}}var cu,uu,Qo,Ri,Kh,Ci,ns=v(()=>{"use strict";cu=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()}},uu=class{#e;constructor(e){this.#e=e}pragma(e){let n=this.#e.prepare(`PRAGMA ${e}`).all();if(!n||n.length===0)return;if(n.length>1)return n;let o=Object.values(n[0]);return o.length===1?o[0]:n[0]}exec(e){return this.#e.exec(e),this}prepare(e){let r=this.#e.prepare(e);return{run:(...n)=>r.run(...n),get:(...n)=>r.get(...n),all:(...n)=>r.all(...n),iterate:(...n)=>typeof r.iterate=="function"?r.iterate(...n):r.all(...n)[Symbol.iterator]()}}transaction(e){return(...r)=>{this.#e.exec("BEGIN");try{let n=e(...r);return this.#e.exec("COMMIT"),n}catch(n){throw this.#e.exec("ROLLBACK"),n}}}close(){this.#e.close()}},Qo=null;Ri=Symbol.for("__context_mode_live_dbs__"),Kh=(()=>{let t=globalThis;return t[Ri]||(t[Ri]=new Set,process.on("exit",()=>{for(let e of t[Ri])rs(e);t[Ri].clear()})),t[Ri]})(),Ci=class{#e;#t;constructor(e){let r=zr();this.#e=e,ts(e);let n;try{n=new r(e,{timeout:3e4}),es(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(du(s)){qk(e),ts(e);try{n=new r(e,{timeout:3e4}),es(n)}catch(i){throw new Error(`Failed to create fresh DB after renaming corrupt file: ${i instanceof Error?i.message:String(i)}`)}}else throw o}this.#t=n,Kh.add(this.#t),this.initSchema(),this.prepareStatements()}get db(){return this.#t}get dbPath(){return this.#e}close(){Kh.delete(this.#t),rs(this.#t)}withRetry(e){return dn(e)}cleanup(){Kh.delete(this.#t),rs(this.#t),lu(this.#e)}}});import{readFileSync as Vk,readdirSync as Kk,unlinkSync as Xh,existsSync as Yh,statSync as pu}from"node:fs";import{createHash as Wk}from"node:crypto";import{tmpdir as Jk}from"node:os";import{join as Qh}from"node:path";function Yk(t){let e=new Set,r=[];for(let n of t){let o=n.toLowerCase();e.has(o)||(e.add(o),r.push(n))}return r}function dD(t,e="AND"){let r=Yk(t.replace(/['"(){}[\]*:^~]/g," ").split(/\s+/).filter(s=>s.length>0&&!["AND","OR","NOT","NEAR"].includes(s.toUpperCase())));if(r.length===0)return'""';let n=r.filter(s=>!os.has(s.toLowerCase()));return(n.length>0?n:r).map(s=>`"${s}"`).join(e==="OR"?" OR ":" ")}function pD(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=Yk(r.split(/\s+/).filter(i=>i.length>=3));if(n.length===0)return"";let o=n.filter(i=>!os.has(i.toLowerCase()));return(o.length>0?o:n).map(i=>`"${i}"`).join(e==="OR"?" OR ":" ")}function mD(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 fD(t){return t<=4?1:t<=12?2:3}function eg(){let t=Jk(),e=0;try{let r=Kk(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=Qh(t,n);for(let a of["","-wal","-shm"])try{Xh(i+a)}catch{}e++}}}catch{}return e}function tg(t,e){let r=0;try{if(!Yh(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=Kk(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=Qh(t,s),c=pu(i).mtimeMs<n;if(!c){let u=i+"-wal";if(Yh(u))try{let l=pu(u);l.size>0&&Date.now()-l.mtimeMs>36e5&&(c=!0)}catch{}}if(c){for(let u of["","-wal","-shm"])try{Xh(i+u)}catch{}r++}}catch{}}catch{}return r}function hD(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function gD(t,e,r=30){if(t.length<2||e.length<2)return 0;let n=0,o=Math.min(t.length,e.length)-1;for(let s=0;s<o;s++){let i=t[s],a=t[s+1],c=e[s].length,u=0;for(let l of i){let d=l+c,p=d+r;for(;u<a.length&&a[u]<d;)u++;u<a.length&&a[u]<=p&&(n++,u++)}}return n}function _D(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 os,Gk,mu,Xk=v(()=>{"use strict";ns();os=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"]);Gk=4096;mu=class t{#e;#t;#n;#s;#o;#a;#c;#i;#u;#l;#m;#f;#h;#g;#_;#y;#x;#v;#b;#S;#k;#w;#$;#E;#T;#P;#R;#C;#O;#I;#A;#N;#z=0;static OPTIMIZE_EVERY=50;#r=new Map;static FUZZY_CACHE_SIZE=256;constructor(e){let r=zr();this.#t=e??Qh(Jk(),`context-mode-${process.pid}.db`),ts(this.#t);let n;try{n=new r(this.#t,{timeout:3e4}),es(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(du(s)){lu(this.#t),ts(this.#t);try{n=new r(this.#t,{timeout:3e4}),es(n)}catch(i){throw new Error(`Failed to create fresh DB after deleting corrupt file: ${i instanceof Error?i.message:String(i)}`)}}else throw o}this.#e=n,this.#U(),this.#Z()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{Xh(this.#t+e)}catch{}}#U(){this.#e.exec(`
127
+ ${n}`}}}});import{cpus as sD}from"node:os";async function Gh(t,e){let{concurrency:r,capByCpuCount:n=!1,onSettled:o}=e;if(t.length===0)return{settled:[],effectiveConcurrency:0,capped:!1};let s=Math.max(1,r),i=n?Math.max(1,sD().length):s,a=Math.min(s,i,t.length),c=a<s,u=new Array(t.length),l=0;async function d(){for(;;){let f=l++;if(f>=t.length)return;try{let m=await t[f].run();u[f]={status:"fulfilled",value:m}}catch(m){u[f]={status:"rejected",reason:m}}o?.(f,u[f])}}let p=[];for(let f=0;f<a;f++)p.push(d());return await Promise.allSettled(p),{settled:u,effectiveConcurrency:a,capped:c}}var Hk=v(()=>{"use strict"});var Vk={};Ze(Vk,{BunSQLiteAdapter:()=>au,NodeSQLiteAdapter:()=>cu,SQLiteBase:()=>Ci,applyWALPragmas:()=>es,cleanOrphanedWALFiles:()=>ts,closeDB:()=>rs,defaultDBPath:()=>Jh,deleteDBFiles:()=>uu,isSQLiteCorruptionError:()=>lu,loadDatabase:()=>zr,renameCorruptDB:()=>Bk,withRetry:()=>dn});import{createRequire as iD}from"node:module";import{existsSync as aD,unlinkSync as qk,renameSync as cD}from"node:fs";import{tmpdir as uD}from"node:os";import{join as lD}from"node:path";function zr(){if(!Qo){let t=iD(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;Qo=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0}),i=new au(s);return o?.timeout&&i.pragma(`busy_timeout = ${o.timeout}`),i}}else if(process.platform==="linux")try{let{DatabaseSync:e}=t(["node","sqlite"].join(":"));Qo=function(n,o){let s=new e(n,{readOnly:o?.readonly??!1});return new cu(s)}}catch{Qo=t("better-sqlite3")}else Qo=t("better-sqlite3")}return Qo}function es(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL");try{t.pragma("mmap_size = 268435456")}catch{}}function ts(t){if(!aD(t))for(let e of["-wal","-shm"])try{qk(t+e)}catch{}}function uu(t){for(let e of["","-wal","-shm"])try{qk(t+e)}catch{}}function rs(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}function Jh(t="context-mode"){return lD(uD(),`${t}-${process.pid}.db`)}function dn(t,e=[100,500,2e3]){let r;for(let n=0;n<=e.length;n++)try{return t()}catch(o){let s=o instanceof Error?o.message:String(o);if(!s.includes("SQLITE_BUSY")&&!s.includes("database is locked"))throw o;if(r=o instanceof Error?o:new Error(s),n<e.length){let i=e[n],a=Date.now();for(;Date.now()-a<i;);}}throw new Error(`SQLITE_BUSY: database is locked after ${e.length} retries. Original error: ${r?.message}`)}function lu(t){return t.includes("SQLITE_CORRUPT")||t.includes("SQLITE_NOTADB")||t.includes("database disk image is malformed")||t.includes("file is not a database")}function Bk(t){let e=Date.now();for(let r of["","-wal","-shm"])try{cD(t+r,`${t}${r}.corrupt-${e}`)}catch{}}var au,cu,Qo,Ri,Kh,Ci,ns=v(()=>{"use strict";au=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()}},cu=class{#e;constructor(e){this.#e=e}pragma(e){let n=this.#e.prepare(`PRAGMA ${e}`).all();if(!n||n.length===0)return;if(n.length>1)return n;let o=Object.values(n[0]);return o.length===1?o[0]:n[0]}exec(e){return this.#e.exec(e),this}prepare(e){let r=this.#e.prepare(e);return{run:(...n)=>r.run(...n),get:(...n)=>r.get(...n),all:(...n)=>r.all(...n),iterate:(...n)=>typeof r.iterate=="function"?r.iterate(...n):r.all(...n)[Symbol.iterator]()}}transaction(e){return(...r)=>{this.#e.exec("BEGIN");try{let n=e(...r);return this.#e.exec("COMMIT"),n}catch(n){throw this.#e.exec("ROLLBACK"),n}}}close(){this.#e.close()}},Qo=null;Ri=Symbol.for("__context_mode_live_dbs__"),Kh=(()=>{let t=globalThis;return t[Ri]||(t[Ri]=new Set,process.on("exit",()=>{for(let e of t[Ri])rs(e);t[Ri].clear()})),t[Ri]})(),Ci=class{#e;#t;constructor(e){let r=zr();this.#e=e,ts(e);let n;try{n=new r(e,{timeout:3e4}),es(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(lu(s)){Bk(e),ts(e);try{n=new r(e,{timeout:3e4}),es(n)}catch(i){throw new Error(`Failed to create fresh DB after renaming corrupt file: ${i instanceof Error?i.message:String(i)}`)}}else throw o}this.#t=n,Kh.add(this.#t),this.initSchema(),this.prepareStatements()}get db(){return this.#t}get dbPath(){return this.#e}close(){Kh.delete(this.#t),rs(this.#t)}withRetry(e){return dn(e)}cleanup(){Kh.delete(this.#t),rs(this.#t),uu(this.#e)}}});import{readFileSync as Wk,readdirSync as Jk,unlinkSync as Xh,existsSync as Yh,statSync as du}from"node:fs";import{createHash as Gk}from"node:crypto";import{tmpdir as Yk}from"node:os";import{join as Qh}from"node:path";function Xk(t){let e=new Set,r=[];for(let n of t){let o=n.toLowerCase();e.has(o)||(e.add(o),r.push(n))}return r}function dD(t,e="AND"){let r=Xk(t.replace(/['"(){}[\]*:^~]/g," ").split(/\s+/).filter(s=>s.length>0&&!["AND","OR","NOT","NEAR"].includes(s.toUpperCase())));if(r.length===0)return'""';let n=r.filter(s=>!os.has(s.toLowerCase()));return(n.length>0?n:r).map(s=>`"${s}"`).join(e==="OR"?" OR ":" ")}function pD(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=Xk(r.split(/\s+/).filter(i=>i.length>=3));if(n.length===0)return"";let o=n.filter(i=>!os.has(i.toLowerCase()));return(o.length>0?o:n).map(i=>`"${i}"`).join(e==="OR"?" OR ":" ")}function mD(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 fD(t){return t<=4?1:t<=12?2:3}function eg(){let t=Yk(),e=0;try{let r=Jk(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=Qh(t,n);for(let a of["","-wal","-shm"])try{Xh(i+a)}catch{}e++}}}catch{}return e}function tg(t,e){let r=0;try{if(!Yh(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=Jk(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=Qh(t,s),c=du(i).mtimeMs<n;if(!c){let u=i+"-wal";if(Yh(u))try{let l=du(u);l.size>0&&Date.now()-l.mtimeMs>36e5&&(c=!0)}catch{}}if(c){for(let u of["","-wal","-shm"])try{Xh(i+u)}catch{}r++}}catch{}}catch{}return r}function hD(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function gD(t,e,r=30){if(t.length<2||e.length<2)return 0;let n=0,o=Math.min(t.length,e.length)-1;for(let s=0;s<o;s++){let i=t[s],a=t[s+1],c=e[s].length,u=0;for(let l of i){let d=l+c,p=d+r;for(;u<a.length&&a[u]<d;)u++;u<a.length&&a[u]<=p&&(n++,u++)}}return n}function _D(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 os,Kk,pu,Qk=v(()=>{"use strict";ns();os=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"]);Kk=4096;pu=class t{#e;#t;#n;#s;#o;#a;#c;#i;#u;#l;#m;#f;#h;#g;#_;#y;#x;#v;#b;#S;#k;#w;#$;#E;#T;#P;#R;#C;#O;#I;#A;#N;#z=0;static OPTIMIZE_EVERY=50;#r=new Map;static FUZZY_CACHE_SIZE=256;constructor(e){let r=zr();this.#t=e??Qh(Yk(),`context-mode-${process.pid}.db`),ts(this.#t);let n;try{n=new r(this.#t,{timeout:3e4}),es(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(lu(s)){uu(this.#t),ts(this.#t);try{n=new r(this.#t,{timeout:3e4}),es(n)}catch(i){throw new Error(`Failed to create fresh DB after deleting corrupt file: ${i instanceof Error?i.message:String(i)}`)}}else throw o}this.#e=n,this.#U(),this.#Z()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{Xh(this.#t+e)}catch{}}#U(){this.#e.exec(`
128
128
  CREATE TABLE IF NOT EXISTS sources (
129
129
  id INTEGER PRIMARY KEY AUTOINCREMENT,
130
130
  label TEXT NOT NULL,
@@ -364,7 +364,7 @@ ${n}`}}}});import{cpus as sD}from"node:os";async function Gh(t,e){let{concurrenc
364
364
  (SELECT COUNT(*) FROM sources) AS sources,
365
365
  (SELECT COUNT(*) FROM chunks) AS chunks,
366
366
  (SELECT COUNT(*) FROM chunks WHERE content_type = 'code') AS codeChunks
367
- `),this.#I=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),this.#A=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),this.#N=this.#e.prepare("DELETE FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days')")}index(e){let{content:r,path:n,source:o}=e,s=typeof r=="string"&&r.length>0;if(!s&&!n)throw new Error("Either content or path must be provided");let i=s?r:Vk(n,"utf-8"),a=o??n??"untitled",c=this.#B(i),u=n??void 0,l=u?Wk("sha256").update(i).digest("hex"):void 0;return dn(()=>this.#d(c,a,i,u,l))}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#d([],r,"");let o=this.#V(e,n);return dn(()=>this.#d(o.map(s=>({...s,hasCode:!1})),r,e))}indexJSON(e,r,n=Gk){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.#F(o,[],s,n),s.length===0?this.indexPlainText(e,r):dn(()=>this.#d(s,r,e))}#d(e,r,n,o,s){let i=e.filter(u=>u.hasCode).length,c=this.#e.transaction(()=>{if(this.#i.run(r),this.#u.run(r),this.#l.run(r),e.length===0){let p=this.#n.run(r,o??null,s??null);return Number(p.lastInsertRowid)}let u=this.#s.run(r,e.length,i,o??null,s??null),l=Number(u.lastInsertRowid),d=new Date().toISOString();for(let p of e){let f=p.hasCode?"code":"prose";this.#o.run(p.title,p.content,l,f,null,null,null,d),this.#a.run(p.title,p.content,l,f,null,null,null,d)}return l})();return n&&this.#q(n),this.#z++,this.#z%t.OPTIMIZE_EVERY===0&&this.#L(),{sourceId:c,label:r,totalChunks:e.length,codeChunks:i}}#j(e){return e.map(r=>({title:r.title,content:r.content,source:r.label,rank:r.rank,contentType:r.content_type,highlighted:r.highlighted,timestamp:r.timestamp??void 0}))}#p(e,r){return r==="exact"?e:`%${e}%`}search(e,r=3,n,o="AND",s,i="like"){let a=dD(e,o),c,u;return n&&s?(c=i==="exact"?this.#S:this.#b,u=[a,this.#p(n,i),s,r]):n?(c=i==="exact"?this.#h:this.#f,u=[a,this.#p(n,i),r]):s?(c=this.#v,u=[a,s,r]):(c=this.#m,u=[a,r]),dn(()=>this.#j(c.all(...u)))}searchTrigram(e,r=3,n,o="AND",s,i="like"){let a=pD(e,o);if(!a)return[];let c,u;return n&&s?(c=i==="exact"?this.#$:this.#w,u=[a,this.#p(n,i),s,r]):n?(c=i==="exact"?this.#y:this.#_,u=[a,this.#p(n,i),r]):s?(c=this.#k,u=[a,s,r]):(c=this.#g,u=[a,r]),dn(()=>this.#j(c.all(...u)))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;if(this.#r.has(r)){let u=this.#r.get(r)??null;return this.#r.delete(r),this.#r.set(r,u),u}let n=fD(r.length),o=this.#x.all(r.length-n,r.length+n),s=null,i=n+1,a=!1;for(let{word:u}of o){if(u===r){a=!0;break}let l=mD(r,u);l<i&&(i=l,s=u)}let c=a?null:i<=n?s:null;if(this.#r.size>=t.FUZZY_CACHE_SIZE){let u=this.#r.keys().next().value;u!==void 0&&this.#r.delete(u)}return this.#r.set(r,c),c}#D(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=p=>`${p.source}::${p.title}`;for(let[p,f]of c.entries()){let m=d(f),h=l.get(m);h?h.score+=1/(60+p+1):l.set(m,{result:f,score:1/(60+p+1)})}for(let[p,f]of u.entries()){let m=d(f),h=l.get(m);h?h.score+=1/(60+p+1):l.set(m,{result:f,score:1/(60+p+1)})}return Array.from(l.values()).sort((p,f)=>f.score-p.score).slice(0,r).map(({result:p,score:f})=>({...p,rank:-f}))}#M(e,r){let n=r.toLowerCase().split(/\s+/).filter(i=>i.length>=2),o=n.filter(i=>!os.has(i)),s=o.length>0?o:n;return e.map(i=>{let a=i.title.toLowerCase(),c=s.filter(f=>a.includes(f)).length,u=i.contentType==="code"?.6:.3,l=c>0?u*(c/s.length):0,d=0,p=0;if(s.length>=2){let f=i.content.toLowerCase(),m=s.map(h=>hD(f,h));if(!m.some(h=>h.length===0)){d=1/(1+_D(m)/Math.max(f.length,1));let g=gD(m,s);p=.5*Math.min(1,g/4)}}return{result:i,boost:l+d+p}}).sort((i,a)=>a.boost-i.boost||i.result.rank-a.result.rank).map(({result:i})=>i)}searchWithFallback(e,r=3,n,o,s="like"){this.#H();let i=this.#D(e,r,n,o,s);if(i.length>0)return this.#M(i,e).map(p=>({...p,matchLayer:"rrf"}));let a=e.toLowerCase().trim().split(/\s+/).filter(d=>d.length>=3&&!os.has(d)),c=a.join(" "),l=a.map(d=>this.fuzzyCorrect(d)??d).join(" ");if(l!==c){let d=this.#D(l,r,n,o,s);if(d.length>0)return this.#M(d,l).map(f=>({...f,matchLayer:"rrf-fuzzy"}))}return[]}lastRefreshCount=0;#H(){this.lastRefreshCount=0;let e=this.#e.prepare("SELECT label, file_path, content_hash, indexed_at FROM sources WHERE file_path IS NOT NULL").all();for(let r of e)try{if(!Yh(r.file_path))continue;let n=pu(r.file_path).mtime,o=new Date(r.indexed_at+"Z");if(n<=o)continue;let s=Vk(r.file_path,"utf-8");if(Wk("sha256").update(s).digest("hex")===r.content_hash)continue;this.index({path:r.file_path,source:r.label}),this.lastRefreshCount++}catch{}}getSourceMeta(e){let r=this.#O.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at,filePath:r.file_path??null,contentHash:r.content_hash??null}:null}listSources(){return this.#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.#P.get(e);if(!n||n.chunk_count<3)return[];let o=n.chunk_count,s=2,i=Math.max(3,Math.ceil(o*.4)),a=new Map;for(let l of this.#R.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(p=>p.length>=3&&!os.has(p)));for(let p of d)a.set(p,(a.get(p)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let p=Math.log(o/d),f=Math.min(l.length/20,.5),m=/[_]/.test(l),h=l.length>=12,g=m?1.5:h?.8:0;return{word:l,score:p+f+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#C.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}cleanupStaleSources(e){return this.#e.transaction(o=>(this.#I.run(o),this.#A.run(o),this.#N.run(o)))(e).changes}getDBSizeBytes(){try{return pu(this.#t).size}catch{return 0}}#L(){try{this.#e.exec("INSERT INTO chunks(chunks) VALUES('optimize')"),this.#e.exec("INSERT INTO chunks_trigram(chunks_trigram) VALUES('optimize')")}catch{}}close(){this.#L(),rs(this.#e)}#q(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(s=>s.length>=3&&!os.has(s)),n=[...new Set(r)],o=0;this.#e.transaction(()=>{for(let s of n){let i=this.#c.run(s);o+=i.changes}})(),o>0&&this.#r.clear()}#B(e,r=Gk){let n=[],o=e.split(`
367
+ `),this.#I=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),this.#A=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),this.#N=this.#e.prepare("DELETE FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days')")}index(e){let{content:r,path:n,source:o}=e,s=typeof r=="string"&&r.length>0;if(!s&&!n)throw new Error("Either content or path must be provided");let i=s?r:Wk(n,"utf-8"),a=o??n??"untitled",c=this.#B(i),u=n??void 0,l=u?Gk("sha256").update(i).digest("hex"):void 0;return dn(()=>this.#d(c,a,i,u,l))}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#d([],r,"");let o=this.#V(e,n);return dn(()=>this.#d(o.map(s=>({...s,hasCode:!1})),r,e))}indexJSON(e,r,n=Kk){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.#F(o,[],s,n),s.length===0?this.indexPlainText(e,r):dn(()=>this.#d(s,r,e))}#d(e,r,n,o,s){let i=e.filter(u=>u.hasCode).length,c=this.#e.transaction(()=>{if(this.#i.run(r),this.#u.run(r),this.#l.run(r),e.length===0){let p=this.#n.run(r,o??null,s??null);return Number(p.lastInsertRowid)}let u=this.#s.run(r,e.length,i,o??null,s??null),l=Number(u.lastInsertRowid),d=new Date().toISOString();for(let p of e){let f=p.hasCode?"code":"prose";this.#o.run(p.title,p.content,l,f,null,null,null,d),this.#a.run(p.title,p.content,l,f,null,null,null,d)}return l})();return n&&this.#q(n),this.#z++,this.#z%t.OPTIMIZE_EVERY===0&&this.#L(),{sourceId:c,label:r,totalChunks:e.length,codeChunks:i}}#j(e){return e.map(r=>({title:r.title,content:r.content,source:r.label,rank:r.rank,contentType:r.content_type,highlighted:r.highlighted,timestamp:r.timestamp??void 0}))}#p(e,r){return r==="exact"?e:`%${e}%`}search(e,r=3,n,o="AND",s,i="like"){let a=dD(e,o),c,u;return n&&s?(c=i==="exact"?this.#S:this.#b,u=[a,this.#p(n,i),s,r]):n?(c=i==="exact"?this.#h:this.#f,u=[a,this.#p(n,i),r]):s?(c=this.#v,u=[a,s,r]):(c=this.#m,u=[a,r]),dn(()=>this.#j(c.all(...u)))}searchTrigram(e,r=3,n,o="AND",s,i="like"){let a=pD(e,o);if(!a)return[];let c,u;return n&&s?(c=i==="exact"?this.#$:this.#w,u=[a,this.#p(n,i),s,r]):n?(c=i==="exact"?this.#y:this.#_,u=[a,this.#p(n,i),r]):s?(c=this.#k,u=[a,s,r]):(c=this.#g,u=[a,r]),dn(()=>this.#j(c.all(...u)))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;if(this.#r.has(r)){let u=this.#r.get(r)??null;return this.#r.delete(r),this.#r.set(r,u),u}let n=fD(r.length),o=this.#x.all(r.length-n,r.length+n),s=null,i=n+1,a=!1;for(let{word:u}of o){if(u===r){a=!0;break}let l=mD(r,u);l<i&&(i=l,s=u)}let c=a?null:i<=n?s:null;if(this.#r.size>=t.FUZZY_CACHE_SIZE){let u=this.#r.keys().next().value;u!==void 0&&this.#r.delete(u)}return this.#r.set(r,c),c}#D(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=p=>`${p.source}::${p.title}`;for(let[p,f]of c.entries()){let m=d(f),h=l.get(m);h?h.score+=1/(60+p+1):l.set(m,{result:f,score:1/(60+p+1)})}for(let[p,f]of u.entries()){let m=d(f),h=l.get(m);h?h.score+=1/(60+p+1):l.set(m,{result:f,score:1/(60+p+1)})}return Array.from(l.values()).sort((p,f)=>f.score-p.score).slice(0,r).map(({result:p,score:f})=>({...p,rank:-f}))}#M(e,r){let n=r.toLowerCase().split(/\s+/).filter(i=>i.length>=2),o=n.filter(i=>!os.has(i)),s=o.length>0?o:n;return e.map(i=>{let a=i.title.toLowerCase(),c=s.filter(f=>a.includes(f)).length,u=i.contentType==="code"?.6:.3,l=c>0?u*(c/s.length):0,d=0,p=0;if(s.length>=2){let f=i.content.toLowerCase(),m=s.map(h=>hD(f,h));if(!m.some(h=>h.length===0)){d=1/(1+_D(m)/Math.max(f.length,1));let g=gD(m,s);p=.5*Math.min(1,g/4)}}return{result:i,boost:l+d+p}}).sort((i,a)=>a.boost-i.boost||i.result.rank-a.result.rank).map(({result:i})=>i)}searchWithFallback(e,r=3,n,o,s="like"){this.#H();let i=this.#D(e,r,n,o,s);if(i.length>0)return this.#M(i,e).map(p=>({...p,matchLayer:"rrf"}));let a=e.toLowerCase().trim().split(/\s+/).filter(d=>d.length>=3&&!os.has(d)),c=a.join(" "),l=a.map(d=>this.fuzzyCorrect(d)??d).join(" ");if(l!==c){let d=this.#D(l,r,n,o,s);if(d.length>0)return this.#M(d,l).map(f=>({...f,matchLayer:"rrf-fuzzy"}))}return[]}lastRefreshCount=0;#H(){this.lastRefreshCount=0;let e=this.#e.prepare("SELECT label, file_path, content_hash, indexed_at FROM sources WHERE file_path IS NOT NULL").all();for(let r of e)try{if(!Yh(r.file_path))continue;let n=du(r.file_path).mtime,o=new Date(r.indexed_at+"Z");if(n<=o)continue;let s=Wk(r.file_path,"utf-8");if(Gk("sha256").update(s).digest("hex")===r.content_hash)continue;this.index({path:r.file_path,source:r.label}),this.lastRefreshCount++}catch{}}getSourceMeta(e){let r=this.#O.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at,filePath:r.file_path??null,contentHash:r.content_hash??null}:null}listSources(){return this.#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.#P.get(e);if(!n||n.chunk_count<3)return[];let o=n.chunk_count,s=2,i=Math.max(3,Math.ceil(o*.4)),a=new Map;for(let l of this.#R.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(p=>p.length>=3&&!os.has(p)));for(let p of d)a.set(p,(a.get(p)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let p=Math.log(o/d),f=Math.min(l.length/20,.5),m=/[_]/.test(l),h=l.length>=12,g=m?1.5:h?.8:0;return{word:l,score:p+f+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#C.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}cleanupStaleSources(e){return this.#e.transaction(o=>(this.#I.run(o),this.#A.run(o),this.#N.run(o)))(e).changes}getDBSizeBytes(){try{return du(this.#t).size}catch{return 0}}#L(){try{this.#e.exec("INSERT INTO chunks(chunks) VALUES('optimize')"),this.#e.exec("INSERT INTO chunks_trigram(chunks_trigram) VALUES('optimize')")}catch{}}close(){this.#L(),rs(this.#e)}#q(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(s=>s.length>=3&&!os.has(s)),n=[...new Set(r)],o=0;this.#e.transaction(()=>{for(let s of n){let i=this.#c.run(s);o+=i.changes}})(),o>0&&this.#r.clear()}#B(e,r=Kk){let n=[],o=e.split(`
368
368
  `),s=[],i=[],a="",c=()=>{let l=i.join(`
369
369
  `).trim();if(l.length===0)return;let d=this.#J(s,a),p=i.some(y=>/^`{3,}/.test(y));if(Buffer.byteLength(l)<=r){n.push({title:d,content:l,hasCode:p}),i=[];return}let f=l.split(/\n\n+/),m=[],h=1,g=()=>{if(m.length===0)return;let y=m.join(`
370
370
 
@@ -373,13 +373,13 @@ ${n}`}}}});import{cpus as sD}from"node:os";async function Gh(t,e){let{concurrenc
373
373
  `);Buffer.byteLength(_)>r&&m.length>1&&(m.pop(),g(),m=[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,m=d[2].trim();for(;s.length>0&&s[s.length-1].level>=f;)s.pop();s.push({level:f,text:m}),a=m,i.push(l),u++;continue}let p=l.match(/^(`{3,})(.*)?$/);if(p){let f=p[1],m=[l];for(u++;u<o.length;){if(m.push(o[u]),o[u].startsWith(f)&&o[u].trim()===f){u++;break}u++}i.push(...m);continue}i.push(l),u++}return c(),n}#V(e,r){let n=e.split(/\n\s*\n/);if(n.length>=3&&n.length<=200&&n.every(c=>Buffer.byteLength(c)<5e3))return n.map((c,u)=>{let l=c.trim();return{title:l.split(`
374
374
  `)[0].slice(0,80)||`Section ${u+1}`,content:l}}).filter(c=>c.content.length>0);let o=e.split(`
375
375
  `);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),p=u[0]?.trim().slice(0,80);s.push({title:p||`Lines ${l}-${d}`,content:u.join(`
376
- `)})}return s}#F(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.#F(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#K(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#W(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}#G(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])}`}#K(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#W(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#G(s,c,l,a,i);n.push({title:d,content:JSON.stringify(a,null,2),hasCode:!0})};for(let l=0;l<e.length;l++){a.push(e[l]);let d=JSON.stringify(a,null,2);Buffer.byteLength(d)>o&&a.length>1&&(a.pop(),u(l-1),a=[e[l]],c=l)}u(c+a.length-1)}#J(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}}});function rg(t,e){return t===void 0?e:`${t}::${e}`}var Qk=v(()=>{"use strict"});import{readFileSync as tw,realpathSync as yD}from"node:fs";import{resolve as Xn}from"node:path";import{homedir as rw}from"node:os";function nw(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function xD(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function vD(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function ew(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function bD(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=vD(o),a=ew(s);r=`^${i}(\\s${a})?$`}else r=`^${ew(t)}$`;return new RegExp(r,e?"i":"")}function SD(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 kD(t,e,r=!1){for(let n of e){let o=nw(n);if(o&&bD(o,r).test(t))return n}return null}function wD(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 ng(t){let e;try{e=tw(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"&&nw(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function og(t,e){let r=[];if(t){let s=Xn(t,".claude","settings.local.json"),i=ng(s);i&&r.push(i);let a=Xn(t,".claude","settings.json"),c=ng(a);c&&r.push(c)}let n=e??Xn(rw(),".claude","settings.json"),o=ng(n);return o&&r.push(o),r}function ow(t,e,r){let n=[],o=a=>{let c;try{c=tw(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 p of l){if(typeof p!="string")continue;let f=xD(p);f&&f.tool===t&&d.push(f.glob)}return d};if(e){let a=o(Xn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Xn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Xn(rw(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function sg(t,e,r=process.platform==="win32"){let n=wD(t);for(let o of n)for(let s of e){let i=kD(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function sw(t,e,r=process.platform==="win32",n){let o=i=>i.replace(/\\/g,"/"),s=new Set;if(s.add(o(t)),n){let i=Xn(n,t);s.add(o(i));try{s.add(o(yD(i)))}catch{}}for(let i of e)for(let a of i){let c=SD(a,r);for(let u of s)if(c.test(u))return{denied:!0,matchedPattern:a}}return{denied:!1}}function ED(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 iw(t,e){let r=$D[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(...ED(t)),n}var $D,aw=v(()=>{"use strict";$D={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 ig(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}
376
+ `)})}return s}#F(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.#F(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#K(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#W(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}#G(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])}`}#K(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#W(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#G(s,c,l,a,i);n.push({title:d,content:JSON.stringify(a,null,2),hasCode:!0})};for(let l=0;l<e.length;l++){a.push(e[l]);let d=JSON.stringify(a,null,2);Buffer.byteLength(d)>o&&a.length>1&&(a.pop(),u(l-1),a=[e[l]],c=l)}u(c+a.length-1)}#J(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}}});function rg(t,e){return t===void 0?e:`${t}::${e}`}var ew=v(()=>{"use strict"});import{readFileSync as rw,realpathSync as yD}from"node:fs";import{resolve as Xn}from"node:path";import{homedir as nw}from"node:os";function ow(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function xD(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function vD(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function tw(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function bD(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=vD(o),a=tw(s);r=`^${i}(\\s${a})?$`}else r=`^${tw(t)}$`;return new RegExp(r,e?"i":"")}function SD(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 kD(t,e,r=!1){for(let n of e){let o=ow(n);if(o&&bD(o,r).test(t))return n}return null}function wD(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 ng(t){let e;try{e=rw(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"&&ow(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function og(t,e){let r=[];if(t){let s=Xn(t,".claude","settings.local.json"),i=ng(s);i&&r.push(i);let a=Xn(t,".claude","settings.json"),c=ng(a);c&&r.push(c)}let n=e??Xn(nw(),".claude","settings.json"),o=ng(n);return o&&r.push(o),r}function sw(t,e,r){let n=[],o=a=>{let c;try{c=rw(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 p of l){if(typeof p!="string")continue;let f=xD(p);f&&f.tool===t&&d.push(f.glob)}return d};if(e){let a=o(Xn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Xn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Xn(nw(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function sg(t,e,r=process.platform==="win32"){let n=wD(t);for(let o of n)for(let s of e){let i=kD(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function iw(t,e,r=process.platform==="win32",n){let o=i=>i.replace(/\\/g,"/"),s=new Set;if(s.add(o(t)),n){let i=Xn(n,t);s.add(o(i));try{s.add(o(yD(i)))}catch{}}for(let i of e)for(let a of i){let c=SD(a,r);for(let u of s)if(c.test(u))return{denied:!0,matchedPattern:a}}return{denied:!1}}function ED(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 aw(t,e){let r=$D[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(...ED(t)),n}var $D,cw=v(()=>{"use strict";$D={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 ig(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}
377
377
 
378
378
  stdout:
379
379
  ${n}
380
380
 
381
381
  stderr:
382
- ${o}`}}var cw=v(()=>{"use strict"});import{execFileSync as TD}from"node:child_process";function PD(){if(process.platform==="win32")return NaN;let t=process.ppid;if(!t||t<=1)return NaN;try{let e=TD("ps",["-o","ppid=","-p",String(t)],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).trim(),r=parseInt(e,10);return Number.isFinite(r)?r:NaN}catch{return NaN}}function RD(t={}){let e=t.getPpid??(()=>process.ppid),r=t.readGrandparentPpid??PD,n=e(),o=r();return()=>{let s=e();return!(s!==n||s===0||s===1||!Number.isNaN(o)&&o>1&&r()===1)}}function uw(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??CD,n=!1,o=()=>{n||(n=!0,t.onShutdown())},s=setInterval(()=>{r()||o()},e);s.unref();let i=["SIGTERM","SIGINT"];process.platform!=="win32"&&i.push("SIGHUP");for(let c of i)process.on(c,o);let a=()=>{r()||o()};return process.stdin.isTTY||process.stdin.on("end",a),()=>{n=!0,clearInterval(s);for(let c of i)process.removeListener(c,o);process.stdin.removeListener("end",a)}}var CD,lw=v(()=>{"use strict";CD=RD()});import{createHash as ag}from"node:crypto";import{execFileSync as OD}from"node:child_process";function Ii(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX,e=process.cwd();if(Oi&&Oi.cwd===e&&Oi.envSuffix===t)return Oi.suffix;let r="";if(t!==void 0)r=t?`__${t}`:"";else try{let n=OD("git",["worktree","list","--porcelain"],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).split(/\r?\n/).find(o=>o.startsWith("worktree "))?.replace("worktree ","")?.trim();n&&e!==n&&(r=`__${ag("sha256").update(e).digest("hex").slice(0,8)}`)}catch{}return Oi={cwd:e,envSuffix:t,suffix:r},r}var Oi,dw,pw,U,Qn,cg=v(()=>{"use strict";ns();dw=1e3,pw=5,U={insertEvent:"insertEvent",getEvents:"getEvents",getEventsByType:"getEventsByType",getEventsByPriority:"getEventsByPriority",getEventsByTypeAndPriority:"getEventsByTypeAndPriority",getEventCount:"getEventCount",getLatestAttributedProject:"getLatestAttributedProject",checkDuplicate:"checkDuplicate",evictLowestPriority:"evictLowestPriority",updateMetaLastEvent:"updateMetaLastEvent",ensureSession:"ensureSession",getSessionStats:"getSessionStats",incrementCompactCount:"incrementCompactCount",upsertResume:"upsertResume",getResume:"getResume",markResumeConsumed:"markResumeConsumed",claimLatestUnconsumedResume:"claimLatestUnconsumedResume",deleteEvents:"deleteEvents",deleteMeta:"deleteMeta",deleteResume:"deleteResume",getOldSessions:"getOldSessions",searchEvents:"searchEvents",incrementToolCall:"incrementToolCall",getToolCallTotals:"getToolCallTotals",getToolCallByTool:"getToolCallByTool"},Qn=class extends Ci{constructor(e){super(e?.dbPath??Jh("session"))}stmt(e){return this.stmts.get(e)}initSchema(){try{let r=this.db.pragma("table_xinfo(session_events)").find(n=>n.name==="data_hash");r&&r.hidden!==0&&this.db.exec("DROP TABLE session_events")}catch{}this.db.exec(`
382
+ ${o}`}}var uw=v(()=>{"use strict"});import{execFileSync as TD}from"node:child_process";function PD(){if(process.platform==="win32")return NaN;let t=process.ppid;if(!t||t<=1)return NaN;try{let e=TD("ps",["-o","ppid=","-p",String(t)],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).trim(),r=parseInt(e,10);return Number.isFinite(r)?r:NaN}catch{return NaN}}function RD(t={}){let e=t.getPpid??(()=>process.ppid),r=t.readGrandparentPpid??PD,n=e(),o=r();return()=>{let s=e();return!(s!==n||s===0||s===1||!Number.isNaN(o)&&o>1&&r()===1)}}function lw(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??CD,n=!1,o=()=>{n||(n=!0,t.onShutdown())},s=setInterval(()=>{r()||o()},e);s.unref();let i=["SIGTERM","SIGINT"];process.platform!=="win32"&&i.push("SIGHUP");for(let c of i)process.on(c,o);let a=()=>{r()||o()};return process.stdin.isTTY||process.stdin.on("end",a),()=>{n=!0,clearInterval(s);for(let c of i)process.removeListener(c,o);process.stdin.removeListener("end",a)}}var CD,dw=v(()=>{"use strict";CD=RD()});import{createHash as ag}from"node:crypto";import{execFileSync as OD}from"node:child_process";function Ii(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX,e=process.cwd();if(Oi&&Oi.cwd===e&&Oi.envSuffix===t)return Oi.suffix;let r="";if(t!==void 0)r=t?`__${t}`:"";else try{let n=OD("git",["worktree","list","--porcelain"],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).split(/\r?\n/).find(o=>o.startsWith("worktree "))?.replace("worktree ","")?.trim();n&&e!==n&&(r=`__${ag("sha256").update(e).digest("hex").slice(0,8)}`)}catch{}return Oi={cwd:e,envSuffix:t,suffix:r},r}var Oi,pw,mw,U,Qn,cg=v(()=>{"use strict";ns();pw=1e3,mw=5,U={insertEvent:"insertEvent",getEvents:"getEvents",getEventsByType:"getEventsByType",getEventsByPriority:"getEventsByPriority",getEventsByTypeAndPriority:"getEventsByTypeAndPriority",getEventCount:"getEventCount",getLatestAttributedProject:"getLatestAttributedProject",checkDuplicate:"checkDuplicate",evictLowestPriority:"evictLowestPriority",updateMetaLastEvent:"updateMetaLastEvent",ensureSession:"ensureSession",getSessionStats:"getSessionStats",incrementCompactCount:"incrementCompactCount",upsertResume:"upsertResume",getResume:"getResume",markResumeConsumed:"markResumeConsumed",claimLatestUnconsumedResume:"claimLatestUnconsumedResume",deleteEvents:"deleteEvents",deleteMeta:"deleteMeta",deleteResume:"deleteResume",getOldSessions:"getOldSessions",searchEvents:"searchEvents",incrementToolCall:"incrementToolCall",getToolCallTotals:"getToolCallTotals",getToolCallByTool:"getToolCallByTool"},Qn=class extends Ci{constructor(e){super(e?.dbPath??Jh("session"))}stmt(e){return this.stmts.get(e)}initSchema(){try{let r=this.db.pragma("table_xinfo(session_events)").find(n=>n.name==="data_hash");r&&r.hidden!==0&&this.db.exec("DROP TABLE session_events")}catch{}this.db.exec(`
383
383
  CREATE TABLE IF NOT EXISTS session_events (
384
384
  id INTEGER PRIMARY KEY AUTOINCREMENT,
385
385
  session_id TEXT NOT NULL,
@@ -488,44 +488,44 @@ ${o}`}}var cw=v(()=>{"use strict"});import{execFileSync as TD}from"node:child_pr
488
488
  updated_at = datetime('now')`),e(U.getToolCallTotals,`SELECT COALESCE(SUM(calls), 0) AS calls,
489
489
  COALESCE(SUM(bytes_returned), 0) AS bytes_returned
490
490
  FROM tool_calls WHERE session_id = ?`),e(U.getToolCallByTool,`SELECT tool, calls, bytes_returned
491
- FROM tool_calls WHERE session_id = ? ORDER BY calls DESC`)}insertEvent(e,r,n="PostToolUse",o){let s=ag("sha256").update(r.data).digest("hex").slice(0,16).toUpperCase(),i=String(o?.projectDir??r.project_dir??"").trim(),a=String(o?.source??r.attribution_source??"unknown"),c=Number(o?.confidence??r.attribution_confidence??0),u=Number.isFinite(c)?Math.max(0,Math.min(1,c)):0,l=this.db.transaction(()=>{if(this.stmt(U.checkDuplicate).get(e,pw,r.type,s))return;this.stmt(U.getEventCount).get(e).cnt>=dw&&this.stmt(U.evictLowestPriority).run(e),this.stmt(U.insertEvent).run(e,r.type,r.category,r.priority,r.data,i,a,u,n,s),this.stmt(U.updateMetaLastEvent).run(e)});this.withRetry(()=>l())}bulkInsertEvents(e,r,n="PostToolUse",o){if(!r||r.length===0)return;if(r.length===1){this.insertEvent(e,r[0],n,o?.[0]);return}let s=r.map((a,c)=>{let u=ag("sha256").update(a.data).digest("hex").slice(0,16).toUpperCase(),l=o?.[c],d=String(l?.projectDir??a.project_dir??"").trim(),p=String(l?.source??a.attribution_source??"unknown"),f=Number(l?.confidence??a.attribution_confidence??0),m=Number.isFinite(f)?Math.max(0,Math.min(1,f)):0;return{event:a,dataHash:u,projectDir:d,attributionSource:p,attributionConfidence:m}}),i=this.db.transaction(()=>{let a=this.stmt(U.getEventCount).get(e).cnt;for(let c of s)this.stmt(U.checkDuplicate).get(e,pw,c.event.type,c.dataHash)||(a>=dw?this.stmt(U.evictLowestPriority).run(e):a++,this.stmt(U.insertEvent).run(e,c.event.type,c.event.category,c.event.priority,c.event.data,c.projectDir,c.attributionSource,c.attributionConfidence,n,c.dataHash));this.stmt(U.updateMetaLastEvent).run(e)});this.withRetry(()=>i())}getEvents(e,r){let n=r?.limit??1e3,o=r?.type,s=r?.minPriority;return o&&s!==void 0?this.stmt(U.getEventsByTypeAndPriority).all(e,o,s,n):o?this.stmt(U.getEventsByType).all(e,o,n):s!==void 0?this.stmt(U.getEventsByPriority).all(e,s,n):this.stmt(U.getEvents).all(e,n)}getEventCount(e){return this.stmt(U.getEventCount).get(e).cnt}getLatestAttributedProjectDir(e){return this.stmt(U.getLatestAttributedProject).get(e)?.project_dir||null}searchEvents(e,r,n,o){try{let s=e.replace(/[%_]/g,a=>"\\"+a),i=o??null;return this.stmt(U.searchEvents).all(n,s,s,i,i,r)}catch{return[]}}ensureSession(e,r){this.stmt(U.ensureSession).run(e,r)}getSessionStats(e){return this.stmt(U.getSessionStats).get(e)??null}incrementCompactCount(e){this.stmt(U.incrementCompactCount).run(e)}upsertResume(e,r,n){this.stmt(U.upsertResume).run(e,r,n??0)}getResume(e){return this.stmt(U.getResume).get(e)??null}markResumeConsumed(e){this.stmt(U.markResumeConsumed).run(e)}claimLatestUnconsumedResume(e){let r=this.stmt(U.claimLatestUnconsumedResume).get(e);return r?{sessionId:r.session_id,snapshot:r.snapshot}:null}getLatestSessionId(){try{return this.db.prepare("SELECT session_id FROM session_meta ORDER BY started_at DESC LIMIT 1").get()?.session_id??null}catch{return null}}incrementToolCall(e,r,n=0){let o=Number.isFinite(n)&&n>0?Math.round(n):0;try{this.stmt(U.incrementToolCall).run(e,r,o)}catch{}}getToolCallStats(e){try{let r=this.stmt(U.getToolCallTotals).get(e),n=this.stmt(U.getToolCallByTool).all(e),o={};for(let s of n)o[s.tool]={calls:s.calls,bytesReturned:s.bytes_returned};return{totalCalls:r?.calls??0,totalBytesReturned:r?.bytes_returned??0,byTool:o}}catch{return{totalCalls:0,totalBytesReturned:0,byTool:{}}}}deleteSession(e){this.db.transaction(()=>{this.stmt(U.deleteEvents).run(e),this.stmt(U.deleteResume).run(e),this.stmt(U.deleteMeta).run(e)})()}cleanupOldSessions(e=7){let r=`-${e}`,n=this.stmt(U.getOldSessions).all(r);for(let{session_id:o}of n)this.deleteSession(o);return n.length}}});import{existsSync as mw}from"node:fs";function fw(t,e,r){try{if(!mw(t))return;let n=new Qn({dbPath:t});try{let o=n.getLatestSessionId();if(!o)return;n.incrementToolCall(o,e,r)}finally{n.close()}}catch{}}function hw(t){try{if(!mw(t))return null;let e=new Qn({dbPath:t});try{let r=e.getLatestSessionId();if(!r)return null;let n=e.getToolCallStats(r),o={},s={};for(let[a,c]of Object.entries(n.byTool))o[a]=c.calls,s[a]=c.bytesReturned;let i=Date.now();try{let a=e.getSessionStats(r);if(a?.started_at){let c=Date.parse(`${a.started_at}Z`);Number.isFinite(c)&&c>0&&(i=c)}}catch{}return Object.keys(o).length===0&&Object.keys(s).length===0?{calls:o,bytesReturned:s,sessionStart:i}:{calls:o,bytesReturned:s,sessionStart:i}}finally{e.close()}}catch{return null}}var gw=v(()=>{"use strict";cg()});import{existsSync as ug,readFileSync as ID,readdirSync as AD,statSync as ND}from"node:fs";import{join as ss,isAbsolute as zD}from"node:path";import{homedir as jD}from"node:os";function xw(t,e=5,r,n,o){let s=[],i=o?.getInstructionFiles()??["CLAUDE.md"],a=o?.getConfigDir(),c=a?yw(r,a):n||ss(jD(),".claude"),u=o?.getMemoryDir(),l=u?yw(r,u):ss(c,"memory"),d=[];if(r)for(let p of i){let f=ss(r,p);ug(f)&&d.push({path:f,label:`project/${p}`})}if(c&&c!==r)for(let p of i){let f=ss(c,p);ug(f)&&d.push({path:f,label:`user/${p}`})}if(l&&ug(l))try{let p=AD(l).filter(f=>f.endsWith(".md"));for(let f of p)d.push({path:ss(l,f),label:`memory/${f}`})}catch(p){_w&&process.stderr.write(`[ctx] auto-memory dir scan failed: ${p}
492
- `)}for(let p of d){if(s.length>=e)break;try{let f;try{if(f=ND(p.path),f.size>1e6)continue}catch{continue}let m=ID(p.path,"utf-8"),h=m.toLowerCase();for(let g of t){if(s.length>=e)break;let _=g.toLowerCase().split(/\s+/).filter(k=>k.length>=3);if(_.some(k=>{try{return new RegExp(`\\b${k.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\b`,"i").test(m)}catch{return h.includes(k)}})){let k=_.reduce((P,N)=>{let ce=h.indexOf(N);return ce>=0&&(P<0||ce<P)?ce:P},-1),T=Math.max(0,k-200),H=Math.min(m.length,k+500),z=m.lastIndexOf(`
491
+ FROM tool_calls WHERE session_id = ? ORDER BY calls DESC`)}insertEvent(e,r,n="PostToolUse",o){let s=ag("sha256").update(r.data).digest("hex").slice(0,16).toUpperCase(),i=String(o?.projectDir??r.project_dir??"").trim(),a=String(o?.source??r.attribution_source??"unknown"),c=Number(o?.confidence??r.attribution_confidence??0),u=Number.isFinite(c)?Math.max(0,Math.min(1,c)):0,l=this.db.transaction(()=>{if(this.stmt(U.checkDuplicate).get(e,mw,r.type,s))return;this.stmt(U.getEventCount).get(e).cnt>=pw&&this.stmt(U.evictLowestPriority).run(e),this.stmt(U.insertEvent).run(e,r.type,r.category,r.priority,r.data,i,a,u,n,s),this.stmt(U.updateMetaLastEvent).run(e)});this.withRetry(()=>l())}bulkInsertEvents(e,r,n="PostToolUse",o){if(!r||r.length===0)return;if(r.length===1){this.insertEvent(e,r[0],n,o?.[0]);return}let s=r.map((a,c)=>{let u=ag("sha256").update(a.data).digest("hex").slice(0,16).toUpperCase(),l=o?.[c],d=String(l?.projectDir??a.project_dir??"").trim(),p=String(l?.source??a.attribution_source??"unknown"),f=Number(l?.confidence??a.attribution_confidence??0),m=Number.isFinite(f)?Math.max(0,Math.min(1,f)):0;return{event:a,dataHash:u,projectDir:d,attributionSource:p,attributionConfidence:m}}),i=this.db.transaction(()=>{let a=this.stmt(U.getEventCount).get(e).cnt;for(let c of s)this.stmt(U.checkDuplicate).get(e,mw,c.event.type,c.dataHash)||(a>=pw?this.stmt(U.evictLowestPriority).run(e):a++,this.stmt(U.insertEvent).run(e,c.event.type,c.event.category,c.event.priority,c.event.data,c.projectDir,c.attributionSource,c.attributionConfidence,n,c.dataHash));this.stmt(U.updateMetaLastEvent).run(e)});this.withRetry(()=>i())}getEvents(e,r){let n=r?.limit??1e3,o=r?.type,s=r?.minPriority;return o&&s!==void 0?this.stmt(U.getEventsByTypeAndPriority).all(e,o,s,n):o?this.stmt(U.getEventsByType).all(e,o,n):s!==void 0?this.stmt(U.getEventsByPriority).all(e,s,n):this.stmt(U.getEvents).all(e,n)}getEventCount(e){return this.stmt(U.getEventCount).get(e).cnt}getLatestAttributedProjectDir(e){return this.stmt(U.getLatestAttributedProject).get(e)?.project_dir||null}searchEvents(e,r,n,o){try{let s=e.replace(/[%_]/g,a=>"\\"+a),i=o??null;return this.stmt(U.searchEvents).all(n,s,s,i,i,r)}catch{return[]}}ensureSession(e,r){this.stmt(U.ensureSession).run(e,r)}getSessionStats(e){return this.stmt(U.getSessionStats).get(e)??null}incrementCompactCount(e){this.stmt(U.incrementCompactCount).run(e)}upsertResume(e,r,n){this.stmt(U.upsertResume).run(e,r,n??0)}getResume(e){return this.stmt(U.getResume).get(e)??null}markResumeConsumed(e){this.stmt(U.markResumeConsumed).run(e)}claimLatestUnconsumedResume(e){let r=this.stmt(U.claimLatestUnconsumedResume).get(e);return r?{sessionId:r.session_id,snapshot:r.snapshot}:null}getLatestSessionId(){try{return this.db.prepare("SELECT session_id FROM session_meta ORDER BY started_at DESC LIMIT 1").get()?.session_id??null}catch{return null}}incrementToolCall(e,r,n=0){let o=Number.isFinite(n)&&n>0?Math.round(n):0;try{this.stmt(U.incrementToolCall).run(e,r,o)}catch{}}getToolCallStats(e){try{let r=this.stmt(U.getToolCallTotals).get(e),n=this.stmt(U.getToolCallByTool).all(e),o={};for(let s of n)o[s.tool]={calls:s.calls,bytesReturned:s.bytes_returned};return{totalCalls:r?.calls??0,totalBytesReturned:r?.bytes_returned??0,byTool:o}}catch{return{totalCalls:0,totalBytesReturned:0,byTool:{}}}}deleteSession(e){this.db.transaction(()=>{this.stmt(U.deleteEvents).run(e),this.stmt(U.deleteResume).run(e),this.stmt(U.deleteMeta).run(e)})()}cleanupOldSessions(e=7){let r=`-${e}`,n=this.stmt(U.getOldSessions).all(r);for(let{session_id:o}of n)this.deleteSession(o);return n.length}}});import{existsSync as fw}from"node:fs";function hw(t,e,r){try{if(!fw(t))return;let n=new Qn({dbPath:t});try{let o=n.getLatestSessionId();if(!o)return;n.incrementToolCall(o,e,r)}finally{n.close()}}catch{}}function gw(t){try{if(!fw(t))return null;let e=new Qn({dbPath:t});try{let r=e.getLatestSessionId();if(!r)return null;let n=e.getToolCallStats(r),o={},s={};for(let[a,c]of Object.entries(n.byTool))o[a]=c.calls,s[a]=c.bytesReturned;let i=Date.now();try{let a=e.getSessionStats(r);if(a?.started_at){let c=Date.parse(`${a.started_at}Z`);Number.isFinite(c)&&c>0&&(i=c)}}catch{}return Object.keys(o).length===0&&Object.keys(s).length===0?{calls:o,bytesReturned:s,sessionStart:i}:{calls:o,bytesReturned:s,sessionStart:i}}finally{e.close()}}catch{return null}}var _w=v(()=>{"use strict";cg()});import{existsSync as ug,readFileSync as ID,readdirSync as AD,statSync as ND}from"node:fs";import{join as ss,isAbsolute as zD}from"node:path";import{homedir as jD}from"node:os";function vw(t,e=5,r,n,o){let s=[],i=o?.getInstructionFiles()??["CLAUDE.md"],a=o?.getConfigDir(),c=a?xw(r,a):n||ss(jD(),".claude"),u=o?.getMemoryDir(),l=u?xw(r,u):ss(c,"memory"),d=[];if(r)for(let p of i){let f=ss(r,p);ug(f)&&d.push({path:f,label:`project/${p}`})}if(c&&c!==r)for(let p of i){let f=ss(c,p);ug(f)&&d.push({path:f,label:`user/${p}`})}if(l&&ug(l))try{let p=AD(l).filter(f=>f.endsWith(".md"));for(let f of p)d.push({path:ss(l,f),label:`memory/${f}`})}catch(p){yw&&process.stderr.write(`[ctx] auto-memory dir scan failed: ${p}
492
+ `)}for(let p of d){if(s.length>=e)break;try{let f;try{if(f=ND(p.path),f.size>1e6)continue}catch{continue}let m=ID(p.path,"utf-8"),h=m.toLowerCase();for(let g of t){if(s.length>=e)break;let _=g.toLowerCase().split(/\s+/).filter(k=>k.length>=3);if(_.some(k=>{try{return new RegExp(`\\b${k.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\b`,"i").test(m)}catch{return h.includes(k)}})){let k=_.reduce((P,N)=>{let ce=h.indexOf(N);return ce>=0&&(P<0||ce<P)?ce:P},-1),E=Math.max(0,k-200),H=Math.min(m.length,k+500),z=m.lastIndexOf(`
493
493
 
494
- `,T),K=m.indexOf(`
494
+ `,E),K=m.indexOf(`
495
495
 
496
- `,H);z>=0&&(T=z+2),K>=0&&(H=K);let Le=m.slice(T,H).trim();s.push({title:`[auto-memory] ${p.label}`,content:Le,source:p.label,origin:"auto-memory",timestamp:f.mtime.toISOString()});break}}}catch(f){_w&&process.stderr.write(`[ctx] auto-memory file read failed: ${f}
497
- `)}}return s.slice(0,e)}function yw(t,e){return e?zD(e)||!t?e:ss(t,e):t??""}var _w,vw=v(()=>{"use strict";_w=process.env.DEBUG?.includes("context-mode")});function bw(t){let{query:e,limit:r,store:n,sort:o="relevance",source:s,contentType:i,sessionDB:a,projectDir:c,configDir:u,adapter:l}=t,d=[],p=new Date().toISOString();try{let f=n.searchWithFallback(e,r,s,i);d.push(...f.map(m=>({title:m.title,content:m.content,source:m.source,origin:"current-session",timestamp:m.timestamp||p,rank:m.rank,matchLayer:m.matchLayer,highlighted:m.highlighted,contentType:m.contentType})))}catch(f){lg&&process.stderr.write(`[ctx] ContentStore search failed: ${f}
496
+ `,H);z>=0&&(E=z+2),K>=0&&(H=K);let Le=m.slice(E,H).trim();s.push({title:`[auto-memory] ${p.label}`,content:Le,source:p.label,origin:"auto-memory",timestamp:f.mtime.toISOString()});break}}}catch(f){yw&&process.stderr.write(`[ctx] auto-memory file read failed: ${f}
497
+ `)}}return s.slice(0,e)}function xw(t,e){return e?zD(e)||!t?e:ss(t,e):t??""}var yw,bw=v(()=>{"use strict";yw=process.env.DEBUG?.includes("context-mode")});function Sw(t){let{query:e,limit:r,store:n,sort:o="relevance",source:s,contentType:i,sessionDB:a,projectDir:c,configDir:u,adapter:l}=t,d=[],p=new Date().toISOString();try{let f=n.searchWithFallback(e,r,s,i);d.push(...f.map(m=>({title:m.title,content:m.content,source:m.source,origin:"current-session",timestamp:m.timestamp||p,rank:m.rank,matchLayer:m.matchLayer,highlighted:m.highlighted,contentType:m.contentType})))}catch(f){lg&&process.stderr.write(`[ctx] ContentStore search failed: ${f}
498
498
  `)}if(o==="timeline"){try{if(a){let f=a.searchEvents(e,r,c||"",s);d.push(...f.map(m=>({title:`[${m.category}] ${m.type}`,content:m.data,source:"prior-session",origin:"prior-session",timestamp:m.created_at})))}}catch(f){lg&&process.stderr.write(`[ctx] SessionDB search failed: ${f}
499
- `)}try{let f=xw([e],r,c,u,l);d.push(...f)}catch(f){lg&&process.stderr.write(`[ctx] auto-memory search failed: ${f}
500
- `)}}for(let f of d)f.timestamp&&!f.timestamp.includes("T")&&(f.timestamp=f.timestamp.replace(" ","T")+"Z");return o==="timeline"&&d.sort((f,m)=>(f.timestamp||"").localeCompare(m.timestamp||"")),d.slice(0,r)}var lg,Sw=v(()=>{"use strict";vw();lg=process.env.DEBUG?.includes("context-mode")});import{existsSync as dg,readdirSync as pg,statSync as DD}from"node:fs";import{join as Ai}from"node:path";import{homedir as kw}from"node:os";function MD(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}function FD(t){let r=t.replace(/\.md$/i,"").match(/^([a-z]+)/i);return r?r[1].toLowerCase():"other"}function Ni(t){let e=t?.sessionsDir??Ai(kw(),".claude","context-mode","sessions"),r=t?.memoryRoot??Ai(kw(),".claude","projects"),n=0,o=0,s={};if(dg(e)){let u=[];try{u=pg(e).filter(l=>l.endsWith(".db"))}catch{}if(u.length>0){let l=null;try{l=t?.loadDatabase?t.loadDatabase():zr()}catch{}if(l)for(let d of u){let p=Ai(e,d);try{let f=new l(p,{readonly:!0});try{let m=f.prepare("SELECT COUNT(*) AS cnt FROM session_events").get(),h=f.prepare("SELECT COUNT(*) AS cnt FROM session_meta").get();n+=m?.cnt??0,o+=h?.cnt??0;try{let g=f.prepare("SELECT category, COUNT(*) AS cnt FROM session_events GROUP BY category").all();for(let y of g)y.category&&(s[y.category]=(s[y.category]??0)+(y.cnt??0))}catch{}}finally{f.close()}}catch{}}}}let i=0,a=0,c={};if(dg(r)){let u=[];try{u=pg(r).filter(l=>{try{return DD(Ai(r,l)).isDirectory()}catch{return!1}})}catch{}for(let l of u){let d=Ai(r,l,"memory");if(!dg(d))continue;let p=[];try{p=pg(d).filter(f=>f.endsWith(".md"))}catch{continue}if(p.length!==0){a++,i+=p.length;for(let f of p){let m=FD(f);c[m]=(c[m]??0)+1}}}}return{totalEvents:n,totalSessions:o,autoMemoryCount:i,autoMemoryProjects:a,autoMemoryByPrefix:c,categoryCounts:s}}function eo(t){return t>=1024*1024?`${(t/1024/1024).toFixed(1)} MB`:t>=1024?`${(t/1024).toFixed(1)} KB`:`${Math.round(t)} B`}function UD(t){let e=parseFloat(t);if(isNaN(e)||e<1)return"< 1 min";if(e<60)return`${Math.round(e)} min`;let r=Math.floor(e/60),n=Math.round(e%60);return n>0?`${r}h ${n}m`:`${r}h`}function fg(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}K`:String(t)}function fu(t){return`$${((Number.isFinite(t)&&t>0?t:0)*gu).toFixed(2)}`}function hu(t,e,r=40){if(e<=0)return"\u2591".repeat(r);let n=Math.max(1,Math.round(t/e*r));return"\u2588".repeat(Math.min(n,r))+"\u2591".repeat(Math.max(0,r-n))}function ww(t,e){let r=e?.sessionTokensSaved??0;if(t.total_events===0&&(e?.lifetime?.totalEvents??0)===0&&r===0)return[];let n=e?.topN??2,o=[];o.push(""),o.push("Persistent memory \u2713 preserved across compact, restart & upgrade");let s=e?.lifetime?.totalEvents??t.total_events,i=e?.lifetime?.totalSessions??t.session_count,a=i===0&&r>0?1:i,c=a===1?"1 session":`${fg(a)} sessions`,u=s*256+r;o.push(` ${fg(s)} events \xB7 ${c} \xB7 ~${fu(u)} saved lifetime`),o.push("");let l=e?.lifetime?.categoryCounts,d;l&&Object.keys(l).length>0?d=Object.entries(l).filter(([,h])=>h>0).map(([h,g])=>({category:h,count:g,label:mg[h]||h})).sort((h,g)=>g.count-h.count):d=t.by_category;let p=d.slice(0,n),f=p.length>0?p[0].count:1;for(let h of p)o.push(` ${h.label.padEnd(18)} ${String(h.count).padStart(5)} ${hu(h.count,f,30)}`);let m=Math.max(0,d.length-n);return m>0&&o.push(` ... ${m} more categor${m===1?"y":"ies"}`),o}function $w(t){if(!t||t.autoMemoryCount===0)return[];let e=[];e.push(""),e.push(`Auto-memory \u2713 ${t.autoMemoryCount} preference${t.autoMemoryCount===1?"":"s"} learned across ${t.autoMemoryProjects} project${t.autoMemoryProjects===1?"":"s"}`);let r=Object.entries(t.autoMemoryByPrefix).sort((o,s)=>s[1]-o[1]).slice(0,6),n=r.length>0?r[0][1]:1;for(let[o,s]of r)e.push(` ${o.padEnd(12)} ${String(s).padStart(2)} ${hu(s,n,20)}`);return e}function Ew(t,e){let r=[],n=fu(t),o=(e?.totalEvents??0)*256+t,s=fu(o);return r.push(""),r.push("\u2500".repeat(65)),r.push("Your AI talks less, remembers more, costs less."),r.push(`${n} this session \xB7 ${s} lifetime`),r.push("\u2500".repeat(65)),r}function _u(t,e,r,n){let o=[],s=UD(t.session.uptime_min),i=n?.lifetime,a=n?.mcpUsage,c=t.savings.kept_out+(t.cache?t.cache.bytes_saved:0),u=t.savings.total_bytes_returned,l=t.savings.total_calls,d=c+u,p=d>0?c/d*100:0,f=Math.round(c/4),m=u>0?Math.max(1,Math.round(d/Math.max(u,1))):0;if(c===0){o.push(`context-mode ${s} ${l} calls`),o.push(""),l===0?o.push("No tool calls yet. Use batch_execute or execute to start saving tokens."):o.push(`${eo(u)} entered context | 0 tokens saved`),o.push(...ww(t.projectMemory,{lifetime:i,sessionTokensSaved:0})),o.push(...$w(i)),o.push(...Ew(0,i)),o.push("");let _=e?`v${e}`:"context-mode";return o.push(_),e&&r&&r!=="unknown"&&MD(r,e)&&o.push(`Update available: v${e} -> v${r} | ctx_upgrade`),o.join(`
501
- `)}o.push(`${fg(f)} tokens saved \xB7 ${p.toFixed(1)}% reduction \xB7 ${s} \xB7 ~${fu(f)} saved (Opus)`),o.push(""),o.push(`Without context-mode |${hu(d,d)}| ${eo(d)}`),o.push(`With context-mode |${hu(u,d)}| ${eo(u)}`),o.push(""),m>=2?o.push(`${eo(c)} kept out of your conversation \u2014 ${m}\xD7 longer sessions before compact.`):o.push(`${eo(c)} kept out of your conversation. Never entered context.`),o.push("");let h=[`${l} calls`];t.cache&&t.cache.hits>0&&h.push(`${t.cache.hits} cache hits (+${eo(t.cache.bytes_saved)})`),o.push(h.join(" \xB7 "));let g=t.savings.by_tool.filter(_=>_.calls>0);if(g.length>=2){o.push("");let _=g.map(x=>{let k=x.context_kb*1024,T=p<100?k/(1-p/100):k,H=Math.max(0,T-k);return{...x,returnedBytes:k,estimatedSaved:H}}).sort((x,k)=>k.estimatedSaved-x.estimatedSaved);for(let x of _){let k=x.tool.length>22?x.tool.slice(0,19)+"...":x.tool;o.push(` ${k.padEnd(22)} ${String(x.calls).padStart(4)} calls ${eo(x.estimatedSaved).padStart(8)} saved`)}}if(a&&a.length>0){let _=a.filter(x=>x.median_concurrency!=null&&(x.max_concurrency??1)>1);if(_.length>0){o.push(""),o.push("Parallel I/O \u2713 one call did the work of many \u2014 faster runs, lower bill, same answer.");for(let x of _){let k=x.tool_name.replace(/^mcp__.*?__/,"");o.push(` ${k.padEnd(22)} ${x.calls} batches \xB7 ${x.median_concurrency} typical, ${x.max_concurrency} peak`)}}}o.push(...ww(t.projectMemory,{lifetime:i,sessionTokensSaved:f})),o.push(...$w(i)),o.push(...Ew(f,i)),o.push("");let y=e?`v${e}`:"context-mode";return o.push(y),e&&r&&r!=="unknown"&&r!==e&&o.push(`Update available: v${e} -> v${r} | ctx_upgrade`),o.join(`
502
- `)}var mg,LD,is,gu,Tw=v(()=>{"use strict";ns();mg={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"},LD={file:"Restored after compact \u2014 no need to re-read",rule:"Your project instructions survive context resets",prompt:"Continues exactly where you left off",decision:"Applied automatically \u2014 won\u2019t ask again",task:"Picks up from where it stopped",error:"Tracked and monitored across compacts",git:"Branch, commit, and repo state preserved",env:"Runtime config carried forward",mcp:"Tool usage patterns remembered",subagent:"Delegation history preserved",skill:"Skill invocations tracked"},is=class{db;constructor(e){this.db=e}static contextSavingsTotal(e,r){let n=e-r,o=e>0?Math.round(n/e*1e3)/10:0;return{rawBytes:e,contextBytes:r,savedBytes:n,savedPercent:o}}static thinkInCodeComparison(e,r){let n=r>0?Math.round(e/r*10)/10:0;return{fileBytes:e,outputBytes:r,ratio:n}}static toolSavings(e){return e.map(r=>({...r,savedBytes:r.rawBytes-r.contextBytes}))}static sandboxIO(e,r){return{inputBytes:e,outputBytes:r}}getMcpToolUsage(){let e;try{e=this.db.prepare("SELECT data FROM session_events WHERE category = 'mcp_tool_call'").all()}catch{return[]}let r=new Map;for(let o of e){let s;try{s=JSON.parse(o.data)}catch{continue}let i=typeof s.tool_name=="string"?s.tool_name:null;if(!i)continue;let a=r.get(i)??{calls:0,concurrencies:[]};if(a.calls+=1,s.truncated!==!0&&s.params&&typeof s.params=="object"){let c=s.params.concurrency;typeof c=="number"&&Number.isFinite(c)&&c>0&&a.concurrencies.push(c)}r.set(i,a)}let n=[];for(let[o,s]of r){let i=null,a=null;if(s.concurrencies.length>0){let c=[...s.concurrencies].sort((l,d)=>l-d),u=Math.floor(c.length/2);i=c.length%2===0?(c[u-1]+c[u])/2:c[u],a=c[c.length-1]}n.push({tool_name:o,calls:s.calls,median_concurrency:i,max_concurrency:a})}return n.sort((o,s)=>s.calls-o.calls||o.tool_name.localeCompare(s.tool_name)),n}queryAll(e){let n=this.db.prepare("SELECT session_id FROM session_meta ORDER BY started_at DESC LIMIT 1").get()?.session_id??"",o=Object.values(e.bytesReturned).reduce((N,ce)=>N+ce,0),s=Object.values(e.calls).reduce((N,ce)=>N+ce,0),i=e.bytesIndexed+e.bytesSandboxed,a=i+o,c=a/Math.max(o,1),u=a>0?Math.round((1-o/a)*100):0,l=new Set([...Object.keys(e.calls),...Object.keys(e.bytesReturned)]),d=Array.from(l).sort().map(N=>({tool:N,calls:e.calls[N]||0,context_kb:Math.round((e.bytesReturned[N]||0)/1024*10)/10,tokens:Math.round((e.bytesReturned[N]||0)/4)})),f=((Date.now()-e.sessionStart)/6e4).toFixed(1),m;if(e.cacheHits>0||e.cacheBytesSaved>0){let N=a+e.cacheBytesSaved,ce=N/Math.max(o,1),De=Math.max(0,24-Math.floor((Date.now()-e.sessionStart)/(3600*1e3)));m={hits:e.cacheHits,bytes_saved:e.cacheBytesSaved,ttl_hours_left:De,total_with_cache:N,total_savings_ratio:ce}}let h=this.db.prepare("SELECT COUNT(*) as cnt FROM session_events WHERE session_id = ?").get(n).cnt,g=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events WHERE session_id = ? GROUP BY category ORDER BY cnt DESC").all(n),_=this.db.prepare("SELECT compact_count FROM session_meta WHERE session_id = ?").get(n)?.compact_count??0,x=this.db.prepare("SELECT event_count, consumed FROM session_resume WHERE session_id = ? ORDER BY created_at DESC LIMIT 1").get(n),k=x?!x.consumed:!1,T=this.db.prepare("SELECT category, type, data FROM session_events WHERE session_id = ? ORDER BY id DESC").all(n),H=new Map;for(let N of T){H.has(N.category)||H.set(N.category,new Set);let ce=H.get(N.category);if(ce.size<5){let De=N.data;N.category==="file"?De=N.data.split("/").pop()||N.data:(N.category==="prompt"||N.category==="user-prompt")&&(De=De.length>50?De.slice(0,47)+"...":De),De.length>40&&(De=De.slice(0,37)+"..."),ce.add(De)}}let z=g.map(N=>({category:N.category,count:N.cnt,label:mg[N.category]||N.category,preview:H.get(N.category)?Array.from(H.get(N.category)).join(", "):"",why:LD[N.category]||"Survives context resets"})),K=this.db.prepare("SELECT COUNT(*) as cnt, COUNT(DISTINCT session_id) as sessions FROM session_events").get(),P=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all().filter(N=>N.cnt>0).map(N=>({category:N.category,count:N.cnt,label:mg[N.category]||N.category}));return{savings:{processed_kb:Math.round(a/1024*10)/10,entered_kb:Math.round(o/1024*10)/10,saved_kb:Math.round(i/1024*10)/10,pct:u,savings_ratio:Math.round(c*10)/10,by_tool:d,total_calls:s,total_bytes_returned:o,kept_out:i,total_processed:a},cache:m,session:{id:n,uptime_min:f},continuity:{total_events:h,by_category:z,compact_count:_,resume_ready:k},projectMemory:{total_events:K.cnt,session_count:K.sessions,by_category:P}}}};gu=15/1e6});var Vw={};Ze(Vw,{buildBatchNodeOptionsPrefix:()=>Hw,classifyIp:()=>Tg,extractSnippet:()=>$g,formatBatchQueryResults:()=>Zw,positionsFromHighlight:()=>Uw,runBatchCommands:()=>qw});import{createRequire as Dw}from"node:module";import{createHash as ZD}from"node:crypto";import{existsSync as je,unlinkSync as _r,readdirSync as HD,readFileSync as vg,writeFileSync as bg,renameSync as qD,rmSync as bu,mkdirSync as zi,cpSync as BD,statSync as Pw,symlinkSync as VD,lstatSync as WD}from"node:fs";import{execSync as Ht}from"node:child_process";import{join as pe,dirname as nr,resolve as ot,sep as GD,isAbsolute as KD}from"node:path";import{fileURLToPath as JD}from"node:url";import{homedir as ro,tmpdir as Sg,cpus as YD}from"node:os";import{request as XD}from"node:https";function QD(t){try{let e=xr();if(!je(e))return;let r=HD(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=pe(e,n);try{t.index({path:o,source:"session-events"}),_r(o)}catch{}}}catch{}}function xr(){if(cs)return cs.getSessionDir();try{let e=wr(),r=wl(e.platform);if(r){let n=pe(ro(),...r,"context-mode","sessions");return zi(n,{recursive:!0}),n}}catch{}let t=pe(ro(),".claude","context-mode","sessions");return zi(t,{recursive:!0}),t}function Mi(){return process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.VSCODE_CWD||process.env.OPENCODE_PROJECT_DIR||process.env.PI_PROJECT_DIR||process.env.IDEA_INITIAL_DIRECTORY||process.env.CONTEXT_MODE_PROJECT_DIR||process.cwd()}function eM(t){return KD(t)?t:ot(Mi(),t)}function us(){let e=Mi().replace(/\\/g,"/");return ZD("sha256").update(e).digest("hex").slice(0,16)}function Mw(){return pe(xr(),`${us()}${Ii()}.db`)}function yg(){let t=us(),e=xr(),r=pe(nr(e),"content");return zi(r,{recursive:!0}),pe(r,`${t}.db`)}function no(){if(!yr){let t=yg();yr=new mu(t);try{let e=nr(yg());tg(e,14),yr.cleanupStaleSources(14);let r=pe(ro(),".context-mode","content");je(r)&&tg(r,0)}catch{}eg()}return QD(yr),yr}async function Cw(){return new Promise(t=>{let e=XD("https://registry.npmjs.org/context-mode/latest",{headers:{Connection:"close"}},r=>{let n="";r.on("data",o=>{n+=o}),r.on("end",()=>{try{let o=JSON.parse(n);t(o.version??"unknown")}catch{t("unknown")}})});e.on("error",()=>t("unknown")),e.setTimeout(5e3,()=>{e.destroy(),t("unknown")}),e.end()})}function nM(){let t=cs?.name;return t==="Claude Code"?"/ctx-upgrade":t==="OpenClaw"?"npm run install:openclaw":t==="Pi"?"npm run build":"npm update -g context-mode"}function oM(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}function sM(){return!Mr||Mr==="unknown"?!1:oM(Mr,Dr)}function iM(){if(!sM())return!1;let t=Date.now();if(yu>=tM){if(t-Rw<rM)return!1;yu=0}return yu===0&&(Rw=t),yu++,!0}function aM(){if(!Ow){Ow=!0;try{let t=ot(ro(),".claude","plugins","installed_plugins.json");if(!je(t))return;let e=JSON.parse(vg(t,"utf-8")),r=ot(ro(),".claude","plugins","cache"),n=je(ot(kt,"package.json"))?kt:nr(kt);for(let[o,s]of Object.entries(e.plugins??{}))if(o==="context-mode@context-mode")for(let i of s){let a=i.installPath;if(!a||je(a)||!ot(a).startsWith(r+GD))continue;try{WD(a).isSymbolicLink()&&_r(a)}catch{}let c=nr(a);je(c)||zi(c,{recursive:!0}),je(n)&&VD(n,a,process.platform==="win32"?"junction":void 0)}}catch{}}}function W(t,e){if(aM(),iM()&&e.content.length>0){let n=nM();e.content[0].text=`\u26A0\uFE0F context-mode v${Dr} outdated \u2192 v${Mr} available. Upgrade: ${n}
499
+ `)}try{let f=vw([e],r,c,u,l);d.push(...f)}catch(f){lg&&process.stderr.write(`[ctx] auto-memory search failed: ${f}
500
+ `)}}for(let f of d)f.timestamp&&!f.timestamp.includes("T")&&(f.timestamp=f.timestamp.replace(" ","T")+"Z");return o==="timeline"&&d.sort((f,m)=>(f.timestamp||"").localeCompare(m.timestamp||"")),d.slice(0,r)}var lg,kw=v(()=>{"use strict";bw();lg=process.env.DEBUG?.includes("context-mode")});import{existsSync as dg,readdirSync as pg,statSync as DD}from"node:fs";import{join as Ai}from"node:path";import{homedir as ww}from"node:os";function MD(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}function FD(t){let r=t.replace(/\.md$/i,"").match(/^([a-z]+)/i);return r?r[1].toLowerCase():"other"}function Ni(t){let e=t?.sessionsDir??Ai(ww(),".claude","context-mode","sessions"),r=t?.memoryRoot??Ai(ww(),".claude","projects"),n=0,o=0,s={};if(dg(e)){let u=[];try{u=pg(e).filter(l=>l.endsWith(".db"))}catch{}if(u.length>0){let l=null;try{l=t?.loadDatabase?t.loadDatabase():zr()}catch{}if(l)for(let d of u){let p=Ai(e,d);try{let f=new l(p,{readonly:!0});try{let m=f.prepare("SELECT COUNT(*) AS cnt FROM session_events").get(),h=f.prepare("SELECT COUNT(*) AS cnt FROM session_meta").get();n+=m?.cnt??0,o+=h?.cnt??0;try{let g=f.prepare("SELECT category, COUNT(*) AS cnt FROM session_events GROUP BY category").all();for(let y of g)y.category&&(s[y.category]=(s[y.category]??0)+(y.cnt??0))}catch{}}finally{f.close()}}catch{}}}}let i=0,a=0,c={};if(dg(r)){let u=[];try{u=pg(r).filter(l=>{try{return DD(Ai(r,l)).isDirectory()}catch{return!1}})}catch{}for(let l of u){let d=Ai(r,l,"memory");if(!dg(d))continue;let p=[];try{p=pg(d).filter(f=>f.endsWith(".md"))}catch{continue}if(p.length!==0){a++,i+=p.length;for(let f of p){let m=FD(f);c[m]=(c[m]??0)+1}}}}return{totalEvents:n,totalSessions:o,autoMemoryCount:i,autoMemoryProjects:a,autoMemoryByPrefix:c,categoryCounts:s}}function eo(t){return t>=1024*1024?`${(t/1024/1024).toFixed(1)} MB`:t>=1024?`${(t/1024).toFixed(1)} KB`:`${Math.round(t)} B`}function UD(t){let e=parseFloat(t);if(isNaN(e)||e<1)return"< 1 min";if(e<60)return`${Math.round(e)} min`;let r=Math.floor(e/60),n=Math.round(e%60);return n>0?`${r}h ${n}m`:`${r}h`}function fg(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}K`:String(t)}function mu(t){return`$${((Number.isFinite(t)&&t>0?t:0)*hu).toFixed(2)}`}function fu(t,e,r=40){if(e<=0)return"\u2591".repeat(r);let n=Math.max(1,Math.round(t/e*r));return"\u2588".repeat(Math.min(n,r))+"\u2591".repeat(Math.max(0,r-n))}function $w(t,e){let r=e?.sessionTokensSaved??0;if(t.total_events===0&&(e?.lifetime?.totalEvents??0)===0&&r===0)return[];let n=e?.topN??2,o=[];o.push(""),o.push("Persistent memory \u2713 preserved across compact, restart & upgrade");let s=e?.lifetime?.totalEvents??t.total_events,i=e?.lifetime?.totalSessions??t.session_count,a=i===0&&r>0?1:i,c=a===1?"1 session":`${fg(a)} sessions`,u=s*256+r;o.push(` ${fg(s)} events \xB7 ${c} \xB7 ~${mu(u)} saved lifetime`),o.push("");let l=e?.lifetime?.categoryCounts,d;l&&Object.keys(l).length>0?d=Object.entries(l).filter(([,h])=>h>0).map(([h,g])=>({category:h,count:g,label:mg[h]||h})).sort((h,g)=>g.count-h.count):d=t.by_category;let p=d.slice(0,n),f=p.length>0?p[0].count:1;for(let h of p)o.push(` ${h.label.padEnd(18)} ${String(h.count).padStart(5)} ${fu(h.count,f,30)}`);let m=Math.max(0,d.length-n);return m>0&&o.push(` ... ${m} more categor${m===1?"y":"ies"}`),o}function Ew(t){if(!t||t.autoMemoryCount===0)return[];let e=[];e.push(""),e.push(`Auto-memory \u2713 ${t.autoMemoryCount} preference${t.autoMemoryCount===1?"":"s"} learned across ${t.autoMemoryProjects} project${t.autoMemoryProjects===1?"":"s"}`);let r=Object.entries(t.autoMemoryByPrefix).sort((o,s)=>s[1]-o[1]).slice(0,6),n=r.length>0?r[0][1]:1;for(let[o,s]of r)e.push(` ${o.padEnd(12)} ${String(s).padStart(2)} ${fu(s,n,20)}`);return e}function Tw(t,e){let r=[],n=mu(t),o=(e?.totalEvents??0)*256+t,s=mu(o);return r.push(""),r.push("\u2500".repeat(65)),r.push("Your AI talks less, remembers more, costs less."),r.push(`${n} this session \xB7 ${s} lifetime`),r.push("\u2500".repeat(65)),r}function gu(t,e,r,n){let o=[],s=UD(t.session.uptime_min),i=n?.lifetime,a=n?.mcpUsage,c=t.savings.kept_out+(t.cache?t.cache.bytes_saved:0),u=t.savings.total_bytes_returned,l=t.savings.total_calls,d=c+u,p=d>0?c/d*100:0,f=Math.round(c/4),m=u>0?Math.max(1,Math.round(d/Math.max(u,1))):0;if(c===0){o.push(`context-mode ${s} ${l} calls`),o.push(""),l===0?o.push("No tool calls yet. Use batch_execute or execute to start saving tokens."):o.push(`${eo(u)} entered context | 0 tokens saved`),o.push(...$w(t.projectMemory,{lifetime:i,sessionTokensSaved:0})),o.push(...Ew(i)),o.push(...Tw(0,i)),o.push("");let _=e?`v${e}`:"context-mode";return o.push(_),e&&r&&r!=="unknown"&&MD(r,e)&&o.push(`Update available: v${e} -> v${r} | ctx_upgrade`),o.join(`
501
+ `)}o.push(`${fg(f)} tokens saved \xB7 ${p.toFixed(1)}% reduction \xB7 ${s} \xB7 ~${mu(f)} saved (Opus)`),o.push(""),o.push(`Without context-mode |${fu(d,d)}| ${eo(d)}`),o.push(`With context-mode |${fu(u,d)}| ${eo(u)}`),o.push(""),m>=2?o.push(`${eo(c)} kept out of your conversation \u2014 ${m}\xD7 longer sessions before compact.`):o.push(`${eo(c)} kept out of your conversation. Never entered context.`),o.push("");let h=[`${l} calls`];t.cache&&t.cache.hits>0&&h.push(`${t.cache.hits} cache hits (+${eo(t.cache.bytes_saved)})`),o.push(h.join(" \xB7 "));let g=t.savings.by_tool.filter(_=>_.calls>0);if(g.length>=2){o.push("");let _=g.map(x=>{let k=x.context_kb*1024,E=p<100?k/(1-p/100):k,H=Math.max(0,E-k);return{...x,returnedBytes:k,estimatedSaved:H}}).sort((x,k)=>k.estimatedSaved-x.estimatedSaved);for(let x of _){let k=x.tool.length>22?x.tool.slice(0,19)+"...":x.tool;o.push(` ${k.padEnd(22)} ${String(x.calls).padStart(4)} calls ${eo(x.estimatedSaved).padStart(8)} saved`)}}if(a&&a.length>0){let _=a.filter(x=>x.median_concurrency!=null&&(x.max_concurrency??1)>1);if(_.length>0){o.push(""),o.push("Parallel I/O \u2713 one call did the work of many \u2014 faster runs, lower bill, same answer.");for(let x of _){let k=x.tool_name.replace(/^mcp__.*?__/,"");o.push(` ${k.padEnd(22)} ${x.calls} batches \xB7 ${x.median_concurrency} typical, ${x.max_concurrency} peak`)}}}o.push(...$w(t.projectMemory,{lifetime:i,sessionTokensSaved:f})),o.push(...Ew(i)),o.push(...Tw(f,i)),o.push("");let y=e?`v${e}`:"context-mode";return o.push(y),e&&r&&r!=="unknown"&&r!==e&&o.push(`Update available: v${e} -> v${r} | ctx_upgrade`),o.join(`
502
+ `)}var mg,LD,is,hu,Pw=v(()=>{"use strict";ns();mg={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"},LD={file:"Restored after compact \u2014 no need to re-read",rule:"Your project instructions survive context resets",prompt:"Continues exactly where you left off",decision:"Applied automatically \u2014 won\u2019t ask again",task:"Picks up from where it stopped",error:"Tracked and monitored across compacts",git:"Branch, commit, and repo state preserved",env:"Runtime config carried forward",mcp:"Tool usage patterns remembered",subagent:"Delegation history preserved",skill:"Skill invocations tracked"},is=class{db;constructor(e){this.db=e}static contextSavingsTotal(e,r){let n=e-r,o=e>0?Math.round(n/e*1e3)/10:0;return{rawBytes:e,contextBytes:r,savedBytes:n,savedPercent:o}}static thinkInCodeComparison(e,r){let n=r>0?Math.round(e/r*10)/10:0;return{fileBytes:e,outputBytes:r,ratio:n}}static toolSavings(e){return e.map(r=>({...r,savedBytes:r.rawBytes-r.contextBytes}))}static sandboxIO(e,r){return{inputBytes:e,outputBytes:r}}getMcpToolUsage(){let e;try{e=this.db.prepare("SELECT data FROM session_events WHERE category = 'mcp_tool_call'").all()}catch{return[]}let r=new Map;for(let o of e){let s;try{s=JSON.parse(o.data)}catch{continue}let i=typeof s.tool_name=="string"?s.tool_name:null;if(!i)continue;let a=r.get(i)??{calls:0,concurrencies:[]};if(a.calls+=1,s.truncated!==!0&&s.params&&typeof s.params=="object"){let c=s.params.concurrency;typeof c=="number"&&Number.isFinite(c)&&c>0&&a.concurrencies.push(c)}r.set(i,a)}let n=[];for(let[o,s]of r){let i=null,a=null;if(s.concurrencies.length>0){let c=[...s.concurrencies].sort((l,d)=>l-d),u=Math.floor(c.length/2);i=c.length%2===0?(c[u-1]+c[u])/2:c[u],a=c[c.length-1]}n.push({tool_name:o,calls:s.calls,median_concurrency:i,max_concurrency:a})}return n.sort((o,s)=>s.calls-o.calls||o.tool_name.localeCompare(s.tool_name)),n}queryAll(e){let n=this.db.prepare("SELECT session_id FROM session_meta ORDER BY started_at DESC LIMIT 1").get()?.session_id??"",o=Object.values(e.bytesReturned).reduce((N,ce)=>N+ce,0),s=Object.values(e.calls).reduce((N,ce)=>N+ce,0),i=e.bytesIndexed+e.bytesSandboxed,a=i+o,c=a/Math.max(o,1),u=a>0?Math.round((1-o/a)*100):0,l=new Set([...Object.keys(e.calls),...Object.keys(e.bytesReturned)]),d=Array.from(l).sort().map(N=>({tool:N,calls:e.calls[N]||0,context_kb:Math.round((e.bytesReturned[N]||0)/1024*10)/10,tokens:Math.round((e.bytesReturned[N]||0)/4)})),f=((Date.now()-e.sessionStart)/6e4).toFixed(1),m;if(e.cacheHits>0||e.cacheBytesSaved>0){let N=a+e.cacheBytesSaved,ce=N/Math.max(o,1),De=Math.max(0,24-Math.floor((Date.now()-e.sessionStart)/(3600*1e3)));m={hits:e.cacheHits,bytes_saved:e.cacheBytesSaved,ttl_hours_left:De,total_with_cache:N,total_savings_ratio:ce}}let h=this.db.prepare("SELECT COUNT(*) as cnt FROM session_events WHERE session_id = ?").get(n).cnt,g=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events WHERE session_id = ? GROUP BY category ORDER BY cnt DESC").all(n),_=this.db.prepare("SELECT compact_count FROM session_meta WHERE session_id = ?").get(n)?.compact_count??0,x=this.db.prepare("SELECT event_count, consumed FROM session_resume WHERE session_id = ? ORDER BY created_at DESC LIMIT 1").get(n),k=x?!x.consumed:!1,E=this.db.prepare("SELECT category, type, data FROM session_events WHERE session_id = ? ORDER BY id DESC").all(n),H=new Map;for(let N of E){H.has(N.category)||H.set(N.category,new Set);let ce=H.get(N.category);if(ce.size<5){let De=N.data;N.category==="file"?De=N.data.split("/").pop()||N.data:(N.category==="prompt"||N.category==="user-prompt")&&(De=De.length>50?De.slice(0,47)+"...":De),De.length>40&&(De=De.slice(0,37)+"..."),ce.add(De)}}let z=g.map(N=>({category:N.category,count:N.cnt,label:mg[N.category]||N.category,preview:H.get(N.category)?Array.from(H.get(N.category)).join(", "):"",why:LD[N.category]||"Survives context resets"})),K=this.db.prepare("SELECT COUNT(*) as cnt, COUNT(DISTINCT session_id) as sessions FROM session_events").get(),P=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all().filter(N=>N.cnt>0).map(N=>({category:N.category,count:N.cnt,label:mg[N.category]||N.category}));return{savings:{processed_kb:Math.round(a/1024*10)/10,entered_kb:Math.round(o/1024*10)/10,saved_kb:Math.round(i/1024*10)/10,pct:u,savings_ratio:Math.round(c*10)/10,by_tool:d,total_calls:s,total_bytes_returned:o,kept_out:i,total_processed:a},cache:m,session:{id:n,uptime_min:f},continuity:{total_events:h,by_category:z,compact_count:_,resume_ready:k},projectMemory:{total_events:K.cnt,session_count:K.sessions,by_category:P}}}};hu=15/1e6});var Ww={};Ze(Ww,{buildBatchNodeOptionsPrefix:()=>qw,classifyIp:()=>Tg,extractSnippet:()=>$g,formatBatchQueryResults:()=>Hw,positionsFromHighlight:()=>Zw,runBatchCommands:()=>Bw});import{createRequire as Mw}from"node:module";import{createHash as ZD}from"node:crypto";import{existsSync as je,unlinkSync as _r,readdirSync as HD,readFileSync as vg,writeFileSync as bg,renameSync as qD,rmSync as vu,mkdirSync as zi,cpSync as BD,statSync as Rw,symlinkSync as VD,lstatSync as WD}from"node:fs";import{execSync as qt}from"node:child_process";import{join as pe,dirname as nr,resolve as ot,sep as GD,isAbsolute as KD}from"node:path";import{fileURLToPath as JD}from"node:url";import{homedir as ro,tmpdir as Sg,cpus as YD}from"node:os";import{request as XD}from"node:https";function QD(t){try{let e=xr();if(!je(e))return;let r=HD(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=pe(e,n);try{t.index({path:o,source:"session-events"}),_r(o)}catch{}}}catch{}}function xr(){if(cs)return cs.getSessionDir();try{let e=wr(),r=wl(e.platform);if(r){let n=pe(ro(),...r,"context-mode","sessions");return zi(n,{recursive:!0}),n}}catch{}let t=pe(ro(),".claude","context-mode","sessions");return zi(t,{recursive:!0}),t}function Mi(){return process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.VSCODE_CWD||process.env.OPENCODE_PROJECT_DIR||process.env.PI_PROJECT_DIR||process.env.IDEA_INITIAL_DIRECTORY||process.env.CONTEXT_MODE_PROJECT_DIR||process.cwd()}function eM(t){return KD(t)?t:ot(Mi(),t)}function us(){let e=Mi().replace(/\\/g,"/");return ZD("sha256").update(e).digest("hex").slice(0,16)}function Lw(){return pe(xr(),`${us()}${Ii()}.db`)}function yg(){let t=us(),e=xr(),r=pe(nr(e),"content");return zi(r,{recursive:!0}),pe(r,`${t}.db`)}function no(){if(!yr){let t=yg();yr=new pu(t);try{let e=nr(yg());tg(e,14),yr.cleanupStaleSources(14);let r=pe(ro(),".context-mode","content");je(r)&&tg(r,0)}catch{}eg()}return QD(yr),yr}async function Ow(){return new Promise(t=>{let e=XD("https://registry.npmjs.org/context-mode/latest",{headers:{Connection:"close"}},r=>{let n="";r.on("data",o=>{n+=o}),r.on("end",()=>{try{let o=JSON.parse(n);t(o.version??"unknown")}catch{t("unknown")}})});e.on("error",()=>t("unknown")),e.setTimeout(5e3,()=>{e.destroy(),t("unknown")}),e.end()})}function nM(){let t=cs?.name;return t==="Claude Code"?"/ctx-upgrade":t==="OpenClaw"?"npm run install:openclaw":t==="Pi"?"npm run build":"npm update -g context-mode"}function oM(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}function sM(){return!Mr||Mr==="unknown"?!1:oM(Mr,Dr)}function iM(){if(!sM())return!1;let t=Date.now();if(_u>=tM){if(t-Cw<rM)return!1;_u=0}return _u===0&&(Cw=t),_u++,!0}function aM(){if(!Iw){Iw=!0;try{let t=ot(ro(),".claude","plugins","installed_plugins.json");if(!je(t))return;let e=JSON.parse(vg(t,"utf-8")),r=ot(ro(),".claude","plugins","cache"),n=je(ot(kt,"package.json"))?kt:nr(kt);for(let[o,s]of Object.entries(e.plugins??{}))if(o==="context-mode@context-mode")for(let i of s){let a=i.installPath;if(!a||je(a)||!ot(a).startsWith(r+GD))continue;try{WD(a).isSymbolicLink()&&_r(a)}catch{}let c=nr(a);je(c)||zi(c,{recursive:!0}),je(n)&&VD(n,a,process.platform==="win32"?"junction":void 0)}}catch{}}}function W(t,e){if(aM(),iM()&&e.content.length>0){let n=nM();e.content[0].text=`\u26A0\uFE0F context-mode v${Dr} outdated \u2192 v${Mr} available. Upgrade: ${n}
503
503
 
504
- `+e.content[0].text}let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return re.calls[t]=(re.calls[t]||0)+1,re.bytesReturned[t]=(re.bytesReturned[t]||0)+r,Su(),setImmediate(()=>fw(Mw(),t,r)),e}function or(t){re.bytesIndexed+=t,Su()}function Lw(){let t=process.env.CLAUDE_SESSION_ID||`pid-${process.ppid}`;return pe(xr(),`stats-${t}.json`)}function Su(){let t=Date.now();if(!(t-xg<cM)){xg=t;try{let e=Object.values(re.bytesReturned).reduce((d,p)=>d+p,0),r=Object.values(re.calls).reduce((d,p)=>d+p,0),n=re.bytesIndexed+re.bytesSandboxed+re.cacheBytesSaved,o=n+e,s=o>0?Math.round((1-e/o)*100):0,i=Math.round(n/4),a=xu?.tokens??0;if(!xu||t-xu.computedAt>lM)try{a=(Ni({sessionsDir:xr()})?.totalEvents??0)*dM,xu={tokens:a,computedAt:t}}catch{}let c={schemaVersion:uM,version:Dr,updated_at:t,session_start:re.sessionStart,uptime_ms:t-re.sessionStart,total_calls:r,bytes_returned:e,bytes_indexed:re.bytesIndexed,bytes_sandboxed:re.bytesSandboxed,cache_hits:re.cacheHits,cache_bytes_saved:re.cacheBytesSaved,kept_out:n,total_processed:o,reduction_pct:s,tokens_saved:i,dollars_saved_session:+(i*gu).toFixed(2),tokens_saved_lifetime:a,dollars_saved_lifetime:+(a*gu).toFixed(2),by_tool:Object.fromEntries(Object.keys({...re.calls,...re.bytesReturned}).map(d=>[d,{calls:re.calls[d]||0,bytes:re.bytesReturned[d]||0}]))},u=Lw(),l=`${u}.tmp`;bg(l,JSON.stringify(c)),qD(l,u)}catch{}}}function wg(t,e){try{let r=og(process.env.CLAUDE_PROJECT_DIR),n=sg(t,r);if(n.decision==="deny")return W(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function Fw(t,e,r){try{let n=iw(t,e);if(n.length===0)return null;let o=og(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=sg(s,o);if(i.decision==="deny")return W(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 pM(t,e){try{let r=Mi(),n=ow("Read",r),o=sw(t,n,process.platform==="win32",r);if(o.denied)return W(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${o.matchedPattern}`}],isError:!0})}catch{}return null}function Uw(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===hM){for(e.push(r),n++;n<t.length&&t[n]!==gM;)r++,n++;n<t.length&&n++}else r++,n++;return e}function $g(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of Uw(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 p=l.indexOf(d);for(;p!==-1;)o.push(p),p=l.indexOf(d,p+1)}}if(o.length===0)return t.slice(0,r)+`
504
+ `+e.content[0].text}let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return re.calls[t]=(re.calls[t]||0)+1,re.bytesReturned[t]=(re.bytesReturned[t]||0)+r,bu(),setImmediate(()=>hw(Lw(),t,r)),e}function or(t){re.bytesIndexed+=t,bu()}function Fw(){let t=process.env.CLAUDE_SESSION_ID||`pid-${process.ppid}`;return pe(xr(),`stats-${t}.json`)}function bu(){let t=Date.now();if(!(t-xg<cM)){xg=t;try{let e=Object.values(re.bytesReturned).reduce((d,p)=>d+p,0),r=Object.values(re.calls).reduce((d,p)=>d+p,0),n=re.bytesIndexed+re.bytesSandboxed+re.cacheBytesSaved,o=n+e,s=o>0?Math.round((1-e/o)*100):0,i=Math.round(n/4),a=yu?.tokens??0;if(!yu||t-yu.computedAt>lM)try{a=(Ni({sessionsDir:xr()})?.totalEvents??0)*dM,yu={tokens:a,computedAt:t}}catch{}let c={schemaVersion:uM,version:Dr,updated_at:t,session_start:re.sessionStart,uptime_ms:t-re.sessionStart,total_calls:r,bytes_returned:e,bytes_indexed:re.bytesIndexed,bytes_sandboxed:re.bytesSandboxed,cache_hits:re.cacheHits,cache_bytes_saved:re.cacheBytesSaved,kept_out:n,total_processed:o,reduction_pct:s,tokens_saved:i,dollars_saved_session:+(i*hu).toFixed(2),tokens_saved_lifetime:a,dollars_saved_lifetime:+(a*hu).toFixed(2),by_tool:Object.fromEntries(Object.keys({...re.calls,...re.bytesReturned}).map(d=>[d,{calls:re.calls[d]||0,bytes:re.bytesReturned[d]||0}]))},u=Fw(),l=`${u}.tmp`;bg(l,JSON.stringify(c)),qD(l,u)}catch{}}}function wg(t,e){try{let r=og(process.env.CLAUDE_PROJECT_DIR),n=sg(t,r);if(n.decision==="deny")return W(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function Uw(t,e,r){try{let n=aw(t,e);if(n.length===0)return null;let o=og(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=sg(s,o);if(i.decision==="deny")return W(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 pM(t,e){try{let r=Mi(),n=sw("Read",r),o=iw(t,n,process.platform==="win32",r);if(o.denied)return W(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${o.matchedPattern}`}],isError:!0})}catch{}return null}function Zw(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===hM){for(e.push(r),n++;n<t.length&&t[n]!==gM;)r++,n++;n<t.length&&n++}else r++,n++;return e}function $g(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of Zw(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 p=l.indexOf(d);for(;p!==-1;)o.push(p),p=l.indexOf(d,p+1)}}if(o.length===0)return t.slice(0,r)+`
505
505
  \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(`
506
506
 
507
- `)}function Zw(t,e,r,n=80*1024){let o=[],s=0;for(let i of e){if(s>n){o.push(`## ${i}
507
+ `)}function Hw(t,e,r,n=80*1024){let o=[],s=0;for(let i of e){if(s>n){o.push(`## ${i}
508
508
  (output cap reached \u2014 use ctx_search(queries: ["${i}"]) for details)
509
- `);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=$g(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}function _M(t){return`'${t.replace(/'/g,"'\\''")}'`}function yM(t){return`'${t.replace(/'/g,"''")}'`}function Hw(t,e){let r=`--require ${e}`,n=t.toLowerCase(),o=n.split(/[\\/]/).pop()??n;return n.includes("powershell")||n.includes("pwsh")?`$env:NODE_OPTIONS=${yM(r)}; `:o==="cmd"||o==="cmd.exe"?`set "NODE_OPTIONS=${r.replace(/"/g,'""')}" && `:`NODE_OPTIONS=${_M(r)} `}function Iw(t,e,r){let n=e||"(no output)",o=n.matchAll(/__CM_FS__:(\d+)/g),s=0;for(let i of o)s+=parseInt(i[1]);return s>0&&(r?.(s),n=n.replace(/__CM_FS__:\d+\n?/g,"")),`# ${t}
509
+ `);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=$g(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}function _M(t){return`'${t.replace(/'/g,"'\\''")}'`}function yM(t){return`'${t.replace(/'/g,"''")}'`}function qw(t,e){let r=`--require ${e}`,n=t.toLowerCase(),o=n.split(/[\\/]/).pop()??n;return n.includes("powershell")||n.includes("pwsh")?`$env:NODE_OPTIONS=${yM(r)}; `:o==="cmd"||o==="cmd.exe"?`set "NODE_OPTIONS=${r.replace(/"/g,'""')}" && `:`NODE_OPTIONS=${_M(r)} `}function Aw(t,e,r){let n=e||"(no output)",o=n.matchAll(/__CM_FS__:(\d+)/g),s=0;for(let i of o)s+=parseInt(i[1]);return s>0&&(r?.(s),n=n.replace(/__CM_FS__:\d+\n?/g,"")),`# ${t}
510
510
 
511
511
  ${n}
512
- `}async function qw(t,e,r){let{timeout:n,concurrency:o,nodeOptsPrefix:s,onFsBytes:i}=e;if(o<=1){let d=[],p=Date.now(),f=!1;for(let m=0;m<t.length;m++){let h=t[m],g;if(n!==void 0){let _=Date.now()-p,x=n-_;if(x<=0){d.push(`# ${h.label}
512
+ `}async function Bw(t,e,r){let{timeout:n,concurrency:o,nodeOptsPrefix:s,onFsBytes:i}=e;if(o<=1){let d=[],p=Date.now(),f=!1;for(let m=0;m<t.length;m++){let h=t[m],g;if(n!==void 0){let _=Date.now()-p,x=n-_;if(x<=0){d.push(`# ${h.label}
513
513
 
514
514
  (skipped \u2014 batch timeout exceeded)
515
- `),f=!0;continue}g=x}let y=await r.execute({language:"shell",code:`${s}${h.command} 2>&1`,timeout:g});if(d.push(Iw(h.label,y.stdout,i)),y.timedOut){f=!0;for(let _=m+1;_<t.length;_++)d.push(`# ${t[_].label}
515
+ `),f=!0;continue}g=x}let y=await r.execute({language:"shell",code:`${s}${h.command} 2>&1`,timeout:g});if(d.push(Aw(h.label,y.stdout,i)),y.timedOut){f=!0;for(let _=m+1;_<t.length;_++)d.push(`# ${t[_].label}
516
516
 
517
517
  (skipped \u2014 batch timeout exceeded)
518
- `);break}}return{outputs:d,timedOut:f}}let a=t.map(d=>({run:async()=>{let p=await r.execute({language:"shell",code:`${s}${d.command} 2>&1`,timeout:n}),f=Iw(d.label,p.stdout,i);return{output:p.timedOut?f.replace(/\n$/,"")+`
518
+ `);break}}return{outputs:d,timedOut:f}}let a=t.map(d=>({run:async()=>{let p=await r.execute({language:"shell",code:`${s}${d.command} 2>&1`,timeout:n}),f=Aw(d.label,p.stdout,i);return{output:p.timedOut?f.replace(/\n$/,"")+`
519
519
  (timed out after ${n??"?"}ms)
520
520
  `:f,timedOut:!!p.timedOut}}})),{settled:c}=await Gh(a,{concurrency:o}),u=new Array(t.length),l=!1;for(let d=0;d<c.length;d++){let p=c[d];if(p.status==="fulfilled")u[d]=p.value.output,p.value.timedOut&&(l=!0);else{let f=p.reason instanceof Error?p.reason.message:String(p.reason);u[d]=`# ${t[d].label}
521
521
 
522
522
  (executor error: ${f})
523
- `}}return{outputs:u,timedOut:l}}function Bw(t,e){let r=no();or(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}
523
+ `}}return{outputs:u,timedOut:l}}function Vw(t,e){let r=no();or(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}
524
524
  Use ctx_search(queries: ["..."]) to query this content. Use source: "${n.label}" to scope results.`}]}}function as(t,e,r,n=5){let o=t.split(`
525
525
  `).length,s=Buffer.byteLength(t),i=no(),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 ctx_search(queries: [...]) to explore the indexed content."),d.join(`
526
526
  `)}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 p=d.content.split(`
527
527
  `)[0].slice(0,120);l.push(` - ${d.title}: ${p}`)}return u.length>0&&(l.push(""),l.push(`Searchable terms: ${u.join(", ")}`)),l.push(""),l.push("Use ctx_search(queries: [...]) to retrieve full content of any section."),l.join(`
528
- `)}function Eg(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function vM(t){let e=Eg(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}function bM(){return gg||(gg=Dw(import.meta.url).resolve("turndown")),gg}function SM(){return _g||(_g=Dw(import.meta.url).resolve("turndown-plugin-gfm")),_g}function kM(t,e){let r=JSON.stringify(bM()),n=JSON.stringify(SM()),o=JSON.stringify(e);return`
528
+ `)}function Eg(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function vM(t){let e=Eg(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}function bM(){return gg||(gg=Mw(import.meta.url).resolve("turndown")),gg}function SM(){return _g||(_g=Mw(import.meta.url).resolve("turndown-plugin-gfm")),_g}function kM(t,e){let r=JSON.stringify(bM()),n=JSON.stringify(SM()),o=JSON.stringify(e);return`
529
529
  const TurndownService = require(${r});
530
530
  const { gfm } = require(${n});
531
531
  const fs = require('fs');
@@ -571,14 +571,14 @@ async function main() {
571
571
  emit('text', text);
572
572
  }
573
573
  main();
574
- `}async function $M(t){let e;try{e=new URL(t)}catch{return{kind:"fetch_error",url:t,error:"invalid URL",reason:"exit"}}if(e.protocol!=="http:"&&e.protocol!=="https:")return{kind:"fetch_error",url:t,error:`URL scheme "${e.protocol}" not allowed (only http: and https:)`,reason:"exit"};let r=process.env.CTX_FETCH_STRICT==="1";try{let{lookup:n}=await import("node:dns/promises"),o=await n(e.hostname,{all:!0,verbatim:!0});for(let s of o){let i=Tg(s.address);if(i==="block")return{kind:"fetch_error",url:t,error:`URL "${e.hostname}" resolves to ${s.address} \u2014 blocked (link-local / IMDS / multicast / reserved)`,reason:"exit"};if(i==="private"&&r)return{kind:"fetch_error",url:t,error:`URL "${e.hostname}" resolves to private IP ${s.address} \u2014 blocked under CTX_FETCH_STRICT=1`,reason:"exit"}}}catch(n){return{kind:"fetch_error",url:t,error:`DNS lookup failed for "${e.hostname}": ${n instanceof Error?n.message:String(n)}`,reason:"exit"}}return null}function Tg(t){let e=t.toLowerCase();if(e.includes(":")){let s=e.match(/^::ffff:([\d.]+)$/);return s?Tg(s[1]):e==="::"||e.startsWith("fe8")||e.startsWith("fe9")||e.startsWith("fea")||e.startsWith("feb")||e.startsWith("ff")?"block":e==="::1"||e.startsWith("fc")||e.startsWith("fd")?"private":"public"}if(!t.includes("."))return"block";let r=t.split(".").map(s=>parseInt(s,10));if(r.length!==4||r.some(s=>isNaN(s)||s<0||s>255))return"block";let[n,o]=r;return n===169&&o===254||n===0||n>=224?"block":n===127||n===10||n===172&&o>=16&&o<=31||n===192&&o===168?"private":"public"}async function EM(t,e,r){let n=await $M(t);if(n)return n;if(!r){let s=no(),i=rg(e,t),a=s.getSourceMeta(i);if(a){let c=new Date(a.indexedAt+"Z"),u=Date.now()-c.getTime();if(u<wM){let l=Math.floor(u/36e5),d=Math.floor(u/(60*1e3)),p=l>0?`${l}h ago`:d>0?`${d}m ago`:"just now",f=a.chunkCount*1600;return{kind:"cached",label:a.label,chunkCount:a.chunkCount,estimatedBytes:f,ageStr:p}}}}let o=pe(Sg(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let s=kM(t,o),i=await Di.execute({language:"javascript",code:s,timeout:3e4});if(i.exitCode!==0)return{kind:"fetch_error",url:t,error:i.stderr||i.stdout||"unknown error",reason:"exit"};let a=(i.stdout||"").trim(),c;try{c=vg(o,"utf-8").trim()}catch{return{kind:"fetch_error",url:t,error:"could not read subprocess output",reason:"read"}}return c.length===0?{kind:"fetch_error",url:t,error:"empty content",reason:"empty"}:{kind:"fetched",url:t,source:e,markdown:c,header:a}}catch(s){return{kind:"fetch_error",url:t,error:s instanceof Error?s.message:String(s),reason:"throw"}}finally{try{bu(o)}catch{}}}function TM(t){let e=no(),r=rg(t.source,t.url),n;t.header==="__CM_CT__:json"?n=e.indexJSON(t.markdown,r):t.header==="__CM_CT__:text"?n=e.indexPlainText(t.markdown,r):n=e.index({content:t.markdown,source:r}),or(Buffer.byteLength(t.markdown));let o=t.markdown.length>zw?t.markdown.slice(0,zw)+`
574
+ `}async function $M(t){let e;try{e=new URL(t)}catch{return{kind:"fetch_error",url:t,error:"invalid URL",reason:"exit"}}if(e.protocol!=="http:"&&e.protocol!=="https:")return{kind:"fetch_error",url:t,error:`URL scheme "${e.protocol}" not allowed (only http: and https:)`,reason:"exit"};let r=process.env.CTX_FETCH_STRICT==="1";try{let{lookup:n}=await import("node:dns/promises"),o=await n(e.hostname,{all:!0,verbatim:!0});for(let s of o){let i=Tg(s.address);if(i==="block")return{kind:"fetch_error",url:t,error:`URL "${e.hostname}" resolves to ${s.address} \u2014 blocked (link-local / IMDS / multicast / reserved)`,reason:"exit"};if(i==="private"&&r)return{kind:"fetch_error",url:t,error:`URL "${e.hostname}" resolves to private IP ${s.address} \u2014 blocked under CTX_FETCH_STRICT=1`,reason:"exit"}}}catch(n){return{kind:"fetch_error",url:t,error:`DNS lookup failed for "${e.hostname}": ${n instanceof Error?n.message:String(n)}`,reason:"exit"}}return null}function Tg(t){let e=t.toLowerCase();if(e.includes(":")){let s=e.match(/^::ffff:([\d.]+)$/);return s?Tg(s[1]):e==="::"||e.startsWith("fe8")||e.startsWith("fe9")||e.startsWith("fea")||e.startsWith("feb")||e.startsWith("ff")?"block":e==="::1"||e.startsWith("fc")||e.startsWith("fd")?"private":"public"}if(!t.includes("."))return"block";let r=t.split(".").map(s=>parseInt(s,10));if(r.length!==4||r.some(s=>isNaN(s)||s<0||s>255))return"block";let[n,o]=r;return n===169&&o===254||n===0||n>=224?"block":n===127||n===10||n===172&&o>=16&&o<=31||n===192&&o===168?"private":"public"}async function EM(t,e,r){let n=await $M(t);if(n)return n;if(!r){let s=no(),i=rg(e,t),a=s.getSourceMeta(i);if(a){let c=new Date(a.indexedAt+"Z"),u=Date.now()-c.getTime();if(u<wM){let l=Math.floor(u/36e5),d=Math.floor(u/(60*1e3)),p=l>0?`${l}h ago`:d>0?`${d}m ago`:"just now",f=a.chunkCount*1600;return{kind:"cached",label:a.label,chunkCount:a.chunkCount,estimatedBytes:f,ageStr:p}}}}let o=pe(Sg(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let s=kM(t,o),i=await Di.execute({language:"javascript",code:s,timeout:3e4});if(i.exitCode!==0)return{kind:"fetch_error",url:t,error:i.stderr||i.stdout||"unknown error",reason:"exit"};let a=(i.stdout||"").trim(),c;try{c=vg(o,"utf-8").trim()}catch{return{kind:"fetch_error",url:t,error:"could not read subprocess output",reason:"read"}}return c.length===0?{kind:"fetch_error",url:t,error:"empty content",reason:"empty"}:{kind:"fetched",url:t,source:e,markdown:c,header:a}}catch(s){return{kind:"fetch_error",url:t,error:s instanceof Error?s.message:String(s),reason:"throw"}}finally{try{vu(o)}catch{}}}function TM(t){let e=no(),r=rg(t.source,t.url),n;t.header==="__CM_CT__:json"?n=e.indexJSON(t.markdown,r):t.header==="__CM_CT__:text"?n=e.indexPlainText(t.markdown,r):n=e.index({content:t.markdown,source:r}),or(Buffer.byteLength(t.markdown));let o=t.markdown.length>jw?t.markdown.slice(0,jw)+`
575
575
 
576
- \u2026[truncated \u2014 use ctx_search() for full content]`:t.markdown;return{label:n.label,totalChunks:n.totalChunks,totalBytes:Buffer.byteLength(t.markdown),preview:o}}function jw(){return{prepare:()=>({run:()=>{},get:(...t)=>({cnt:0,compact_count:0,minutes:null,rate:0,avg:0,outcome:"exploratory"}),all:()=>[]})}}async function PM(){let t=eg();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=process.platform==="win32"?Sg():"/tmp",r=pe(e,`context-mode-mcp-ready-${process.pid}`),n=()=>{Di.cleanupBackgrounded(),yr&&yr.close();try{_r(kg)}catch{}try{_r(r)}catch{}if(jr&&jr.pid&&!jr.killed)try{jr.kill("SIGTERM")}catch{}},o=async()=>{try{xg=0,Su()}catch{}n(),process.exit(0)};process.on("exit",n),process.on("SIGINT",()=>{o()}),process.on("SIGTERM",()=>{o()}),uw({onShutdown:()=>o()});let s=new iu;await Qe.connect(s);try{bg(r,String(process.pid))}catch{}try{let{detectPlatform:i,getAdapter:a}=await Promise.resolve().then(()=>(ua(),sy)),c=Qe.server.getClientVersion(),u=i(c??void 0);cs=await a(u.platform),c&&console.error(`MCP client: ${c.name} v${c.version} \u2192 ${u.platform}`)}catch{}try{let i=hw(Mw());if(i){for(let[a,c]of Object.entries(i.calls))re.calls[a]=c;for(let[a,c]of Object.entries(i.bytesReturned))re.bytesReturned[a]=c;i.sessionStart>0&&(re.sessionStart=i.sessionStart)}}catch{}Cw().then(i=>{i!=="unknown"&&(Mr=i)}),setInterval(()=>{Cw().then(i=>{i!=="unknown"&&(Mr=i)})},3600*1e3).unref(),setInterval(()=>Su(),6e4).unref(),console.error(`Context Mode MCP server v${Dr} running on stdio`),console.error(`Detected runtimes:
577
- ${Ji(ji)}`),io()||(console.error(`
578
- Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}var kt,Dr,ji,vu,Qe,Di,kg,yr,cs,jr,re,Mr,yu,Rw,tM,rM,Ow,cM,uM,lM,dM,xg,xu,mM,fM,hM,gM,ku,wu,to,hg,xM,Aw,Nw,gg,_g,wM,zw,Ww=v(()=>{"use strict";Rk();Ak();qh();Wh();Zk();Xk();Qk();aw();Xi();cw();lw();cg();gw();Sw();Sr();ua();ns();Tw();Un();kt=nr(JD(import.meta.url)),Dr=(()=>{for(let t of["../package.json","./package.json"]){let e=ot(kt,t);if(je(e))try{return JSON.parse(vg(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
576
+ \u2026[truncated \u2014 use ctx_search() for full content]`:t.markdown;return{label:n.label,totalChunks:n.totalChunks,totalBytes:Buffer.byteLength(t.markdown),preview:o}}function Dw(){return{prepare:()=>({run:()=>{},get:(...t)=>({cnt:0,compact_count:0,minutes:null,rate:0,avg:0,outcome:"exploratory"}),all:()=>[]})}}async function PM(){let t=eg();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=process.platform==="win32"?Sg():"/tmp",r=pe(e,`context-mode-mcp-ready-${process.pid}`),n=()=>{Di.cleanupBackgrounded(),yr&&yr.close();try{_r(kg)}catch{}try{_r(r)}catch{}if(jr&&jr.pid&&!jr.killed)try{jr.kill("SIGTERM")}catch{}},o=async()=>{try{xg=0,bu()}catch{}n(),process.exit(0)};process.on("exit",n),process.on("SIGINT",()=>{o()}),process.on("SIGTERM",()=>{o()}),lw({onShutdown:()=>o()});let s=new su;await Qe.connect(s);try{bg(r,String(process.pid))}catch{}try{let{detectPlatform:i,getAdapter:a}=await Promise.resolve().then(()=>(ca(),iy)),c=Qe.server.getClientVersion(),u=i(c??void 0);cs=await a(u.platform),c&&console.error(`MCP client: ${c.name} v${c.version} \u2192 ${u.platform}`)}catch{}try{let i=gw(Lw());if(i){for(let[a,c]of Object.entries(i.calls))re.calls[a]=c;for(let[a,c]of Object.entries(i.bytesReturned))re.bytesReturned[a]=c;i.sessionStart>0&&(re.sessionStart=i.sessionStart)}}catch{}Ow().then(i=>{i!=="unknown"&&(Mr=i)}),setInterval(()=>{Ow().then(i=>{i!=="unknown"&&(Mr=i)})},3600*1e3).unref(),setInterval(()=>bu(),6e4).unref(),console.error(`Context Mode MCP server v${Dr} running on stdio`),console.error(`Detected runtimes:
577
+ ${Ki(ji)}`),io()||(console.error(`
578
+ Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}var kt,Dr,ji,xu,Qe,Di,kg,yr,cs,jr,re,Mr,_u,Cw,tM,rM,Iw,cM,uM,lM,dM,xg,yu,mM,fM,hM,gM,Su,ku,to,hg,xM,Nw,zw,gg,_g,wM,jw,Gw=v(()=>{"use strict";Ck();Nk();qh();Wh();Hk();Qk();ew();cw();Yi();uw();dw();cg();_w();kw();Sr();ca();ns();Pw();Un();kt=nr(JD(import.meta.url)),Dr=(()=>{for(let t of["../package.json","./package.json"]){let e=ot(kt,t);if(je(e))try{return JSON.parse(vg(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
579
579
  `)});process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
580
- `)});ji=so(),vu=Yi(ji),Qe=new ou({name:"context-mode",version:Dr});Qe.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});Qe.server.setRequestHandler(Io,async()=>({prompts:[]}));Qe.server.setRequestHandler(Co,async()=>({resources:[]}));Qe.server.setRequestHandler(Oo,async()=>({resourceTemplates:[]}));Di=new Xo({runtimes:ji,projectRoot:()=>Mi()}),kg=pe(Sg(),`cm-fs-preload-${process.pid}.js`);bg(kg,`(function(){var __cm_fs=0;process.on('exit',function(){if(__cm_fs>0)try{process.stderr.write('__CM_FS__:'+__cm_fs+'\\n')}catch(e){}});try{var f=require('fs');var ors=f.readFileSync;f.readFileSync=function(){var r=ors.apply(this,arguments);if(Buffer.isBuffer(r))__cm_fs+=r.length;else if(typeof r==='string')__cm_fs+=Buffer.byteLength(r);return r;};}catch(e){}})();
581
- `);yr=null;cs=null,jr=null;re={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()},Mr=null,yu=0,Rw=0,tM=3,rM=3600*1e3;Ow=!1;cM=500,uM=2,lM=3e4,dM=256,xg=0;mM=vu.join(", "),fM=io()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",hM="",gM="";Qe.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.${fM} Available: ${mM}.
580
+ `)});ji=so(),xu=Ji(ji),Qe=new nu({name:"context-mode",version:Dr});Qe.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});Qe.server.setRequestHandler(Io,async()=>({prompts:[]}));Qe.server.setRequestHandler(Co,async()=>({resources:[]}));Qe.server.setRequestHandler(Oo,async()=>({resourceTemplates:[]}));Di=new Xo({runtimes:ji,projectRoot:()=>Mi()}),kg=pe(Sg(),`cm-fs-preload-${process.pid}.js`);bg(kg,`(function(){var __cm_fs=0;process.on('exit',function(){if(__cm_fs>0)try{process.stderr.write('__CM_FS__:'+__cm_fs+'\\n')}catch(e){}});try{var f=require('fs');var ors=f.readFileSync;f.readFileSync=function(){var r=ors.apply(this,arguments);if(Buffer.isBuffer(r))__cm_fs+=r.length;else if(typeof r==='string')__cm_fs+=Buffer.byteLength(r);return r;};}catch(e){}})();
581
+ `);yr=null;cs=null,jr=null;re={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()},Mr=null,_u=0,Cw=0,tM=3,rM=3600*1e3;Iw=!1;cM=500,uM=2,lM=3e4,dM=256,xg=0;mM=xu.join(", "),fM=io()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",hM="",gM="";Qe.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.${fM} Available: ${mM}.
582
582
 
583
583
  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.
584
584
 
@@ -586,7 +586,7 @@ THINK IN CODE: When you need to analyze, count, filter, compare, or process data
586
586
 
587
587
  When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:M.object({language:M.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:M.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:M.coerce.number().optional().describe("Max execution time in ms. When omitted, no server-side timer fires \u2014 the MCP host's RPC timeout governs (which is the right layer for this policy). Pass an explicit value for long-running builds (Gradle/Maven/SBT)."),background:M.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:M.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 ctx_search(queries: [...]) to retrieve specific sections. Example: 'failing tests', 'HTTP 500 errors'.
588
588
 
589
- 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=wg(e,"execute");if(s)return s}else{let s=Fw(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
589
+ 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=wg(e,"execute");if(s)return s}else{let s=Uw(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
590
590
  // FS read instrumentation \u2014 count bytes read via fs.readFileSync/readFile
591
591
  let __cm_fs=0;
592
592
  process.on('exit',()=>{if(__cm_fs>0)try{process.stderr.write('__CM_FS__:'+__cm_fs+'\\n')}catch{}});
@@ -652,13 +652,13 @@ _(process backgrounded after ${r}ms \u2014 still running)_`}]}):l?W("ctx_execute
652
652
  _(timed out after ${r}ms \u2014 partial output shown above)_`}]}):W("ctx_execute",{content:[{type:"text",text:`Execution timed out after ${r}ms
653
653
 
654
654
  stderr:
655
- ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:l,output:d}=ig({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(d)>ku?(or(Buffer.byteLength(d)),W("ctx_execute",{content:[{type:"text",text:as(d,o,l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):Buffer.byteLength(d)>wu?(or(Buffer.byteLength(d)),W("ctx_execute",{content:[{type:"text",text:as(d,"errors failures exceptions",l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):W("ctx_execute",{content:[{type:"text",text:d}],isError:l})}let u=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(u)>ku?(or(Buffer.byteLength(u)),W("ctx_execute",{content:[{type:"text",text:as(u,o,`execute:${t}`)}]})):Buffer.byteLength(u)>wu?W("ctx_execute",Bw(u,`execute:${t}`)):W("ctx_execute",{content:[{type:"text",text:u}]})}catch(s){let i=s instanceof Error?s.message:String(s);return W("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});ku=5e3,wu=102400;Qe.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.
655
+ ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:l,output:d}=ig({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(d)>Su?(or(Buffer.byteLength(d)),W("ctx_execute",{content:[{type:"text",text:as(d,o,l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):Buffer.byteLength(d)>ku?(or(Buffer.byteLength(d)),W("ctx_execute",{content:[{type:"text",text:as(d,"errors failures exceptions",l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):W("ctx_execute",{content:[{type:"text",text:d}],isError:l})}let u=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(u)>Su?(or(Buffer.byteLength(u)),W("ctx_execute",{content:[{type:"text",text:as(u,o,`execute:${t}`)}]})):Buffer.byteLength(u)>ku?W("ctx_execute",Vw(u,`execute:${t}`)):W("ctx_execute",{content:[{type:"text",text:u}]})}catch(s){let i=s instanceof Error?s.message:String(s);return W("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});Su=5e3,ku=102400;Qe.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.
656
656
 
657
657
  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.
658
658
 
659
659
  THINK IN CODE: Write code that processes FILE_CONTENT and console.log() only the answer. Don't read files into context to analyze mentally. Write robust, pure JavaScript \u2014 no npm deps, try/catch, null-safe. Node.js + Bun compatible.
660
660
 
661
- When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:M.object({path:M.string().describe("Absolute file path or relative to project root"),language:M.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:M.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:M.coerce.number().optional().describe("Max execution time in ms. When omitted, no server-side timer fires \u2014 the MCP host's RPC timeout governs."),intent:M.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=pM(t,"execute_file");if(s)return s;if(e==="shell"){let i=wg(r,"execute_file");if(i)return i}else{let i=Fw(r,e,"execute_file");if(i)return i}try{let i=await Di.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return W("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}=ig({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>ku?(or(Buffer.byteLength(u)),W("ctx_execute_file",{content:[{type:"text",text:as(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):Buffer.byteLength(u)>wu?(or(Buffer.byteLength(u)),W("ctx_execute_file",{content:[{type:"text",text:as(u,"errors failures exceptions",c?`file:${t}:error`:`file:${t}`)}],isError:c})):W("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)>ku?(or(Buffer.byteLength(a)),W("ctx_execute_file",{content:[{type:"text",text:as(a,o,`file:${t}`)}]})):Buffer.byteLength(a)>wu?W("ctx_execute_file",Bw(a,`file:${t}`)):W("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return W("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});Qe.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.
661
+ When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:M.object({path:M.string().describe("Absolute file path or relative to project root"),language:M.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:M.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:M.coerce.number().optional().describe("Max execution time in ms. When omitted, no server-side timer fires \u2014 the MCP host's RPC timeout governs."),intent:M.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=pM(t,"execute_file");if(s)return s;if(e==="shell"){let i=wg(r,"execute_file");if(i)return i}else{let i=Uw(r,e,"execute_file");if(i)return i}try{let i=await Di.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return W("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}=ig({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>Su?(or(Buffer.byteLength(u)),W("ctx_execute_file",{content:[{type:"text",text:as(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):Buffer.byteLength(u)>ku?(or(Buffer.byteLength(u)),W("ctx_execute_file",{content:[{type:"text",text:as(u,"errors failures exceptions",c?`file:${t}:error`:`file:${t}`)}],isError:c})):W("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)>Su?(or(Buffer.byteLength(a)),W("ctx_execute_file",{content:[{type:"text",text:as(a,o,`file:${t}`)}]})):Buffer.byteLength(a)>ku?W("ctx_execute_file",Vw(a,`file:${t}`)):W("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return W("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});Qe.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.
662
662
 
663
663
  WHEN TO USE:
664
664
  - Documentation from Context7, Skills, or MCP tools (API docs, framework guides, code examples)
@@ -671,7 +671,7 @@ WHEN TO USE:
671
671
  After indexing, use 'ctx_search' to retrieve specific sections on-demand.
672
672
  When \`path\` is provided, a content hash is stored for automatic stale detection in search results.
673
673
  Do NOT use for: log files, test output, CSV, build output \u2014 use 'ctx_execute_file' for those.`,inputSchema:M.object({content:M.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:M.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:M.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 W("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{let n=e?eM(e):void 0;if(t)or(Buffer.byteLength(t));else if(n)try{let i=await import("fs");or(i.readFileSync(n).byteLength)}catch{}let s=no().index({content:t,path:n,source:r??n});return W("ctx_index",{content:[{type:"text",text:`Indexed ${s.totalChunks} sections (${s.codeChunks} with code) from: ${s.label}
674
- Use ctx_search(queries: ["..."]) to query this content. Use source: "${s.label}" to scope results.`}]})}catch(n){let o=n instanceof Error?n.message:String(n);return W("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});to=0,hg=Date.now(),xM=6e4,Aw=3,Nw=8;Qe.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Requires prior indexing via ctx_batch_execute, ctx_index, or ctx_fetch_and_index. Pass ALL search questions as queries array in ONE call. File-backed sources are auto-refreshed when the source file changes.
674
+ Use ctx_search(queries: ["..."]) to query this content. Use source: "${s.label}" to scope results.`}]})}catch(n){let o=n instanceof Error?n.message:String(n);return W("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});to=0,hg=Date.now(),xM=6e4,Nw=3,zw=8;Qe.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Requires prior indexing via ctx_batch_execute, ctx_index, or ctx_fetch_and_index. Pass ALL search questions as queries array in ONE call. File-backed sources are auto-refreshed when the source file changes.
675
675
 
676
676
  TIPS: 2-4 specific terms per query. Use 'source' to scope results.
677
677
 
@@ -684,10 +684,10 @@ ctx_search is a follow-up tool that queries previously indexed content. To gathe
684
684
  \u2022 ctx_fetch_and_index(url) \u2014 fetch a URL, index it, then search with ctx_search
685
685
  \u2022 ctx_index(content, source) \u2014 manually index text content
686
686
 
687
- After indexing, ctx_search becomes available for follow-up queries.`}],isError:!0});let n=t,o=[];if(Array.isArray(n.queries)&&n.queries.length>0?o.push(...n.queries):typeof n.query=="string"&&n.query.length>0&&o.push(n.query),o.length===0)return W("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:s=3,source:i,contentType:a}=t,c=Date.now();if(c-hg>xM&&(to=0,hg=c),to++,to>Nw)return W("ctx_search",{content:[{type:"text",text:`BLOCKED: ${to} search calls in ${Math.round((c-hg)/1e3)}s. You're flooding context. STOP making individual search calls. Use ctx_batch_execute(commands, queries) for your next research step.`}],isError:!0});let u=to>Aw?1:Math.min(s,2),l=40*1024,d=0,p=[],f=null;if(r==="timeline")try{let g=xr(),y=pe(g,`${us()}${Ii()}.db`);je(y)&&(f=new Qn({dbPath:y}))}catch{}let m=cs?.getConfigDir()??(process.env.CLAUDE_CONFIG_DIR||pe(ro(),".claude"));try{for(let g of o){if(d>l){p.push(`## ${g}
687
+ After indexing, ctx_search becomes available for follow-up queries.`}],isError:!0});let n=t,o=[];if(Array.isArray(n.queries)&&n.queries.length>0?o.push(...n.queries):typeof n.query=="string"&&n.query.length>0&&o.push(n.query),o.length===0)return W("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:s=3,source:i,contentType:a}=t,c=Date.now();if(c-hg>xM&&(to=0,hg=c),to++,to>zw)return W("ctx_search",{content:[{type:"text",text:`BLOCKED: ${to} search calls in ${Math.round((c-hg)/1e3)}s. You're flooding context. STOP making individual search calls. Use ctx_batch_execute(commands, queries) for your next research step.`}],isError:!0});let u=to>Nw?1:Math.min(s,2),l=40*1024,d=0,p=[],f=null;if(r==="timeline")try{let g=xr(),y=pe(g,`${us()}${Ii()}.db`);je(y)&&(f=new Qn({dbPath:y}))}catch{}let m=cs?.getConfigDir()??(process.env.CLAUDE_CONFIG_DIR||pe(ro(),".claude"));try{for(let g of o){if(d>l){p.push(`## ${g}
688
688
  (output cap reached)
689
- `);continue}let y;if(r==="timeline"?y=bw({query:g,limit:u,store:e,sort:r,source:i,contentType:a,sessionDB:f,projectDir:Mi(),configDir:m,adapter:cs??void 0}):y=e.searchWithFallback(g,u,i,a),y.length===0){p.push(`## ${g}
690
- No results found.`);continue}let _=y.map((x,k)=>{let T=x.origin||"current-session",H=x.timestamp?x.timestamp.slice(0,16).replace("T"," "):"",z=`--- [${T}${H?" | "+H:""} | ${x.source}] ---`,K=`### ${x.title}`,Le=$g(x.content,g,1500,x.highlighted);return`${z}
689
+ `);continue}let y;if(r==="timeline"?y=Sw({query:g,limit:u,store:e,sort:r,source:i,contentType:a,sessionDB:f,projectDir:Mi(),configDir:m,adapter:cs??void 0}):y=e.searchWithFallback(g,u,i,a),y.length===0){p.push(`## ${g}
690
+ No results found.`);continue}let _=y.map((x,k)=>{let E=x.origin||"current-session",H=x.timestamp?x.timestamp.slice(0,16).replace("T"," "):"",z=`--- [${E}${H?" | "+H:""} | ${x.source}] ---`,K=`### ${x.title}`,Le=$g(x.content,g,1500,x.highlighted);return`${z}
691
691
  ${K}
692
692
 
693
693
  ${Le}`}).join(`
@@ -700,10 +700,10 @@ ${_}`),d+=_.length}}finally{try{f?.close()}catch{}}let h=p.join(`
700
700
 
701
701
  `);if(e.lastRefreshCount>0&&(h=`> Auto-refreshed ${e.lastRefreshCount} stale source${e.lastRefreshCount>1?"s":""} (file changed since indexing).
702
702
 
703
- `+h),to>=Aw&&(h+=`
703
+ `+h),to>=Nw&&(h+=`
704
704
 
705
- \u26A0 search call #${to}/${Nw} in this window. Results limited to ${u}/query. Batch queries: ctx_search(queries: ["q1","q2","q3"]) or use ctx_batch_execute.`),h.trim().length===0){let g=e.listSources(),y=g.length>0?`
706
- Indexed sources: ${g.map(_=>`"${_.label}" (${_.chunkCount} sections)`).join(", ")}`:"";return W("ctx_search",{content:[{type:"text",text:`No results found.${y}`}]})}return W("ctx_search",{content:[{type:"text",text:h}]})}catch(e){let r=e instanceof Error?e.message:String(e);return W("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});gg=null,_g=null;wM=1440*60*1e3,zw=3072;Qe.registerTool("ctx_fetch_and_index",{title:"Fetch & Index URL(s)",description:`Fetches URL content, converts HTML to markdown, indexes into searchable knowledge base, and returns a ~3KB preview. Full content stays in sandbox \u2014 use ctx_search() for deeper lookups.
705
+ \u26A0 search call #${to}/${zw} in this window. Results limited to ${u}/query. Batch queries: ctx_search(queries: ["q1","q2","q3"]) or use ctx_batch_execute.`),h.trim().length===0){let g=e.listSources(),y=g.length>0?`
706
+ Indexed sources: ${g.map(_=>`"${_.label}" (${_.chunkCount} sections)`).join(", ")}`:"";return W("ctx_search",{content:[{type:"text",text:`No results found.${y}`}]})}return W("ctx_search",{content:[{type:"text",text:h}]})}catch(e){let r=e instanceof Error?e.message:String(e);return W("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});gg=null,_g=null;wM=1440*60*1e3,jw=3072;Qe.registerTool("ctx_fetch_and_index",{title:"Fetch & Index URL(s)",description:`Fetches URL content, converts HTML to markdown, indexes into searchable knowledge base, and returns a ~3KB preview. Full content stays in sandbox \u2014 use ctx_search() for deeper lookups.
707
707
 
708
708
  Better than WebFetch: preview is immediate, full content is searchable, raw HTML never enters context.
709
709
 
@@ -722,7 +722,7 @@ You MUST call ctx_search() to answer questions about this content \u2014 this ca
722
722
  Use: ctx_search(queries: [...], source: "${P.label}")`}]});if(P.kind==="fetched"){let N=(P.indexed.totalBytes/1024).toFixed(1),ce=[`Fetched and indexed **${P.indexed.totalChunks} sections** (${N}KB) from: ${P.indexed.label}`,`Full content indexed in sandbox \u2014 use ctx_search(queries: [...], source: "${P.indexed.label}") for specific lookups.`,"","---","",P.indexed.preview].join(`
723
723
  `);return W("ctx_fetch_and_index",{content:[{type:"text",text:ce}]})}if(P.kind==="fetch_error"){let N=P.reason==="empty"?`Fetched ${P.url} but got empty content`:P.reason==="read"?`Fetched ${P.url} but could not read subprocess output`:P.reason==="exit"?`Failed to fetch ${P.url}: ${P.error}`:`Fetch error: ${P.error}`;return W("ctx_fetch_and_index",{content:[{type:"text",text:N}],isError:!0})}return W("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${P.error}`}],isError:!0})}let f=384,m=[],h=0,g=0,y=0,_=0,x=0,k=[];for(let P of p)if(P.kind==="cached")y++,m.push(`- [cache] ${P.label} \u2014 ${P.chunkCount} sections (${P.ageStr})`);else if(P.kind==="fetched"){_++,h+=P.indexed.totalChunks,g+=P.indexed.totalBytes;let N=(P.indexed.totalBytes/1024).toFixed(1);m.push(`- [new] ${P.indexed.label} \u2014 ${P.indexed.totalChunks} sections (${N}KB)`);let ce=P.indexed.preview.length>f?P.indexed.preview.slice(0,f).trimEnd()+"\u2026":P.indexed.preview;k.push(`### ${P.indexed.label}
724
724
 
725
- ${ce}`)}else x++,m.push(`- [err] ${P.url}: ${P.error}`);let T=(g/1024).toFixed(1),H=d?` cap=${l}/${YD().length}cpu`:"",z=(P,N,ce)=>`${P} ${P===1?N:ce}`,Le=[`fetched ${s.length} c=${l}${H}. ok=${_} cache=${y} err=${x}. ${z(h,"section","sections")} ${T}KB.`,"",...m,"",'ctx_search(queries: [...], source: "<label>") for full content.',...k.length>0?["","---","",...k]:[]].join(`
725
+ ${ce}`)}else x++,m.push(`- [err] ${P.url}: ${P.error}`);let E=(g/1024).toFixed(1),H=d?` cap=${l}/${YD().length}cpu`:"",z=(P,N,ce)=>`${P} ${P===1?N:ce}`,Le=[`fetched ${s.length} c=${l}${H}. ok=${_} cache=${y} err=${x}. ${z(h,"section","sections")} ${E}KB.`,"",...m,"",'ctx_search(queries: [...], source: "<label>") for full content.',...k.length>0?["","---","",...k]:[]].join(`
726
726
  `);return W("ctx_fetch_and_index",{content:[{type:"text",text:Le}],isError:x===s.length})});Qe.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.
727
727
 
728
728
  THIS IS THE PRIMARY TOOL. Use this instead of multiple ctx_execute() calls.
@@ -738,59 +738,59 @@ PARALLELIZE I/O: For I/O-bound batches (network calls, slow API queries, multi-U
738
738
 
739
739
  THINK IN CODE \u2014 NON-NEGOTIABLE: When commands produce data you need to analyze, count, filter, compare, or transform \u2014 add a processing command that runs JavaScript and console.log() ONLY the answer. NEVER pull raw output into context to reason over. Concurrency parallelizes the FETCH; THINK IN CODE owns the PROCESSING. One programmed analysis replaces ten read-and-reason rounds. Pure JavaScript, Node.js built-ins (fs, path, child_process), try/catch, null-safe.
740
740
 
741
- When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:M.object({commands:M.preprocess(vM,M.array(M.object({label:M.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:M.string().describe("Shell command to execute")})).min(1).describe("Commands to execute as a batch. Output is labeled with the section header. Default order is sequential; pass concurrency>1 to run in parallel (output stays in input order).")),queries:M.preprocess(Eg,M.array(M.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:M.coerce.number().optional().describe("Max execution time in ms. When omitted, no server-side timer fires \u2014 the MCP host's RPC timeout governs. With concurrency=1, the value (when set) is a shared budget across commands; with concurrency>1, it is applied per-command."),concurrency:M.coerce.number().int().min(1).max(8).optional().default(1).describe("Max commands to run in parallel (1-8, default: 1). Use 4-8 for I/O-bound batches (network, gh, curl, multi-repo git reads). Keep at 1 for CPU-bound (npm test, build, lint) or stateful commands (ports, locks). >1 switches to per-command timeouts (no shared budget) and individual `(timed out)` blocks instead of cascading skip.")})},async({commands:t,queries:e,timeout:r,concurrency:n})=>{for(let o of t){let s=wg(o.command,"batch_execute");if(s)return s}try{let o=Hw(ji.shell,kg),{outputs:s,timedOut:i}=await qw(t,{timeout:r,concurrency:n,nodeOptsPrefix:o,onFsBytes:x=>{re.bytesSandboxed+=x}},Di),a=s.join(`
741
+ When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:M.object({commands:M.preprocess(vM,M.array(M.object({label:M.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:M.string().describe("Shell command to execute")})).min(1).describe("Commands to execute as a batch. Output is labeled with the section header. Default order is sequential; pass concurrency>1 to run in parallel (output stays in input order).")),queries:M.preprocess(Eg,M.array(M.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:M.coerce.number().optional().describe("Max execution time in ms. When omitted, no server-side timer fires \u2014 the MCP host's RPC timeout governs. With concurrency=1, the value (when set) is a shared budget across commands; with concurrency>1, it is applied per-command."),concurrency:M.coerce.number().int().min(1).max(8).optional().default(1).describe("Max commands to run in parallel (1-8, default: 1). Use 4-8 for I/O-bound batches (network, gh, curl, multi-repo git reads). Keep at 1 for CPU-bound (npm test, build, lint) or stateful commands (ports, locks). >1 switches to per-command timeouts (no shared budget) and individual `(timed out)` blocks instead of cascading skip.")})},async({commands:t,queries:e,timeout:r,concurrency:n})=>{for(let o of t){let s=wg(o.command,"batch_execute");if(s)return s}try{let o=qw(ji.shell,kg),{outputs:s,timedOut:i}=await Bw(t,{timeout:r,concurrency:n,nodeOptsPrefix:o,onFsBytes:x=>{re.bytesSandboxed+=x}},Di),a=s.join(`
742
742
  `),c=Buffer.byteLength(a),u=a.split(`
743
- `).length;if(i&&s.length===0)return W("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});or(c);let l=no(),d=`batch:${t.map(x=>x.label).join(",").slice(0,80)}`,p=l.index({content:a,source:d}),f=l.getChunksBySource(p.sourceId),m=["## Indexed Sections",""],h=[];for(let x of f){let k=Buffer.byteLength(x.content);m.push(`- ${x.title} (${(k/1024).toFixed(1)}KB)`),h.push(x.title)}let g=Zw(l,e,d),y=l.getDistinctiveTerms?l.getDistinctiveTerms(p.sourceId):[],_=[`Executed ${t.length} commands (${u} lines, ${(c/1024).toFixed(1)}KB). Indexed ${p.totalChunks} sections. Searched ${e.length} queries.`,"",...m,"",...g,y.length>0?`
743
+ `).length;if(i&&s.length===0)return W("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});or(c);let l=no(),d=`batch:${t.map(x=>x.label).join(",").slice(0,80)}`,p=l.index({content:a,source:d}),f=l.getChunksBySource(p.sourceId),m=["## Indexed Sections",""],h=[];for(let x of f){let k=Buffer.byteLength(x.content);m.push(`- ${x.title} (${(k/1024).toFixed(1)}KB)`),h.push(x.title)}let g=Hw(l,e,d),y=l.getDistinctiveTerms?l.getDistinctiveTerms(p.sourceId):[],_=[`Executed ${t.length} commands (${u} lines, ${(c/1024).toFixed(1)}KB). Indexed ${p.totalChunks} sections. Searched ${e.length} queries.`,"",...m,"",...g,y.length>0?`
744
744
  Searchable terms for follow-up: ${y.join(", ")}`:""].join(`
745
- `);return W("ctx_batch_execute",{content:[{type:"text",text:_}]})}catch(o){let s=o instanceof Error?o.message:String(o);return W("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${s}`}],isError:!0})}});Qe.registerTool("ctx_stats",{title:"Session Statistics",description:"Returns context consumption statistics for the current session. Shows total bytes returned to context, breakdown by tool, call counts, estimated token usage, and context savings ratio.",inputSchema:M.object({})},async()=>{let t;try{let e=us(),r=Ii(),n=pe(xr(),`${e}${r}.db`);if(je(n)){let o=zr(),s=new o(n,{readonly:!0});try{let i=new is(s),a=i.queryAll(re),c=i.getMcpToolUsage(),u=Ni();t=_u(a,Dr,Mr,{lifetime:u,mcpUsage:c})}finally{s.close()}}else{let s=new is(jw()).queryAll(re),i=Ni();t=_u(s,Dr,Mr,{lifetime:i})}}catch{let r=new is(jw()).queryAll(re),n;try{n=Ni()}catch{}t=_u(r,Dr,Mr,n?{lifetime:n}:void 0)}return W("ctx_stats",{content:[{type:"text",text:t}]})});Qe.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Runs all checks server-side and returns a plain-text status report with [OK]/[FAIL]/[WARN] prefixes (renderer-safe across MCP clients). No CLI execution needed.",inputSchema:M.object({})},async()=>{let t=["context-mode doctor",""],e=je(ot(kt,"package.json"))?kt:nr(kt),r=11,n=(vu.length/r*100).toFixed(0);t.push(`[OK] Runtimes: ${vu.length}/${r} (${n}%) \u2014 ${vu.join(", ")}`),io()?t.push("[OK] Performance: FAST (Bun)"):t.push("[WARN] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");{let s=new Xo({runtimes:ji});try{let i=await s.execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(i.exitCode===0&&i.stdout.trim()==="ok")t.push("[OK] Server test: PASS");else{let a=i.stderr?.trim()?` (${i.stderr.trim().slice(0,200)})`:"";t.push(`[FAIL] Server test: FAIL \u2014 exit ${i.exitCode}${a}`)}}catch(i){t.push(`[FAIL] Server test: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{s.cleanupBackgrounded()}}{let s;try{let i=zr();s=new i(":memory:"),s.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),s.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let a=s.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();a&&a.content==="hello world"?t.push("[OK] FTS5 / SQLite: PASS \u2014 native module works"):t.push("[FAIL] FTS5 / SQLite: FAIL \u2014 unexpected result")}catch(i){t.push(`[FAIL] FTS5 / SQLite: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{try{s?.close()}catch{}}}let o=ot(e,"hooks","pretooluse.mjs");return je(o)?t.push(`[OK] Hook script: PASS \u2014 ${o}`):t.push(`[FAIL] Hook script: FAIL \u2014 not found at ${o}`),t.push(`[OK] Version: v${Dr}`),W("ctx_doctor",{content:[{type:"text",text:t.join(`
746
- `)}]})});Qe.registerTool("ctx_upgrade",{title:"Upgrade Plugin",description:"Upgrade context-mode to the latest version. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a checklist. Tell the user to restart their session after upgrade.",inputSchema:M.object({})},async()=>{let t=je(ot(kt,"package.json"))?kt:nr(kt),e=ot(t,"cli.bundle.mjs"),r=ot(t,"build","cli.js");try{let s=xr(),i=pe(nr(s),"insight-cache");if(je(i)){try{process.platform==="win32"?Ht(`for /f "tokens=5" %a in ('netstat -ano ^| findstr :4747') do taskkill /F /PID %a`,{stdio:"pipe"}):Ht("lsof -ti:4747 | xargs kill 2>/dev/null",{stdio:"pipe"})}catch{}bu(i,{recursive:!0,force:!0})}}catch{}let n;if(je(e))n=`${ye(e)} upgrade`;else if(je(r))n=`${ye(r)} upgrade`;else{let s="https://github.com/mksglu/context-mode.git",i=["build","hooks","skills","scripts",".claude-plugin"],a=["start.mjs","server.bundle.mjs","cli.bundle.mjs","package.json"],c=['import{execFileSync}from"node:child_process";','import{cpSync,rmSync,existsSync,mkdtempSync}from"node:fs";','import{join}from"node:path";','import{tmpdir}from"node:os";',`const P=${JSON.stringify(t)};`,'const T=mkdtempSync(join(tmpdir(),"ctx-upgrade-"));',"try{",'console.log("- [x] Starting inline upgrade (no CLI found)");',`execFileSync("git",["clone","--depth","1","${s}",T],{stdio:"inherit"});`,'console.log("- [x] Cloned latest source");','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["install"],{cwd:T,stdio:"inherit",shell:process.platform==="win32"});','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["run","build"],{cwd:T,stdio:"inherit",shell:process.platform==="win32"});','console.log("- [x] Built from source");',...i.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{recursive:true,force:true});`),...a.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{force:true});`),'console.log("- [x] Copied build artifacts");','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["install","--production"],{cwd:P,stdio:"inherit",shell:process.platform==="win32"});','console.log("- [x] Installed production dependencies");','console.log("## context-mode upgrade complete");',"}catch(e){",'console.error("- [ ] Upgrade failed:",e.message);',"process.exit(1);","}finally{","try{rmSync(T,{recursive:true,force:true})}catch{}","}"].join(`
745
+ `);return W("ctx_batch_execute",{content:[{type:"text",text:_}]})}catch(o){let s=o instanceof Error?o.message:String(o);return W("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${s}`}],isError:!0})}});Qe.registerTool("ctx_stats",{title:"Session Statistics",description:"Returns context consumption statistics for the current session. Shows total bytes returned to context, breakdown by tool, call counts, estimated token usage, and context savings ratio.",inputSchema:M.object({})},async()=>{let t;try{let e=us(),r=Ii(),n=pe(xr(),`${e}${r}.db`);if(je(n)){let o=zr(),s=new o(n,{readonly:!0});try{let i=new is(s),a=i.queryAll(re),c=i.getMcpToolUsage(),u=Ni();t=gu(a,Dr,Mr,{lifetime:u,mcpUsage:c})}finally{s.close()}}else{let s=new is(Dw()).queryAll(re),i=Ni();t=gu(s,Dr,Mr,{lifetime:i})}}catch{let r=new is(Dw()).queryAll(re),n;try{n=Ni()}catch{}t=gu(r,Dr,Mr,n?{lifetime:n}:void 0)}return W("ctx_stats",{content:[{type:"text",text:t}]})});Qe.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Runs all checks server-side and returns a plain-text status report with [OK]/[FAIL]/[WARN] prefixes (renderer-safe across MCP clients). No CLI execution needed.",inputSchema:M.object({})},async()=>{let t=["context-mode doctor",""],e=je(ot(kt,"package.json"))?kt:nr(kt),r=11,n=(xu.length/r*100).toFixed(0);t.push(`[OK] Runtimes: ${xu.length}/${r} (${n}%) \u2014 ${xu.join(", ")}`),io()?t.push("[OK] Performance: FAST (Bun)"):t.push("[WARN] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");{let s=new Xo({runtimes:ji});try{let i=await s.execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(i.exitCode===0&&i.stdout.trim()==="ok")t.push("[OK] Server test: PASS");else{let a=i.stderr?.trim()?` (${i.stderr.trim().slice(0,200)})`:"";t.push(`[FAIL] Server test: FAIL \u2014 exit ${i.exitCode}${a}`)}}catch(i){t.push(`[FAIL] Server test: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{s.cleanupBackgrounded()}}{let s;try{let i=zr();s=new i(":memory:"),s.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),s.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let a=s.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();a&&a.content==="hello world"?t.push("[OK] FTS5 / SQLite: PASS \u2014 native module works"):t.push("[FAIL] FTS5 / SQLite: FAIL \u2014 unexpected result")}catch(i){t.push(`[FAIL] FTS5 / SQLite: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{try{s?.close()}catch{}}}let o=ot(e,"hooks","pretooluse.mjs");return je(o)?t.push(`[OK] Hook script: PASS \u2014 ${o}`):t.push(`[FAIL] Hook script: FAIL \u2014 not found at ${o}`),t.push(`[OK] Version: v${Dr}`),W("ctx_doctor",{content:[{type:"text",text:t.join(`
746
+ `)}]})});Qe.registerTool("ctx_upgrade",{title:"Upgrade Plugin",description:"Upgrade context-mode to the latest version. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a checklist. Tell the user to restart their session after upgrade.",inputSchema:M.object({})},async()=>{let t=je(ot(kt,"package.json"))?kt:nr(kt),e=ot(t,"cli.bundle.mjs"),r=ot(t,"build","cli.js");try{let s=xr(),i=pe(nr(s),"insight-cache");if(je(i)){try{process.platform==="win32"?qt(`for /f "tokens=5" %a in ('netstat -ano ^| findstr :4747') do taskkill /F /PID %a`,{stdio:"pipe"}):qt("lsof -ti:4747 | xargs kill 2>/dev/null",{stdio:"pipe"})}catch{}vu(i,{recursive:!0,force:!0})}}catch{}let n;if(je(e))n=`${ye(e)} upgrade`;else if(je(r))n=`${ye(r)} upgrade`;else{let s="https://github.com/mksglu/context-mode.git",i=["build","hooks","skills","scripts",".claude-plugin"],a=["start.mjs","server.bundle.mjs","cli.bundle.mjs","package.json"],c=['import{execFileSync}from"node:child_process";','import{cpSync,rmSync,existsSync,mkdtempSync}from"node:fs";','import{join}from"node:path";','import{tmpdir}from"node:os";',`const P=${JSON.stringify(t)};`,'const T=mkdtempSync(join(tmpdir(),"ctx-upgrade-"));',"try{",'console.log("- [x] Starting inline upgrade (no CLI found)");',`execFileSync("git",["clone","--depth","1","${s}",T],{stdio:"inherit"});`,'console.log("- [x] Cloned latest source");','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["install"],{cwd:T,stdio:"inherit",shell:process.platform==="win32"});','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["run","build"],{cwd:T,stdio:"inherit",shell:process.platform==="win32"});','console.log("- [x] Built from source");',...i.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{recursive:true,force:true});`),...a.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{force:true});`),'console.log("- [x] Copied build artifacts");','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["install","--production"],{cwd:P,stdio:"inherit",shell:process.platform==="win32"});','console.log("- [x] Installed production dependencies");','console.log("## context-mode upgrade complete");',"}catch(e){",'console.error("- [ ] Upgrade failed:",e.message);',"process.exit(1);","}finally{","try{rmSync(T,{recursive:true,force:true})}catch{}","}"].join(`
747
747
  `),u=ot(t,".ctx-upgrade-inline.mjs"),{writeFileSync:l}=await import("node:fs");l(u,c),n=ye(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(`
748
- `);return W("ctx_upgrade",{content:[{type:"text",text:o}]})});Qe.registerTool("ctx_purge",{title:"Purge Knowledge Base",description:"Permanently deletes ALL session data for this project: FTS5 knowledge base (indexed content), session events DB (analytics, metadata, resume snapshots), and session events markdown. Resets in-memory stats. This is irreversible.",inputSchema:M.object({confirm:M.boolean().describe("Must be true to confirm the destructive operation.")})},async({confirm:t})=>{if(!t)return W("ctx_purge",{content:[{type:"text",text:"Purge cancelled. Pass confirm: true to proceed."}]});let e=[];if(yr){let r=!1;try{yr.cleanup(),r=!0}catch{}yr=null,r&&e.push("knowledge base (FTS5)")}else{let r=yg(),n=!1;for(let o of["","-wal","-shm"])try{_r(r+o),n=!0}catch{}n&&e.push("knowledge base (FTS5)")}try{let r=pe(ro(),".context-mode","content",`${us()}.db`);for(let n of["","-wal","-shm"])try{_r(r+n)}catch{}}catch{}try{let r=us(),n=Ii(),o=xr(),s=pe(o,`${r}${n}.db`),i=pe(o,`${r}${n}-events.md`),a=pe(o,`${r}${n}.cleanup`),c=!1;for(let l of["","-wal","-shm"])try{_r(s+l),c=!0}catch{}c&&e.push("session events DB");let u=!1;try{_r(i),u=!0}catch{}u&&e.push("session events markdown");try{_r(a)}catch{}}catch{}re.calls={},re.bytesReturned={},re.bytesIndexed=0,re.bytesSandboxed=0,re.cacheHits=0,re.cacheBytesSaved=0,re.sessionStart=Date.now(),e.push("session stats");try{let r=Lw();je(r)&&_r(r)}catch{}return W("ctx_purge",{content:[{type:"text",text:`Purged: ${e.join(", ")}. All session data for this project has been permanently deleted.`}]})});Qe.registerTool("ctx_insight",{title:"Open Insight Dashboard",description:"Opens the context-mode Insight dashboard in the browser. Shows personal analytics: session activity, tool usage, error rate, parallel work patterns, project focus, and actionable insights. First run installs dependencies (~30s). Subsequent runs open instantly.",inputSchema:M.object({port:M.coerce.number().optional().describe("Port to serve on (default: 4747)"),sessionDir:M.string().optional().describe("Override INSIGHT_SESSION_DIR: directory containing context-mode session .db files"),contentDir:M.string().optional().describe("Override INSIGHT_CONTENT_DIR: directory containing context-mode content/index .db files"),insightSessionDir:M.string().optional().describe("Alias for sessionDir / INSIGHT_SESSION_DIR"),insightContentDir:M.string().optional().describe("Alias for contentDir / INSIGHT_CONTENT_DIR")})},async({port:t,sessionDir:e,contentDir:r,insightSessionDir:n,insightContentDir:o})=>{let s=t||4747,i=e||n,a=r||o,c=je(ot(kt,"package.json"))?kt:nr(kt),u=ot(c,"insight"),l=i?ot(i):xr(),d=a?ot(a):pe(nr(l),"content"),p=pe(nr(l),"insight-cache");if(!je(pe(u,"server.mjs")))return W("ctx_insight",{content:[{type:"text",text:"Error: Insight source not found in plugin. Try upgrading context-mode."}]});try{let f=[],m=!1;zi(p,{recursive:!0});let h=Pw(pe(u,"server.mjs")).mtimeMs,g=je(pe(p,"server.mjs"))?Pw(pe(p,"server.mjs")).mtimeMs:0;if(h>g&&(f.push("Copying source files..."),BD(u,p,{recursive:!0,force:!0}),f.push("Source files copied."),m=!0),!je(pe(p,"node_modules"))||m){f.push("Installing dependencies (first run, ~30s)...");try{Ht(process.platform==="win32"?"npm.cmd install --production=false":"npm install --production=false",{cwd:p,stdio:"pipe",timeout:3e5})}catch{try{bu(pe(p,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!je(pe(p,"node_modules","vite"))||!je(pe(p,"node_modules","better-sqlite3")))throw bu(pe(p,"node_modules"),{recursive:!0,force:!0}),new Error("npm install incomplete \u2014 please retry");f.push("Dependencies installed.")}f.push("Building dashboard..."),Ht("npx vite build",{cwd:p,stdio:"pipe",timeout:6e4}),f.push("Build complete.");let _=!1;try{let{request:z}=await import("node:http");await new Promise((K,Le)=>{let P=z(`http://127.0.0.1:${s}/api/overview`,{timeout:2e3},N=>{N.resume(),K()});P.on("error",()=>Le()),P.on("timeout",()=>{P.destroy(),Le()}),P.end()}),_=!0}catch{}if(_&&m){f.push("Killing stale dashboard server (source updated)...");try{process.platform==="win32"?Ht(`for /f "tokens=5" %a in ('netstat -ano ^| findstr :${s}') do taskkill /F /PID %a`,{stdio:"pipe"}):Ht(`lsof -ti:${s} | xargs kill 2>/dev/null`,{stdio:"pipe"}),await new Promise(z=>setTimeout(z,500))}catch{}f.push("Stale server killed.")}else if(_){f.push("Dashboard already running.");let z=`http://localhost:${s}`,K=process.platform;try{K==="darwin"?Ht(`open "${z}"`,{stdio:"pipe"}):K==="win32"?Ht(`start "" "${z}"`,{stdio:"pipe"}):Ht(`xdg-open "${z}" 2>/dev/null || sensible-browser "${z}" 2>/dev/null`,{stdio:"pipe"})}catch{}return W("ctx_insight",{content:[{type:"text",text:`Dashboard already running at http://localhost:${s}`}]})}if(jr&&jr.pid&&!jr.killed)try{jr.kill("SIGTERM")}catch{}let{spawn:x}=await import("node:child_process"),k=x("node",[pe(p,"server.mjs")],{cwd:p,env:{...process.env,PORT:String(s),INSIGHT_SESSION_DIR:l,INSIGHT_CONTENT_DIR:d,INSIGHT_PARENT_PID:String(process.pid)},detached:!0,stdio:"ignore"});k.on("error",()=>{}),k.unref(),jr=k,await new Promise(z=>setTimeout(z,1500));try{let{request:z}=await import("node:http");await new Promise((K,Le)=>{let P=z(`http://127.0.0.1:${s}/api/overview`,{timeout:3e3},N=>{K(),N.resume()});P.on("error",Le),P.on("timeout",()=>{P.destroy(),Le(new Error("timeout"))}),P.end()})}catch{return W("ctx_insight",{content:[{type:"text",text:`Port ${s} appears to be in use. Either a previous dashboard is still running, or another service is using this port.
748
+ `);return W("ctx_upgrade",{content:[{type:"text",text:o}]})});Qe.registerTool("ctx_purge",{title:"Purge Knowledge Base",description:"Permanently deletes ALL session data for this project: FTS5 knowledge base (indexed content), session events DB (analytics, metadata, resume snapshots), and session events markdown. Resets in-memory stats. This is irreversible.",inputSchema:M.object({confirm:M.boolean().describe("Must be true to confirm the destructive operation.")})},async({confirm:t})=>{if(!t)return W("ctx_purge",{content:[{type:"text",text:"Purge cancelled. Pass confirm: true to proceed."}]});let e=[];if(yr){let r=!1;try{yr.cleanup(),r=!0}catch{}yr=null,r&&e.push("knowledge base (FTS5)")}else{let r=yg(),n=!1;for(let o of["","-wal","-shm"])try{_r(r+o),n=!0}catch{}n&&e.push("knowledge base (FTS5)")}try{let r=pe(ro(),".context-mode","content",`${us()}.db`);for(let n of["","-wal","-shm"])try{_r(r+n)}catch{}}catch{}try{let r=us(),n=Ii(),o=xr(),s=pe(o,`${r}${n}.db`),i=pe(o,`${r}${n}-events.md`),a=pe(o,`${r}${n}.cleanup`),c=!1;for(let l of["","-wal","-shm"])try{_r(s+l),c=!0}catch{}c&&e.push("session events DB");let u=!1;try{_r(i),u=!0}catch{}u&&e.push("session events markdown");try{_r(a)}catch{}}catch{}re.calls={},re.bytesReturned={},re.bytesIndexed=0,re.bytesSandboxed=0,re.cacheHits=0,re.cacheBytesSaved=0,re.sessionStart=Date.now(),e.push("session stats");try{let r=Fw();je(r)&&_r(r)}catch{}return W("ctx_purge",{content:[{type:"text",text:`Purged: ${e.join(", ")}. All session data for this project has been permanently deleted.`}]})});Qe.registerTool("ctx_insight",{title:"Open Insight Dashboard",description:"Opens the context-mode Insight dashboard in the browser. Shows personal analytics: session activity, tool usage, error rate, parallel work patterns, project focus, and actionable insights. First run installs dependencies (~30s). Subsequent runs open instantly.",inputSchema:M.object({port:M.coerce.number().optional().describe("Port to serve on (default: 4747)"),sessionDir:M.string().optional().describe("Override INSIGHT_SESSION_DIR: directory containing context-mode session .db files"),contentDir:M.string().optional().describe("Override INSIGHT_CONTENT_DIR: directory containing context-mode content/index .db files"),insightSessionDir:M.string().optional().describe("Alias for sessionDir / INSIGHT_SESSION_DIR"),insightContentDir:M.string().optional().describe("Alias for contentDir / INSIGHT_CONTENT_DIR")})},async({port:t,sessionDir:e,contentDir:r,insightSessionDir:n,insightContentDir:o})=>{let s=t||4747,i=e||n,a=r||o,c=je(ot(kt,"package.json"))?kt:nr(kt),u=ot(c,"insight"),l=i?ot(i):xr(),d=a?ot(a):pe(nr(l),"content"),p=pe(nr(l),"insight-cache");if(!je(pe(u,"server.mjs")))return W("ctx_insight",{content:[{type:"text",text:"Error: Insight source not found in plugin. Try upgrading context-mode."}]});try{let f=[],m=!1;zi(p,{recursive:!0});let h=Rw(pe(u,"server.mjs")).mtimeMs,g=je(pe(p,"server.mjs"))?Rw(pe(p,"server.mjs")).mtimeMs:0;if(h>g&&(f.push("Copying source files..."),BD(u,p,{recursive:!0,force:!0}),f.push("Source files copied."),m=!0),!je(pe(p,"node_modules"))||m){f.push("Installing dependencies (first run, ~30s)...");try{qt(process.platform==="win32"?"npm.cmd install --production=false":"npm install --production=false",{cwd:p,stdio:"pipe",timeout:3e5})}catch{try{vu(pe(p,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!je(pe(p,"node_modules","vite"))||!je(pe(p,"node_modules","better-sqlite3")))throw vu(pe(p,"node_modules"),{recursive:!0,force:!0}),new Error("npm install incomplete \u2014 please retry");f.push("Dependencies installed.")}f.push("Building dashboard..."),qt("npx vite build",{cwd:p,stdio:"pipe",timeout:6e4}),f.push("Build complete.");let _=!1;try{let{request:z}=await import("node:http");await new Promise((K,Le)=>{let P=z(`http://127.0.0.1:${s}/api/overview`,{timeout:2e3},N=>{N.resume(),K()});P.on("error",()=>Le()),P.on("timeout",()=>{P.destroy(),Le()}),P.end()}),_=!0}catch{}if(_&&m){f.push("Killing stale dashboard server (source updated)...");try{process.platform==="win32"?qt(`for /f "tokens=5" %a in ('netstat -ano ^| findstr :${s}') do taskkill /F /PID %a`,{stdio:"pipe"}):qt(`lsof -ti:${s} | xargs kill 2>/dev/null`,{stdio:"pipe"}),await new Promise(z=>setTimeout(z,500))}catch{}f.push("Stale server killed.")}else if(_){f.push("Dashboard already running.");let z=`http://localhost:${s}`,K=process.platform;try{K==="darwin"?qt(`open "${z}"`,{stdio:"pipe"}):K==="win32"?qt(`start "" "${z}"`,{stdio:"pipe"}):qt(`xdg-open "${z}" 2>/dev/null || sensible-browser "${z}" 2>/dev/null`,{stdio:"pipe"})}catch{}return W("ctx_insight",{content:[{type:"text",text:`Dashboard already running at http://localhost:${s}`}]})}if(jr&&jr.pid&&!jr.killed)try{jr.kill("SIGTERM")}catch{}let{spawn:x}=await import("node:child_process"),k=x("node",[pe(p,"server.mjs")],{cwd:p,env:{...process.env,PORT:String(s),INSIGHT_SESSION_DIR:l,INSIGHT_CONTENT_DIR:d,INSIGHT_PARENT_PID:String(process.pid)},detached:!0,stdio:"ignore"});k.on("error",()=>{}),k.unref(),jr=k,await new Promise(z=>setTimeout(z,1500));try{let{request:z}=await import("node:http");await new Promise((K,Le)=>{let P=z(`http://127.0.0.1:${s}/api/overview`,{timeout:3e3},N=>{K(),N.resume()});P.on("error",Le),P.on("timeout",()=>{P.destroy(),Le(new Error("timeout"))}),P.end()})}catch{return W("ctx_insight",{content:[{type:"text",text:`Port ${s} appears to be in use. Either a previous dashboard is still running, or another service is using this port.
749
749
 
750
750
  To fix:
751
751
  - Kill the existing process: ${process.platform==="win32"?`netstat -ano | findstr :${s}`:`lsof -ti:${s} | xargs kill`}
752
- - Or use a different port: ctx_insight({ port: ${s+1} })`}]})}let T=`http://localhost:${s}`,H=process.platform;try{H==="darwin"?Ht(`open "${T}"`,{stdio:"pipe"}):H==="win32"?Ht(`start "" "${T}"`,{stdio:"pipe"}):Ht(`xdg-open "${T}" 2>/dev/null || sensible-browser "${T}" 2>/dev/null`,{stdio:"pipe"})}catch{}return f.push(`Dashboard running at ${T}`),W("ctx_insight",{content:[{type:"text",text:f.map(z=>`- ${z}`).join(`
752
+ - Or use a different port: ctx_insight({ port: ${s+1} })`}]})}let E=`http://localhost:${s}`,H=process.platform;try{H==="darwin"?qt(`open "${E}"`,{stdio:"pipe"}):H==="win32"?qt(`start "" "${E}"`,{stdio:"pipe"}):qt(`xdg-open "${E}" 2>/dev/null || sensible-browser "${E}" 2>/dev/null`,{stdio:"pipe"})}catch{}return f.push(`Dashboard running at ${E}`),W("ctx_insight",{content:[{type:"text",text:f.map(z=>`- ${z}`).join(`
753
753
  `)+`
754
754
 
755
- Open: ${T}
756
- PID: ${k.pid} \xB7 Stop: ${process.platform==="win32"?`taskkill /PID ${k.pid} /F`:`kill ${k.pid}`}`}]})}catch(f){let m=f instanceof Error?f.message:String(f);return W("ctx_insight",{content:[{type:"text",text:`Insight setup failed: ${m}`}]})}});PM().catch(t=>{console.error("Fatal:",t),process.exit(1)})});import{stdout as y$,stdin as x$}from"node:process";import*as Fr from"node:readline";var Cg=t=>t===161||t===164||t===167||t===168||t===170||t===173||t===174||t>=176&&t<=180||t>=182&&t<=186||t>=188&&t<=191||t===198||t===208||t===215||t===216||t>=222&&t<=225||t===230||t>=232&&t<=234||t===236||t===237||t===240||t===242||t===243||t>=247&&t<=250||t===252||t===254||t===257||t===273||t===275||t===283||t===294||t===295||t===299||t>=305&&t<=307||t===312||t>=319&&t<=322||t===324||t>=328&&t<=331||t===333||t===338||t===339||t===358||t===359||t===363||t===462||t===464||t===466||t===468||t===470||t===472||t===474||t===476||t===593||t===609||t===708||t===711||t>=713&&t<=715||t===717||t===720||t>=728&&t<=731||t===733||t===735||t>=768&&t<=879||t>=913&&t<=929||t>=931&&t<=937||t>=945&&t<=961||t>=963&&t<=969||t===1025||t>=1040&&t<=1103||t===1105||t===8208||t>=8211&&t<=8214||t===8216||t===8217||t===8220||t===8221||t>=8224&&t<=8226||t>=8228&&t<=8231||t===8240||t===8242||t===8243||t===8245||t===8251||t===8254||t===8308||t===8319||t>=8321&&t<=8324||t===8364||t===8451||t===8453||t===8457||t===8467||t===8470||t===8481||t===8482||t===8486||t===8491||t===8531||t===8532||t>=8539&&t<=8542||t>=8544&&t<=8555||t>=8560&&t<=8569||t===8585||t>=8592&&t<=8601||t===8632||t===8633||t===8658||t===8660||t===8679||t===8704||t===8706||t===8707||t===8711||t===8712||t===8715||t===8719||t===8721||t===8725||t===8730||t>=8733&&t<=8736||t===8739||t===8741||t>=8743&&t<=8748||t===8750||t>=8756&&t<=8759||t===8764||t===8765||t===8776||t===8780||t===8786||t===8800||t===8801||t>=8804&&t<=8807||t===8810||t===8811||t===8814||t===8815||t===8834||t===8835||t===8838||t===8839||t===8853||t===8857||t===8869||t===8895||t===8978||t>=9312&&t<=9449||t>=9451&&t<=9547||t>=9552&&t<=9587||t>=9600&&t<=9615||t>=9618&&t<=9621||t===9632||t===9633||t>=9635&&t<=9641||t===9650||t===9651||t===9654||t===9655||t===9660||t===9661||t===9664||t===9665||t>=9670&&t<=9672||t===9675||t>=9678&&t<=9681||t>=9698&&t<=9701||t===9711||t===9733||t===9734||t===9737||t===9742||t===9743||t===9756||t===9758||t===9792||t===9794||t===9824||t===9825||t>=9827&&t<=9829||t>=9831&&t<=9834||t===9836||t===9837||t===9839||t===9886||t===9887||t===9919||t>=9926&&t<=9933||t>=9935&&t<=9939||t>=9941&&t<=9953||t===9955||t===9960||t===9961||t>=9963&&t<=9969||t===9972||t>=9974&&t<=9977||t===9979||t===9980||t===9982||t===9983||t===10045||t>=10102&&t<=10111||t>=11094&&t<=11097||t>=12872&&t<=12879||t>=57344&&t<=63743||t>=65024&&t<=65039||t===65533||t>=127232&&t<=127242||t>=127248&&t<=127277||t>=127280&&t<=127337||t>=127344&&t<=127373||t===127375||t===127376||t>=127387&&t<=127404||t>=917760&&t<=917999||t>=983040&&t<=1048573||t>=1048576&&t<=1114109,Og=t=>t===12288||t>=65281&&t<=65376||t>=65504&&t<=65510,Ig=t=>t>=4352&&t<=4447||t===8986||t===8987||t===9001||t===9002||t>=9193&&t<=9196||t===9200||t===9203||t===9725||t===9726||t===9748||t===9749||t>=9800&&t<=9811||t===9855||t===9875||t===9889||t===9898||t===9899||t===9917||t===9918||t===9924||t===9925||t===9934||t===9940||t===9962||t===9970||t===9971||t===9973||t===9978||t===9981||t===9989||t===9994||t===9995||t===10024||t===10060||t===10062||t>=10067&&t<=10069||t===10071||t>=10133&&t<=10135||t===10160||t===10175||t===11035||t===11036||t===11088||t===11093||t>=11904&&t<=11929||t>=11931&&t<=12019||t>=12032&&t<=12245||t>=12272&&t<=12287||t>=12289&&t<=12350||t>=12353&&t<=12438||t>=12441&&t<=12543||t>=12549&&t<=12591||t>=12593&&t<=12686||t>=12688&&t<=12771||t>=12783&&t<=12830||t>=12832&&t<=12871||t>=12880&&t<=19903||t>=19968&&t<=42124||t>=42128&&t<=42182||t>=43360&&t<=43388||t>=44032&&t<=55203||t>=63744&&t<=64255||t>=65040&&t<=65049||t>=65072&&t<=65106||t>=65108&&t<=65126||t>=65128&&t<=65131||t>=94176&&t<=94180||t===94192||t===94193||t>=94208&&t<=100343||t>=100352&&t<=101589||t>=101632&&t<=101640||t>=110576&&t<=110579||t>=110581&&t<=110587||t===110589||t===110590||t>=110592&&t<=110882||t===110898||t>=110928&&t<=110930||t===110933||t>=110948&&t<=110951||t>=110960&&t<=111355||t===126980||t===127183||t===127374||t>=127377&&t<=127386||t>=127488&&t<=127490||t>=127504&&t<=127547||t>=127552&&t<=127560||t===127568||t===127569||t>=127584&&t<=127589||t>=127744&&t<=127776||t>=127789&&t<=127797||t>=127799&&t<=127868||t>=127870&&t<=127891||t>=127904&&t<=127946||t>=127951&&t<=127955||t>=127968&&t<=127984||t===127988||t>=127992&&t<=128062||t===128064||t>=128066&&t<=128252||t>=128255&&t<=128317||t>=128331&&t<=128334||t>=128336&&t<=128359||t===128378||t===128405||t===128406||t===128420||t>=128507&&t<=128591||t>=128640&&t<=128709||t===128716||t>=128720&&t<=128722||t>=128725&&t<=128727||t>=128732&&t<=128735||t===128747||t===128748||t>=128756&&t<=128764||t>=128992&&t<=129003||t===129008||t>=129292&&t<=129338||t>=129340&&t<=129349||t>=129351&&t<=129535||t>=129648&&t<=129660||t>=129664&&t<=129672||t>=129680&&t<=129725||t>=129727&&t<=129733||t>=129742&&t<=129755||t>=129760&&t<=129768||t>=129776&&t<=129784||t>=131072&&t<=196605||t>=196608&&t<=262141;var Tu=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,Zi=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,Hi=/\t{1,1000}/y,Pu=new RegExp("[\\u{1F1E6}-\\u{1F1FF}]{2}|\\u{1F3F4}[\\u{E0061}-\\u{E007A}]{2}[\\u{E0030}-\\u{E0039}\\u{E0061}-\\u{E007A}]{1,3}\\u{E007F}|(?:\\p{Emoji}\\uFE0F\\u20E3?|\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation})(?:\\u200D(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation}|\\p{Emoji}\\uFE0F\\u20E3?))*","yu"),qi=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,a$=new RegExp("\\p{M}+","gu"),c$={limit:1/0,ellipsis:""},Ag=(t,e={},r={})=>{let n=e.limit??1/0,o=e.ellipsis??"",s=e?.ellipsisWidth??(o?Ag(o,c$,r).width:0),i=r.ansiWidth??0,a=r.controlWidth??0,c=r.tabWidth??8,u=r.ambiguousWidth??1,l=r.emojiWidth??2,d=r.fullWidthWidth??2,p=r.regularWidth??1,f=r.wideWidth??2,m=0,h=0,g=t.length,y=0,_=!1,x=g,k=Math.max(0,n-s),T=0,H=0,z=0,K=0;e:for(;;){if(H>T||h>=g&&h>m){let Le=t.slice(T,H)||t.slice(m,h);y=0;for(let P of Le.replaceAll(a$,"")){let N=P.codePointAt(0)||0;if(Og(N)?K=d:Ig(N)?K=f:u!==p&&Cg(N)?K=u:K=p,z+K>k&&(x=Math.min(x,Math.max(T,m)+y)),z+K>n){_=!0;break e}y+=P.length,z+=K}T=H=0}if(h>=g)break;if(qi.lastIndex=h,qi.test(t)){if(y=qi.lastIndex-h,K=y*p,z+K>k&&(x=Math.min(x,h+Math.floor((k-z)/p))),z+K>n){_=!0;break}z+=K,T=m,H=h,h=m=qi.lastIndex;continue}if(Tu.lastIndex=h,Tu.test(t)){if(z+i>k&&(x=Math.min(x,h)),z+i>n){_=!0;break}z+=i,T=m,H=h,h=m=Tu.lastIndex;continue}if(Zi.lastIndex=h,Zi.test(t)){if(y=Zi.lastIndex-h,K=y*a,z+K>k&&(x=Math.min(x,h+Math.floor((k-z)/a))),z+K>n){_=!0;break}z+=K,T=m,H=h,h=m=Zi.lastIndex;continue}if(Hi.lastIndex=h,Hi.test(t)){if(y=Hi.lastIndex-h,K=y*c,z+K>k&&(x=Math.min(x,h+Math.floor((k-z)/c))),z+K>n){_=!0;break}z+=K,T=m,H=h,h=m=Hi.lastIndex;continue}if(Pu.lastIndex=h,Pu.test(t)){if(z+l>k&&(x=Math.min(x,h)),z+l>n){_=!0;break}z+=l,T=m,H=h,h=m=Pu.lastIndex;continue}h+=1}return{width:_?k:z,index:_?x:g,truncated:_,ellipsed:_&&n>=s}},Ng=Ag;var u$={limit:1/0,ellipsis:"",ellipsisWidth:0},l$=(t,e={})=>Ng(t,u$,e).width,st=l$;var Bi="\x1B",Lg="\x9B",d$=39,Cu="\x07",Fg="[",p$="]",Ug="m",Ou=`${p$}8;;`,zg=new RegExp(`(?:\\${Fg}(?<code>\\d+)m|\\${Ou}(?<uri>.*)${Cu})`,"y"),jg=t=>{if(t>=30&&t<=37||t>=90&&t<=97)return 39;if(t>=40&&t<=47||t>=100&&t<=107)return 49;if(t===1||t===2)return 22;if(t===3)return 23;if(t===4)return 24;if(t===7)return 27;if(t===8)return 28;if(t===9)return 29;if(t===0)return 0},Dg=t=>`${Bi}${Fg}${t}${Ug}`,Mg=t=>`${Bi}${Ou}${t}${Cu}`,Ru=(t,e,r)=>{let n=e[Symbol.iterator](),o=!1,s=!1,i=t.at(-1),a=i===void 0?0:st(i),c=n.next(),u=n.next(),l=0;for(;!c.done;){let d=c.value,p=st(d);a+p<=r?t[t.length-1]+=d:(t.push(d),a=0),(d===Bi||d===Lg)&&(o=!0,s=e.startsWith(Ou,l+1)),o?s?d===Cu&&(o=!1,s=!1):d===Ug&&(o=!1):(a+=p,a===r&&!u.done&&(t.push(""),a=0)),c=u,u=n.next(),l+=d.length}i=t.at(-1),!a&&i!==void 0&&i.length&&t.length>1&&(t[t.length-2]+=t.pop())},m$=t=>{let e=t.split(" "),r=e.length;for(;r&&!st(e[r-1]);)r--;return r===e.length?t:e.slice(0,r).join(" ")+e.slice(r).join("")},f$=(t,e,r={})=>{if(r.trim!==!1&&t.trim()==="")return"";let n="",o,s,i=t.split(" "),a=[""],c=0;for(let d=0;d<i.length;d++){let p=i[d];if(r.trim!==!1){let m=a.at(-1)??"",h=m.trimStart();m.length!==h.length&&(a[a.length-1]=h,c=st(h))}d!==0&&(c>=e&&(r.wordWrap===!1||r.trim===!1)&&(a.push(""),c=0),(c||r.trim===!1)&&(a[a.length-1]+=" ",c++));let f=st(p);if(r.hard&&f>e){let m=e-c,h=1+Math.floor((f-m-1)/e);Math.floor((f-1)/e)<h&&a.push(""),Ru(a,p,e),c=st(a.at(-1)??"");continue}if(c+f>e&&c&&f){if(r.wordWrap===!1&&c<e){Ru(a,p,e),c=st(a.at(-1)??"");continue}a.push(""),c=0}if(c+f>e&&r.wordWrap===!1){Ru(a,p,e),c=st(a.at(-1)??"");continue}a[a.length-1]+=p,c+=f}r.trim!==!1&&(a=a.map(d=>m$(d)));let u=a.join(`
757
- `),l=!1;for(let d=0;d<u.length;d++){let p=u[d];if(n+=p,!l)l=p>="\uD800"&&p<="\uDBFF";else continue;if(p===Bi||p===Lg){zg.lastIndex=d+1;let m=zg.exec(u)?.groups;if(m?.code!==void 0){let h=Number.parseFloat(m.code);o=h===d$?void 0:h}else m?.uri!==void 0&&(s=m.uri.length===0?void 0:m.uri)}if(u[d+1]===`
758
- `){s&&(n+=Mg(""));let f=o?jg(o):void 0;o&&f&&(n+=Dg(f))}else p===`
759
- `&&(o&&jg(o)&&(n+=Dg(o)),s&&(n+=Mg(s)))}return n},h$=/\r?\n/;function oo(t,e,r){return String(t).normalize().split(h$).map(n=>f$(n,e,r)).join(`
760
- `)}var hs=fs(Au(),1);import{ReadStream as Hg}from"node:tty";var v$=["up","down","left","right","space","enter","cancel"],b$=["January","February","March","April","May","June","July","August","September","October","November","December"],sr={actions:new Set(v$),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["","cancel"],["escape","cancel"]]),messages:{cancel:"Canceled",error:"Something went wrong"},withGuide:!0,date:{monthNames:[...b$],messages:{required:"Please enter a valid date",invalidMonth:"There are only 12 months in a year",invalidDay:(t,e)=>`There are only ${t} days in ${e}`,afterMin:t=>`Date must be on or after ${t.toISOString().slice(0,10)}`,beforeMax:t=>`Date must be on or before ${t.toISOString().slice(0,10)}`}}};function qg(t,e){if(typeof t=="string")return sr.aliases.get(t)===e;for(let r of t)if(r!==void 0&&qg(r,e))return!0;return!1}var S$=globalThis.process.platform.startsWith("win");function Bg({input:t=x$,output:e=y$,overwrite:r=!0,hideCursor:n=!0}={}){let o=Fr.createInterface({input:t,output:e,prompt:"",tabSize:1});Fr.emitKeypressEvents(t,o),t instanceof Hg&&t.isTTY&&t.setRawMode(!0);let s=(i,{name:a,sequence:c})=>{let u=String(i);if(qg([u,a,c],"cancel")){n&&e.write(hs.cursor.show),process.exit(0);return}if(!r)return;Fr.moveCursor(e,a==="return"?0:-1,a==="return"?-1:0,()=>{Fr.clearLine(e,1,()=>{t.once("keypress",s)})})};return n&&e.write(hs.cursor.hide),t.once("keypress",s),()=>{t.off("keypress",s),n&&e.write(hs.cursor.show),t instanceof Hg&&t.isTTY&&!S$&&t.setRawMode(!1),o.terminal=!1,o.close()}}var Nu=t=>"columns"in t&&typeof t.columns=="number"?t.columns:80;import{styleText as Re,stripVTControlCharacters as SL}from"node:util";import $t from"node:process";var gs=fs(Au(),1);function w$(){return $t.platform!=="win32"?$t.env.TERM!=="linux":!!$t.env.CI||!!$t.env.WT_SESSION||!!$t.env.TERMINUS_SUBLIME||$t.env.ConEmuTask==="{cmd::Cmder}"||$t.env.TERM_PROGRAM==="Terminus-Sublime"||$t.env.TERM_PROGRAM==="vscode"||$t.env.TERM==="xterm-256color"||$t.env.TERM==="alacritty"||$t.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var zu=w$(),$$=()=>process.env.CI==="true";var fe=(t,e)=>zu?t:e,EL=fe("\u25C6","*"),E$=fe("\u25A0","x"),T$=fe("\u25B2","x"),ju=fe("\u25C7","o"),P$=fe("\u250C","T"),Ur=fe("\u2502","|"),R$=fe("\u2514","\u2014"),TL=fe("\u2510","T"),PL=fe("\u2518","\u2014"),RL=fe("\u25CF",">"),CL=fe("\u25CB"," "),OL=fe("\u25FB","[\u2022]"),IL=fe("\u25FC","[+]"),AL=fe("\u25FB","[ ]"),NL=fe("\u25AA","\u2022"),Vg=fe("\u2500","-"),C$=fe("\u256E","+"),O$=fe("\u251C","+"),I$=fe("\u256F","+"),A$=fe("\u2570","+"),zL=fe("\u256D","+"),N$=fe("\u25CF","\u2022"),z$=fe("\u25C6","*"),j$=fe("\u25B2","!"),D$=fe("\u25A0","x");var A={message:(t=[],{symbol:e=Re("gray",Ur),secondarySymbol:r=Re("gray",Ur),output:n=process.stdout,spacing:o=1,withGuide:s}={})=>{let i=[],a=s??sr.withGuide,c=a?r:"",u=a?`${e} `:"",l=a?`${r} `:"";for(let p=0;p<o;p++)i.push(c);let d=Array.isArray(t)?t:t.split(`
755
+ Open: ${E}
756
+ PID: ${k.pid} \xB7 Stop: ${process.platform==="win32"?`taskkill /PID ${k.pid} /F`:`kill ${k.pid}`}`}]})}catch(f){let m=f instanceof Error?f.message:String(f);return W("ctx_insight",{content:[{type:"text",text:`Insight setup failed: ${m}`}]})}});PM().catch(t=>{console.error("Fatal:",t),process.exit(1)})});import{stdout as y$,stdin as x$}from"node:process";import*as Fr from"node:readline";var Og=t=>t===161||t===164||t===167||t===168||t===170||t===173||t===174||t>=176&&t<=180||t>=182&&t<=186||t>=188&&t<=191||t===198||t===208||t===215||t===216||t>=222&&t<=225||t===230||t>=232&&t<=234||t===236||t===237||t===240||t===242||t===243||t>=247&&t<=250||t===252||t===254||t===257||t===273||t===275||t===283||t===294||t===295||t===299||t>=305&&t<=307||t===312||t>=319&&t<=322||t===324||t>=328&&t<=331||t===333||t===338||t===339||t===358||t===359||t===363||t===462||t===464||t===466||t===468||t===470||t===472||t===474||t===476||t===593||t===609||t===708||t===711||t>=713&&t<=715||t===717||t===720||t>=728&&t<=731||t===733||t===735||t>=768&&t<=879||t>=913&&t<=929||t>=931&&t<=937||t>=945&&t<=961||t>=963&&t<=969||t===1025||t>=1040&&t<=1103||t===1105||t===8208||t>=8211&&t<=8214||t===8216||t===8217||t===8220||t===8221||t>=8224&&t<=8226||t>=8228&&t<=8231||t===8240||t===8242||t===8243||t===8245||t===8251||t===8254||t===8308||t===8319||t>=8321&&t<=8324||t===8364||t===8451||t===8453||t===8457||t===8467||t===8470||t===8481||t===8482||t===8486||t===8491||t===8531||t===8532||t>=8539&&t<=8542||t>=8544&&t<=8555||t>=8560&&t<=8569||t===8585||t>=8592&&t<=8601||t===8632||t===8633||t===8658||t===8660||t===8679||t===8704||t===8706||t===8707||t===8711||t===8712||t===8715||t===8719||t===8721||t===8725||t===8730||t>=8733&&t<=8736||t===8739||t===8741||t>=8743&&t<=8748||t===8750||t>=8756&&t<=8759||t===8764||t===8765||t===8776||t===8780||t===8786||t===8800||t===8801||t>=8804&&t<=8807||t===8810||t===8811||t===8814||t===8815||t===8834||t===8835||t===8838||t===8839||t===8853||t===8857||t===8869||t===8895||t===8978||t>=9312&&t<=9449||t>=9451&&t<=9547||t>=9552&&t<=9587||t>=9600&&t<=9615||t>=9618&&t<=9621||t===9632||t===9633||t>=9635&&t<=9641||t===9650||t===9651||t===9654||t===9655||t===9660||t===9661||t===9664||t===9665||t>=9670&&t<=9672||t===9675||t>=9678&&t<=9681||t>=9698&&t<=9701||t===9711||t===9733||t===9734||t===9737||t===9742||t===9743||t===9756||t===9758||t===9792||t===9794||t===9824||t===9825||t>=9827&&t<=9829||t>=9831&&t<=9834||t===9836||t===9837||t===9839||t===9886||t===9887||t===9919||t>=9926&&t<=9933||t>=9935&&t<=9939||t>=9941&&t<=9953||t===9955||t===9960||t===9961||t>=9963&&t<=9969||t===9972||t>=9974&&t<=9977||t===9979||t===9980||t===9982||t===9983||t===10045||t>=10102&&t<=10111||t>=11094&&t<=11097||t>=12872&&t<=12879||t>=57344&&t<=63743||t>=65024&&t<=65039||t===65533||t>=127232&&t<=127242||t>=127248&&t<=127277||t>=127280&&t<=127337||t>=127344&&t<=127373||t===127375||t===127376||t>=127387&&t<=127404||t>=917760&&t<=917999||t>=983040&&t<=1048573||t>=1048576&&t<=1114109,Ig=t=>t===12288||t>=65281&&t<=65376||t>=65504&&t<=65510,Ag=t=>t>=4352&&t<=4447||t===8986||t===8987||t===9001||t===9002||t>=9193&&t<=9196||t===9200||t===9203||t===9725||t===9726||t===9748||t===9749||t>=9800&&t<=9811||t===9855||t===9875||t===9889||t===9898||t===9899||t===9917||t===9918||t===9924||t===9925||t===9934||t===9940||t===9962||t===9970||t===9971||t===9973||t===9978||t===9981||t===9989||t===9994||t===9995||t===10024||t===10060||t===10062||t>=10067&&t<=10069||t===10071||t>=10133&&t<=10135||t===10160||t===10175||t===11035||t===11036||t===11088||t===11093||t>=11904&&t<=11929||t>=11931&&t<=12019||t>=12032&&t<=12245||t>=12272&&t<=12287||t>=12289&&t<=12350||t>=12353&&t<=12438||t>=12441&&t<=12543||t>=12549&&t<=12591||t>=12593&&t<=12686||t>=12688&&t<=12771||t>=12783&&t<=12830||t>=12832&&t<=12871||t>=12880&&t<=19903||t>=19968&&t<=42124||t>=42128&&t<=42182||t>=43360&&t<=43388||t>=44032&&t<=55203||t>=63744&&t<=64255||t>=65040&&t<=65049||t>=65072&&t<=65106||t>=65108&&t<=65126||t>=65128&&t<=65131||t>=94176&&t<=94180||t===94192||t===94193||t>=94208&&t<=100343||t>=100352&&t<=101589||t>=101632&&t<=101640||t>=110576&&t<=110579||t>=110581&&t<=110587||t===110589||t===110590||t>=110592&&t<=110882||t===110898||t>=110928&&t<=110930||t===110933||t>=110948&&t<=110951||t>=110960&&t<=111355||t===126980||t===127183||t===127374||t>=127377&&t<=127386||t>=127488&&t<=127490||t>=127504&&t<=127547||t>=127552&&t<=127560||t===127568||t===127569||t>=127584&&t<=127589||t>=127744&&t<=127776||t>=127789&&t<=127797||t>=127799&&t<=127868||t>=127870&&t<=127891||t>=127904&&t<=127946||t>=127951&&t<=127955||t>=127968&&t<=127984||t===127988||t>=127992&&t<=128062||t===128064||t>=128066&&t<=128252||t>=128255&&t<=128317||t>=128331&&t<=128334||t>=128336&&t<=128359||t===128378||t===128405||t===128406||t===128420||t>=128507&&t<=128591||t>=128640&&t<=128709||t===128716||t>=128720&&t<=128722||t>=128725&&t<=128727||t>=128732&&t<=128735||t===128747||t===128748||t>=128756&&t<=128764||t>=128992&&t<=129003||t===129008||t>=129292&&t<=129338||t>=129340&&t<=129349||t>=129351&&t<=129535||t>=129648&&t<=129660||t>=129664&&t<=129672||t>=129680&&t<=129725||t>=129727&&t<=129733||t>=129742&&t<=129755||t>=129760&&t<=129768||t>=129776&&t<=129784||t>=131072&&t<=196605||t>=196608&&t<=262141;var Tu=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,Ui=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,Zi=/\t{1,1000}/y,Pu=new RegExp("[\\u{1F1E6}-\\u{1F1FF}]{2}|\\u{1F3F4}[\\u{E0061}-\\u{E007A}]{2}[\\u{E0030}-\\u{E0039}\\u{E0061}-\\u{E007A}]{1,3}\\u{E007F}|(?:\\p{Emoji}\\uFE0F\\u20E3?|\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation})(?:\\u200D(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation}|\\p{Emoji}\\uFE0F\\u20E3?))*","yu"),Hi=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,a$=new RegExp("\\p{M}+","gu"),c$={limit:1/0,ellipsis:""},Ng=(t,e={},r={})=>{let n=e.limit??1/0,o=e.ellipsis??"",s=e?.ellipsisWidth??(o?Ng(o,c$,r).width:0),i=r.ansiWidth??0,a=r.controlWidth??0,c=r.tabWidth??8,u=r.ambiguousWidth??1,l=r.emojiWidth??2,d=r.fullWidthWidth??2,p=r.regularWidth??1,f=r.wideWidth??2,m=0,h=0,g=t.length,y=0,_=!1,x=g,k=Math.max(0,n-s),E=0,H=0,z=0,K=0;e:for(;;){if(H>E||h>=g&&h>m){let Le=t.slice(E,H)||t.slice(m,h);y=0;for(let P of Le.replaceAll(a$,"")){let N=P.codePointAt(0)||0;if(Ig(N)?K=d:Ag(N)?K=f:u!==p&&Og(N)?K=u:K=p,z+K>k&&(x=Math.min(x,Math.max(E,m)+y)),z+K>n){_=!0;break e}y+=P.length,z+=K}E=H=0}if(h>=g)break;if(Hi.lastIndex=h,Hi.test(t)){if(y=Hi.lastIndex-h,K=y*p,z+K>k&&(x=Math.min(x,h+Math.floor((k-z)/p))),z+K>n){_=!0;break}z+=K,E=m,H=h,h=m=Hi.lastIndex;continue}if(Tu.lastIndex=h,Tu.test(t)){if(z+i>k&&(x=Math.min(x,h)),z+i>n){_=!0;break}z+=i,E=m,H=h,h=m=Tu.lastIndex;continue}if(Ui.lastIndex=h,Ui.test(t)){if(y=Ui.lastIndex-h,K=y*a,z+K>k&&(x=Math.min(x,h+Math.floor((k-z)/a))),z+K>n){_=!0;break}z+=K,E=m,H=h,h=m=Ui.lastIndex;continue}if(Zi.lastIndex=h,Zi.test(t)){if(y=Zi.lastIndex-h,K=y*c,z+K>k&&(x=Math.min(x,h+Math.floor((k-z)/c))),z+K>n){_=!0;break}z+=K,E=m,H=h,h=m=Zi.lastIndex;continue}if(Pu.lastIndex=h,Pu.test(t)){if(z+l>k&&(x=Math.min(x,h)),z+l>n){_=!0;break}z+=l,E=m,H=h,h=m=Pu.lastIndex;continue}h+=1}return{width:_?k:z,index:_?x:g,truncated:_,ellipsed:_&&n>=s}},zg=Ng;var u$={limit:1/0,ellipsis:"",ellipsisWidth:0},l$=(t,e={})=>zg(t,u$,e).width,st=l$;var qi="\x1B",Fg="\x9B",d$=39,Cu="\x07",Ug="[",p$="]",Zg="m",Ou=`${p$}8;;`,jg=new RegExp(`(?:\\${Ug}(?<code>\\d+)m|\\${Ou}(?<uri>.*)${Cu})`,"y"),Dg=t=>{if(t>=30&&t<=37||t>=90&&t<=97)return 39;if(t>=40&&t<=47||t>=100&&t<=107)return 49;if(t===1||t===2)return 22;if(t===3)return 23;if(t===4)return 24;if(t===7)return 27;if(t===8)return 28;if(t===9)return 29;if(t===0)return 0},Mg=t=>`${qi}${Ug}${t}${Zg}`,Lg=t=>`${qi}${Ou}${t}${Cu}`,Ru=(t,e,r)=>{let n=e[Symbol.iterator](),o=!1,s=!1,i=t.at(-1),a=i===void 0?0:st(i),c=n.next(),u=n.next(),l=0;for(;!c.done;){let d=c.value,p=st(d);a+p<=r?t[t.length-1]+=d:(t.push(d),a=0),(d===qi||d===Fg)&&(o=!0,s=e.startsWith(Ou,l+1)),o?s?d===Cu&&(o=!1,s=!1):d===Zg&&(o=!1):(a+=p,a===r&&!u.done&&(t.push(""),a=0)),c=u,u=n.next(),l+=d.length}i=t.at(-1),!a&&i!==void 0&&i.length&&t.length>1&&(t[t.length-2]+=t.pop())},m$=t=>{let e=t.split(" "),r=e.length;for(;r&&!st(e[r-1]);)r--;return r===e.length?t:e.slice(0,r).join(" ")+e.slice(r).join("")},f$=(t,e,r={})=>{if(r.trim!==!1&&t.trim()==="")return"";let n="",o,s,i=t.split(" "),a=[""],c=0;for(let d=0;d<i.length;d++){let p=i[d];if(r.trim!==!1){let m=a.at(-1)??"",h=m.trimStart();m.length!==h.length&&(a[a.length-1]=h,c=st(h))}d!==0&&(c>=e&&(r.wordWrap===!1||r.trim===!1)&&(a.push(""),c=0),(c||r.trim===!1)&&(a[a.length-1]+=" ",c++));let f=st(p);if(r.hard&&f>e){let m=e-c,h=1+Math.floor((f-m-1)/e);Math.floor((f-1)/e)<h&&a.push(""),Ru(a,p,e),c=st(a.at(-1)??"");continue}if(c+f>e&&c&&f){if(r.wordWrap===!1&&c<e){Ru(a,p,e),c=st(a.at(-1)??"");continue}a.push(""),c=0}if(c+f>e&&r.wordWrap===!1){Ru(a,p,e),c=st(a.at(-1)??"");continue}a[a.length-1]+=p,c+=f}r.trim!==!1&&(a=a.map(d=>m$(d)));let u=a.join(`
757
+ `),l=!1;for(let d=0;d<u.length;d++){let p=u[d];if(n+=p,!l)l=p>="\uD800"&&p<="\uDBFF";else continue;if(p===qi||p===Fg){jg.lastIndex=d+1;let m=jg.exec(u)?.groups;if(m?.code!==void 0){let h=Number.parseFloat(m.code);o=h===d$?void 0:h}else m?.uri!==void 0&&(s=m.uri.length===0?void 0:m.uri)}if(u[d+1]===`
758
+ `){s&&(n+=Lg(""));let f=o?Dg(o):void 0;o&&f&&(n+=Mg(f))}else p===`
759
+ `&&(o&&Dg(o)&&(n+=Mg(o)),s&&(n+=Lg(s)))}return n},h$=/\r?\n/;function oo(t,e,r){return String(t).normalize().split(h$).map(n=>f$(n,e,r)).join(`
760
+ `)}var hs=fs(Au(),1);import{ReadStream as qg}from"node:tty";var v$=["up","down","left","right","space","enter","cancel"],b$=["January","February","March","April","May","June","July","August","September","October","November","December"],sr={actions:new Set(v$),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["","cancel"],["escape","cancel"]]),messages:{cancel:"Canceled",error:"Something went wrong"},withGuide:!0,date:{monthNames:[...b$],messages:{required:"Please enter a valid date",invalidMonth:"There are only 12 months in a year",invalidDay:(t,e)=>`There are only ${t} days in ${e}`,afterMin:t=>`Date must be on or after ${t.toISOString().slice(0,10)}`,beforeMax:t=>`Date must be on or before ${t.toISOString().slice(0,10)}`}}};function Bg(t,e){if(typeof t=="string")return sr.aliases.get(t)===e;for(let r of t)if(r!==void 0&&Bg(r,e))return!0;return!1}var S$=globalThis.process.platform.startsWith("win");function Vg({input:t=x$,output:e=y$,overwrite:r=!0,hideCursor:n=!0}={}){let o=Fr.createInterface({input:t,output:e,prompt:"",tabSize:1});Fr.emitKeypressEvents(t,o),t instanceof qg&&t.isTTY&&t.setRawMode(!0);let s=(i,{name:a,sequence:c})=>{let u=String(i);if(Bg([u,a,c],"cancel")){n&&e.write(hs.cursor.show),process.exit(0);return}if(!r)return;Fr.moveCursor(e,a==="return"?0:-1,a==="return"?-1:0,()=>{Fr.clearLine(e,1,()=>{t.once("keypress",s)})})};return n&&e.write(hs.cursor.hide),t.once("keypress",s),()=>{t.off("keypress",s),n&&e.write(hs.cursor.show),t instanceof qg&&t.isTTY&&!S$&&t.setRawMode(!1),o.terminal=!1,o.close()}}var Nu=t=>"columns"in t&&typeof t.columns=="number"?t.columns:80;import{styleText as Re,stripVTControlCharacters as SL}from"node:util";import Et from"node:process";var gs=fs(Au(),1);function w$(){return Et.platform!=="win32"?Et.env.TERM!=="linux":!!Et.env.CI||!!Et.env.WT_SESSION||!!Et.env.TERMINUS_SUBLIME||Et.env.ConEmuTask==="{cmd::Cmder}"||Et.env.TERM_PROGRAM==="Terminus-Sublime"||Et.env.TERM_PROGRAM==="vscode"||Et.env.TERM==="xterm-256color"||Et.env.TERM==="alacritty"||Et.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var zu=w$(),$$=()=>process.env.CI==="true";var fe=(t,e)=>zu?t:e,EL=fe("\u25C6","*"),E$=fe("\u25A0","x"),T$=fe("\u25B2","x"),ju=fe("\u25C7","o"),P$=fe("\u250C","T"),Ur=fe("\u2502","|"),R$=fe("\u2514","\u2014"),TL=fe("\u2510","T"),PL=fe("\u2518","\u2014"),RL=fe("\u25CF",">"),CL=fe("\u25CB"," "),OL=fe("\u25FB","[\u2022]"),IL=fe("\u25FC","[+]"),AL=fe("\u25FB","[ ]"),NL=fe("\u25AA","\u2022"),Wg=fe("\u2500","-"),C$=fe("\u256E","+"),O$=fe("\u251C","+"),I$=fe("\u256F","+"),A$=fe("\u2570","+"),zL=fe("\u256D","+"),N$=fe("\u25CF","\u2022"),z$=fe("\u25C6","*"),j$=fe("\u25B2","!"),D$=fe("\u25A0","x");var I={message:(t=[],{symbol:e=Re("gray",Ur),secondarySymbol:r=Re("gray",Ur),output:n=process.stdout,spacing:o=1,withGuide:s}={})=>{let i=[],a=s??sr.withGuide,c=a?r:"",u=a?`${e} `:"",l=a?`${r} `:"";for(let p=0;p<o;p++)i.push(c);let d=Array.isArray(t)?t:t.split(`
761
761
  `);if(d.length>0){let[p,...f]=d;p.length>0?i.push(`${u}${p}`):i.push(a?e:"");for(let m of f)m.length>0?i.push(`${l}${m}`):i.push(a?r:"")}n.write(`${i.join(`
762
762
  `)}
763
- `)},info:(t,e)=>{A.message(t,{...e,symbol:Re("blue",N$)})},success:(t,e)=>{A.message(t,{...e,symbol:Re("green",z$)})},step:(t,e)=>{A.message(t,{...e,symbol:Re("green",ju)})},warn:(t,e)=>{A.message(t,{...e,symbol:Re("yellow",j$)})},warning:(t,e)=>{A.warn(t,e)},error:(t,e)=>{A.message(t,{...e,symbol:Re("red",D$)})}};var Du=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??sr.withGuide?`${Re("gray",P$)} `:"";r.write(`${n}${t}
764
- `)},Vi=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??sr.withGuide?`${Re("gray",Ur)}
763
+ `)},info:(t,e)=>{I.message(t,{...e,symbol:Re("blue",N$)})},success:(t,e)=>{I.message(t,{...e,symbol:Re("green",z$)})},step:(t,e)=>{I.message(t,{...e,symbol:Re("green",ju)})},warn:(t,e)=>{I.message(t,{...e,symbol:Re("yellow",j$)})},warning:(t,e)=>{I.warn(t,e)},error:(t,e)=>{I.message(t,{...e,symbol:Re("red",D$)})}};var Du=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??sr.withGuide?`${Re("gray",P$)} `:"";r.write(`${n}${t}
764
+ `)},Bi=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??sr.withGuide?`${Re("gray",Ur)}
765
765
  ${Re("gray",R$)} `:"";r.write(`${n}${t}
766
766
 
767
767
  `)};var M$=t=>Re("dim",t),L$=(t,e,r)=>{let n={hard:!0,trim:!1},o=oo(t,e,n).split(`
768
- `),s=o.reduce((c,u)=>Math.max(st(u),c),0),i=o.map(r).reduce((c,u)=>Math.max(st(u),c),0),a=e-(i-s);return oo(t,a,n)},Mu=(t="",e="",r)=>{let n=r?.output??$t.stdout,o=r?.withGuide??sr.withGuide,s=r?.format??M$,i=["",...L$(t,Nu(n)-6,s).split(`
768
+ `),s=o.reduce((c,u)=>Math.max(st(u),c),0),i=o.map(r).reduce((c,u)=>Math.max(st(u),c),0),a=e-(i-s);return oo(t,a,n)},Mu=(t="",e="",r)=>{let n=r?.output??Et.stdout,o=r?.withGuide??sr.withGuide,s=r?.format??M$,i=["",...L$(t,Nu(n)-6,s).split(`
769
769
  `).map(s),""],a=st(e),c=Math.max(i.reduce((p,f)=>{let m=st(f);return m>p?m:p},0),a)+2,u=i.map(p=>`${Re("gray",Ur)} ${p}${" ".repeat(c-st(p))}${Re("gray",Ur)}`).join(`
770
770
  `),l=o?`${Re("gray",Ur)}
771
- `:"",d=o?O$:A$;n.write(`${l}${Re("green",ju)} ${Re("reset",e)} ${Re("gray",Vg.repeat(Math.max(c-a-1,1))+C$)}
771
+ `:"",d=o?O$:A$;n.write(`${l}${Re("green",ju)} ${Re("reset",e)} ${Re("gray",Wg.repeat(Math.max(c-a-1,1))+C$)}
772
772
  ${u}
773
- ${Re("gray",d+Vg.repeat(c+2)+I$)}
774
- `)};var F$=t=>Re("magenta",t),Lu=({indicator:t="dots",onCancel:e,output:r=process.stdout,cancelMessage:n,errorMessage:o,frames:s=zu?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],delay:i=zu?80:120,signal:a,...c}={})=>{let u=$$(),l,d,p=!1,f=!1,m="",h,g=performance.now(),y=Nu(r),_=c?.styleFrame??F$,x=Pe=>{let wt=Pe>1?o??sr.messages.error:n??sr.messages.cancel;f=Pe===1,p&&(De(wt,Pe),f&&typeof e=="function"&&e())},k=()=>x(2),T=()=>x(1),H=()=>{process.on("uncaughtExceptionMonitor",k),process.on("unhandledRejection",k),process.on("SIGINT",T),process.on("SIGTERM",T),process.on("exit",x),a&&a.addEventListener("abort",T)},z=()=>{process.removeListener("uncaughtExceptionMonitor",k),process.removeListener("unhandledRejection",k),process.removeListener("SIGINT",T),process.removeListener("SIGTERM",T),process.removeListener("exit",x),a&&a.removeEventListener("abort",T)},K=()=>{if(h===void 0)return;u&&r.write(`
773
+ ${Re("gray",d+Wg.repeat(c+2)+I$)}
774
+ `)};var F$=t=>Re("magenta",t),Lu=({indicator:t="dots",onCancel:e,output:r=process.stdout,cancelMessage:n,errorMessage:o,frames:s=zu?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],delay:i=zu?80:120,signal:a,...c}={})=>{let u=$$(),l,d,p=!1,f=!1,m="",h,g=performance.now(),y=Nu(r),_=c?.styleFrame??F$,x=Pe=>{let $t=Pe>1?o??sr.messages.error:n??sr.messages.cancel;f=Pe===1,p&&(De($t,Pe),f&&typeof e=="function"&&e())},k=()=>x(2),E=()=>x(1),H=()=>{process.on("uncaughtExceptionMonitor",k),process.on("unhandledRejection",k),process.on("SIGINT",E),process.on("SIGTERM",E),process.on("exit",x),a&&a.addEventListener("abort",E)},z=()=>{process.removeListener("uncaughtExceptionMonitor",k),process.removeListener("unhandledRejection",k),process.removeListener("SIGINT",E),process.removeListener("SIGTERM",E),process.removeListener("exit",x),a&&a.removeEventListener("abort",E)},K=()=>{if(h===void 0)return;u&&r.write(`
775
775
  `);let Pe=oo(h,y,{hard:!0,trim:!1}).split(`
776
- `);Pe.length>1&&r.write(gs.cursor.up(Pe.length-1)),r.write(gs.cursor.to(0)),r.write(gs.erase.down())},Le=Pe=>Pe.replace(/\.+$/,""),P=Pe=>{let wt=(performance.now()-Pe)/1e3,vr=Math.floor(wt/60),br=Math.floor(wt%60);return vr>0?`[${vr}m ${br}s]`:`[${br}s]`},N=c.withGuide??sr.withGuide,ce=(Pe="")=>{p=!0,l=Bg({output:r}),m=Le(Pe),g=performance.now(),N&&r.write(`${Re("gray",Ur)}
777
- `);let wt=0,vr=0;H(),d=setInterval(()=>{if(u&&m===h)return;K(),h=m;let br=_(s[wt]),Ui;if(u)Ui=`${br} ${m}...`;else if(t==="timer")Ui=`${br} ${m} ${P(g)}`;else{let e$=".".repeat(Math.floor(vr)).slice(0,3);Ui=`${br} ${m}${e$}`}let Qw=oo(Ui,y,{hard:!0,trim:!1});r.write(Qw),wt=wt+1<s.length?wt+1:0,vr=vr<4?vr+.125:0},i)},De=(Pe="",wt=0,vr=!1)=>{if(!p)return;p=!1,clearInterval(d),K();let br=wt===0?Re("green",ju):wt===1?Re("red",E$):Re("red",T$);m=Pe??m,vr||(t==="timer"?r.write(`${br} ${m} ${P(g)}
776
+ `);Pe.length>1&&r.write(gs.cursor.up(Pe.length-1)),r.write(gs.cursor.to(0)),r.write(gs.erase.down())},Le=Pe=>Pe.replace(/\.+$/,""),P=Pe=>{let $t=(performance.now()-Pe)/1e3,vr=Math.floor($t/60),br=Math.floor($t%60);return vr>0?`[${vr}m ${br}s]`:`[${br}s]`},N=c.withGuide??sr.withGuide,ce=(Pe="")=>{p=!0,l=Vg({output:r}),m=Le(Pe),g=performance.now(),N&&r.write(`${Re("gray",Ur)}
777
+ `);let $t=0,vr=0;H(),d=setInterval(()=>{if(u&&m===h)return;K(),h=m;let br=_(s[$t]),Fi;if(u)Fi=`${br} ${m}...`;else if(t==="timer")Fi=`${br} ${m} ${P(g)}`;else{let e$=".".repeat(Math.floor(vr)).slice(0,3);Fi=`${br} ${m}${e$}`}let Qw=oo(Fi,y,{hard:!0,trim:!1});r.write(Qw),$t=$t+1<s.length?$t+1:0,vr=vr<4?vr+.125:0},i)},De=(Pe="",$t=0,vr=!1)=>{if(!p)return;p=!1,clearInterval(d),K();let br=$t===0?Re("green",ju):$t===1?Re("red",E$):Re("red",T$);m=Pe??m,vr||(t==="timer"?r.write(`${br} ${m} ${P(g)}
778
778
  `):r.write(`${br} ${m}
779
- `)),z(),l()};return{start:ce,stop:(Pe="")=>De(Pe,0),message:(Pe="")=>{m=Le(Pe??m)},cancel:(Pe="")=>De(Pe,1),error:(Pe="")=>De(Pe,2),clear:()=>De("",0,!0),get isCancelled(){return f}}},jL={light:fe("\u2500","-"),heavy:fe("\u2501","="),block:fe("\u2588","#")};var DL=`${Re("gray",Ur)} `;var E=fs(Kg(),1);Xi();ua();import{execFileSync as ls,execFile as RM}from"node:child_process";import{readFileSync as Fi,writeFileSync as CM,cpSync as Gw,accessSync as Kw,existsSync as qt,rmSync as ds,closeSync as OM,openSync as IM,chmodSync as AM,constants as Jw}from"node:fs";import{request as NM}from"node:https";import{resolve as Te,dirname as Pg,join as dt}from"node:path";import{tmpdir as zM,devNull as jM,homedir as ps}from"node:os";import{fileURLToPath as DM,pathToFileURL as Yw}from"node:url";var MM={"claude-code":{pretooluse:"hooks/pretooluse.mjs",posttooluse:"hooks/posttooluse.mjs",precompact:"hooks/precompact.mjs",sessionstart:"hooks/sessionstart.mjs",userpromptsubmit:"hooks/userpromptsubmit.mjs"},"gemini-cli":{beforetool:"hooks/gemini-cli/beforetool.mjs",aftertool:"hooks/gemini-cli/aftertool.mjs",precompress:"hooks/gemini-cli/precompress.mjs",sessionstart:"hooks/gemini-cli/sessionstart.mjs"},"vscode-copilot":{pretooluse:"hooks/vscode-copilot/pretooluse.mjs",posttooluse:"hooks/vscode-copilot/posttooluse.mjs",precompact:"hooks/vscode-copilot/precompact.mjs",sessionstart:"hooks/vscode-copilot/sessionstart.mjs"},cursor:{pretooluse:"hooks/cursor/pretooluse.mjs",posttooluse:"hooks/cursor/posttooluse.mjs",sessionstart:"hooks/cursor/sessionstart.mjs",stop:"hooks/cursor/stop.mjs",afteragentresponse:"hooks/cursor/afteragentresponse.mjs"},codex:{pretooluse:"hooks/codex/pretooluse.mjs",posttooluse:"hooks/codex/posttooluse.mjs",sessionstart:"hooks/codex/sessionstart.mjs",userpromptsubmit:"hooks/codex/userpromptsubmit.mjs",stop:"hooks/codex/stop.mjs"},kiro:{pretooluse:"hooks/kiro/pretooluse.mjs",posttooluse:"hooks/kiro/posttooluse.mjs"},"jetbrains-copilot":{pretooluse:"hooks/jetbrains-copilot/pretooluse.mjs",posttooluse:"hooks/jetbrains-copilot/posttooluse.mjs",precompact:"hooks/jetbrains-copilot/precompact.mjs",sessionstart:"hooks/jetbrains-copilot/sessionstart.mjs"},"qwen-code":{pretooluse:"hooks/pretooluse.mjs",posttooluse:"hooks/posttooluse.mjs",precompact:"hooks/precompact.mjs",sessionstart:"hooks/sessionstart.mjs",userpromptsubmit:"hooks/userpromptsubmit.mjs"}};async function LM(t,e){try{OM(2),IM(jM,"w")}catch{process.stderr.write=(()=>!0)}let r=MM[t]?.[e];r||process.exit(1);let n=ms();await import(Yw(dt(n,r)).href)}var Lr=process.argv.slice(2);Lr[0]==="doctor"?BM().then(t=>process.exit(t)):Lr[0]==="upgrade"?WM():Lr[0]==="hook"?LM(Lr[1],Lr[2]):Lr[0]==="insight"?VM(Lr[1]?Number(Lr[1]):4747):Lr[0]==="statusline"?GM():Promise.resolve().then(()=>(Ww(),Vw));function yV(t){return t.replace(/\\/g,"/")}var $u=process.platform==="win32";function Li(t,e={}){ls($u?"npm.cmd":"npm",t,{...e,...$u?{shell:!0}:{}})}function FM(t,e={}){let{execSync:r}=Rg("node:child_process");r($u?t.replace(/^npm /,"npm.cmd "):t,{...e,...$u?{shell:!0}:{}})}function UM(t,e=process.platform,r=RM){let n={stdio:"ignore"},o=()=>console.error(`
780
- Could not auto-open browser. Open manually: ${t}`);try{if(e==="darwin")r("open",[t],n);else if(e==="win32")r("cmd",["/c","start","",t],n);else try{r("xdg-open",[t],n)}catch{try{r("sensible-browser",[t],n)}catch{o()}}}catch{o()}}function ZM(){let t=DM(import.meta.url),e=Pg(t);return e.endsWith("/build")||e.endsWith("\\build")||e.endsWith("/src")||e.endsWith("\\src")?Te(e,".."):e}function HM(t){let e=["packages","context-mode@latest","node_modules","context-mode"];if(process.platform==="win32"){let r=process.env.LOCALAPPDATA;return r?Te(r,t,...e):Te(ps(),"AppData","Local",t,...e)}return Te(ps(),".cache",t,...e)}function ms(){let t=wr().platform;return t==="opencode"||t==="kilo"?HM(t):ZM()}function Xw(){try{return JSON.parse(Fi(Te(ms(),"package.json"),"utf-8")).version??"unknown"}catch{return"unknown"}}async function qM(){return new Promise(t=>{let e=NM("https://registry.npmjs.org/context-mode/latest",{headers:{Connection:"close"}},r=>{let n="";r.on("data",o=>{n+=o}),r.on("end",()=>{try{let o=JSON.parse(n);t(o.version??"unknown")}catch{t("unknown")}})});e.on("error",()=>t("unknown")),e.setTimeout(5e3,()=>{e.destroy(),t("unknown")}),e.end()})}async function BM(){process.stdout.isTTY&&console.clear();let t=wr(),e=await bs(t.platform);Du(E.default.bgMagenta(E.default.white(" context-mode doctor "))),A.info(`Platform: ${E.default.cyan(e.name)}`+E.default.dim(` (${t.confidence} confidence \u2014 ${t.reason})`));let r=0,n=Lu();n.start("Running diagnostics");let o,s;try{o=so(),s=Yi(o)}catch{return n.stop("Diagnostics partial"),A.warn(E.default.yellow("Could not detect runtimes")+E.default.dim(" \u2014 module may be missing, restart session after upgrade")),Vi(E.default.yellow("Doctor could not fully run \u2014 try again after restarting")),1}n.stop("Diagnostics complete"),Mu(Ji(o),"Runtimes"),io()?A.success(E.default.green("Performance: FAST")+" \u2014 Bun detected for JS/TS execution"):A.warn(E.default.yellow("Performance: NORMAL")+" \u2014 Using Node.js (install Bun for 3-5x speed boost)");let i=11,a=(s.length/i*100).toFixed(0);s.length<2?(r++,A.error(E.default.red(`Language coverage: ${s.length}/${i} (${a}%)`)+" \u2014 too few runtimes detected"+E.default.dim(` \u2014 ${s.join(", ")||"none"}`))):A.info(`Language coverage: ${s.length}/${i} (${a}%)`+E.default.dim(` \u2014 ${s.join(", ")}`)),A.step("Testing server initialization...");try{let{PolyglotExecutor:h}=await Promise.resolve().then(()=>(Wh(),Uk)),y=await new h({runtimes:o}).execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(y.exitCode===0&&y.stdout.trim()==="ok")A.success(E.default.green("Server test: PASS"));else{r++;let _=y.stderr?.trim()?` (${y.stderr.trim().slice(0,200)})`:"";A.error(E.default.red("Server test: FAIL")+` \u2014 exit ${y.exitCode}${_}`)}}catch(h){let g=h instanceof Error?h.message:String(h);g.includes("Cannot find module")||g.includes("MODULE_NOT_FOUND")?A.warn(E.default.yellow("Server test: SKIP")+E.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,A.error(E.default.red("Server test: FAIL")+` \u2014 ${g}`))}A.step(`Checking ${e.name} hooks configuration...`);let c=ms(),u=e.validateHooks(c);for(let h of u)h.status==="pass"?A.success(E.default.green(`${h.check}: PASS`)+` \u2014 ${h.message}`):A.error(E.default.red(`${h.check}: FAIL`)+` \u2014 ${h.message}`+(h.fix?E.default.dim(`
781
- Run: ${h.fix}`):""));A.step("Checking hook script...");let l=Te(c,"hooks","pretooluse.mjs");try{Kw(l,Jw.R_OK),A.success(E.default.green("Hook script exists: PASS")+E.default.dim(` \u2014 ${l}`))}catch{A.error(E.default.red("Hook script exists: FAIL")+E.default.dim(` \u2014 not found at ${l}`))}A.step(`Checking ${e.name} plugin registration...`);let d=e.checkPluginRegistration();d.status==="pass"?A.success(E.default.green("Plugin enabled: PASS")+E.default.dim(` \u2014 ${d.message}`)):A.warn(E.default.yellow("Plugin enabled: WARN")+` \u2014 ${d.message}`),A.step("Checking FTS5 / SQLite...");try{let h=(await Promise.resolve().then(()=>(ns(),Bk))).loadDatabase(),g=new h(":memory:");g.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),g.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let y=g.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();g.close(),y&&y.content==="hello world"?A.success(E.default.green("FTS5 / SQLite: PASS")+" \u2014 native module works"):(r++,A.error(E.default.red("FTS5 / SQLite: FAIL")+" \u2014 query returned unexpected result"))}catch(h){let g=h instanceof Error?h.message:String(h);g.includes("Cannot find module")||g.includes("MODULE_NOT_FOUND")?A.warn(E.default.yellow("FTS5 / better-sqlite3: SKIP")+E.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,(/Could not locate the bindings file/i.test(g)||/bindings\.node/i.test(g)||/\bbindings\b/i.test(g))&&process.platform==="win32"?A.error(E.default.red("FTS5 / better-sqlite3: FAIL")+` \u2014 ${g}`+E.default.dim(`
779
+ `)),z(),l()};return{start:ce,stop:(Pe="")=>De(Pe,0),message:(Pe="")=>{m=Le(Pe??m)},cancel:(Pe="")=>De(Pe,1),error:(Pe="")=>De(Pe,2),clear:()=>De("",0,!0),get isCancelled(){return f}}},jL={light:fe("\u2500","-"),heavy:fe("\u2501","="),block:fe("\u2588","#")};var DL=`${Re("gray",Ur)} `;var w=fs(Jg(),1);Yi();ca();import{execFileSync as ls,execFile as RM}from"node:child_process";import{readFileSync as Li,writeFileSync as CM,cpSync as Kw,accessSync as Jw,existsSync as wt,rmSync as ds,closeSync as OM,openSync as IM,chmodSync as AM,constants as Yw}from"node:fs";import{request as NM}from"node:https";import{resolve as ve,dirname as Pg,join as dt}from"node:path";import{tmpdir as zM,devNull as jM,homedir as ps}from"node:os";import{fileURLToPath as DM,pathToFileURL as Rg}from"node:url";var MM={"claude-code":{pretooluse:"hooks/pretooluse.mjs",posttooluse:"hooks/posttooluse.mjs",precompact:"hooks/precompact.mjs",sessionstart:"hooks/sessionstart.mjs",userpromptsubmit:"hooks/userpromptsubmit.mjs"},"gemini-cli":{beforetool:"hooks/gemini-cli/beforetool.mjs",aftertool:"hooks/gemini-cli/aftertool.mjs",precompress:"hooks/gemini-cli/precompress.mjs",sessionstart:"hooks/gemini-cli/sessionstart.mjs"},"vscode-copilot":{pretooluse:"hooks/vscode-copilot/pretooluse.mjs",posttooluse:"hooks/vscode-copilot/posttooluse.mjs",precompact:"hooks/vscode-copilot/precompact.mjs",sessionstart:"hooks/vscode-copilot/sessionstart.mjs"},cursor:{pretooluse:"hooks/cursor/pretooluse.mjs",posttooluse:"hooks/cursor/posttooluse.mjs",sessionstart:"hooks/cursor/sessionstart.mjs",stop:"hooks/cursor/stop.mjs",afteragentresponse:"hooks/cursor/afteragentresponse.mjs"},codex:{pretooluse:"hooks/codex/pretooluse.mjs",posttooluse:"hooks/codex/posttooluse.mjs",sessionstart:"hooks/codex/sessionstart.mjs",userpromptsubmit:"hooks/codex/userpromptsubmit.mjs",stop:"hooks/codex/stop.mjs"},kiro:{pretooluse:"hooks/kiro/pretooluse.mjs",posttooluse:"hooks/kiro/posttooluse.mjs"},"jetbrains-copilot":{pretooluse:"hooks/jetbrains-copilot/pretooluse.mjs",posttooluse:"hooks/jetbrains-copilot/posttooluse.mjs",precompact:"hooks/jetbrains-copilot/precompact.mjs",sessionstart:"hooks/jetbrains-copilot/sessionstart.mjs"},"qwen-code":{pretooluse:"hooks/pretooluse.mjs",posttooluse:"hooks/posttooluse.mjs",precompact:"hooks/precompact.mjs",sessionstart:"hooks/sessionstart.mjs",userpromptsubmit:"hooks/userpromptsubmit.mjs"}};async function LM(t,e){try{OM(2),IM(jM,"w")}catch{process.stderr.write=(()=>!0)}let r=MM[t]?.[e];r||process.exit(1);let n=ms();await import(Rg(dt(n,r)).href)}var Lr=process.argv.slice(2);Lr[0]==="doctor"?BM().then(t=>process.exit(t)):Lr[0]==="upgrade"?WM():Lr[0]==="hook"?LM(Lr[1],Lr[2]):Lr[0]==="insight"?VM(Lr[1]?Number(Lr[1]):4747):Lr[0]==="statusline"?GM():Promise.resolve().then(()=>(Gw(),Ww));function yV(t){return t.replace(/\\/g,"/")}var $u=process.platform==="win32";function wu(t,e={}){ls($u?"npm.cmd":"npm",t,{...e,...$u?{shell:!0}:{}})}function FM(t,e={}){let{execSync:r}=Cg("node:child_process");r($u?t.replace(/^npm /,"npm.cmd "):t,{...e,...$u?{shell:!0}:{}})}function UM(t,e=process.platform,r=RM){let n={stdio:"ignore"},o=()=>console.error(`
780
+ Could not auto-open browser. Open manually: ${t}`);try{if(e==="darwin")r("open",[t],n);else if(e==="win32")r("cmd",["/c","start","",t],n);else try{r("xdg-open",[t],n)}catch{try{r("sensible-browser",[t],n)}catch{o()}}}catch{o()}}function ZM(){let t=DM(import.meta.url),e=Pg(t);return e.endsWith("/build")||e.endsWith("\\build")||e.endsWith("/src")||e.endsWith("\\src")?ve(e,".."):e}function HM(t){let e=["packages","context-mode@latest","node_modules","context-mode"];if(process.platform==="win32"){let r=process.env.LOCALAPPDATA;return r?ve(r,t,...e):ve(ps(),"AppData","Local",t,...e)}return ve(ps(),".cache",t,...e)}function ms(){let t=wr().platform;return t==="opencode"||t==="kilo"?HM(t):ZM()}function Xw(){try{return JSON.parse(Li(ve(ms(),"package.json"),"utf-8")).version??"unknown"}catch{return"unknown"}}async function qM(){return new Promise(t=>{let e=NM("https://registry.npmjs.org/context-mode/latest",{headers:{Connection:"close"}},r=>{let n="";r.on("data",o=>{n+=o}),r.on("end",()=>{try{let o=JSON.parse(n);t(o.version??"unknown")}catch{t("unknown")}})});e.on("error",()=>t("unknown")),e.setTimeout(5e3,()=>{e.destroy(),t("unknown")}),e.end()})}async function BM(){process.stdout.isTTY&&console.clear();let t=wr(),e=await bs(t.platform);Du(w.default.bgMagenta(w.default.white(" context-mode doctor "))),I.info(`Platform: ${w.default.cyan(e.name)}`+w.default.dim(` (${t.confidence} confidence \u2014 ${t.reason})`));let r=0,n=Lu();n.start("Running diagnostics");let o,s;try{o=so(),s=Ji(o)}catch{return n.stop("Diagnostics partial"),I.warn(w.default.yellow("Could not detect runtimes")+w.default.dim(" \u2014 module may be missing, restart session after upgrade")),Bi(w.default.yellow("Doctor could not fully run \u2014 try again after restarting")),1}n.stop("Diagnostics complete"),Mu(Ki(o),"Runtimes"),io()?I.success(w.default.green("Performance: FAST")+" \u2014 Bun detected for JS/TS execution"):I.warn(w.default.yellow("Performance: NORMAL")+" \u2014 Using Node.js (install Bun for 3-5x speed boost)");let i=11,a=(s.length/i*100).toFixed(0);s.length<2?(r++,I.error(w.default.red(`Language coverage: ${s.length}/${i} (${a}%)`)+" \u2014 too few runtimes detected"+w.default.dim(` \u2014 ${s.join(", ")||"none"}`))):I.info(`Language coverage: ${s.length}/${i} (${a}%)`+w.default.dim(` \u2014 ${s.join(", ")}`)),I.step("Testing server initialization...");try{let{PolyglotExecutor:h}=await Promise.resolve().then(()=>(Wh(),Zk)),y=await new h({runtimes:o}).execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(y.exitCode===0&&y.stdout.trim()==="ok")I.success(w.default.green("Server test: PASS"));else{r++;let _=y.stderr?.trim()?` (${y.stderr.trim().slice(0,200)})`:"";I.error(w.default.red("Server test: FAIL")+` \u2014 exit ${y.exitCode}${_}`)}}catch(h){let g=h instanceof Error?h.message:String(h);g.includes("Cannot find module")||g.includes("MODULE_NOT_FOUND")?I.warn(w.default.yellow("Server test: SKIP")+w.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,I.error(w.default.red("Server test: FAIL")+` \u2014 ${g}`))}I.step(`Checking ${e.name} hooks configuration...`);let c=ms(),u=e.validateHooks(c);for(let h of u)h.status==="pass"?I.success(w.default.green(`${h.check}: PASS`)+` \u2014 ${h.message}`):I.error(w.default.red(`${h.check}: FAIL`)+` \u2014 ${h.message}`+(h.fix?w.default.dim(`
781
+ Run: ${h.fix}`):""));I.step("Checking hook script...");let l=ve(c,"hooks","pretooluse.mjs");try{Jw(l,Yw.R_OK),I.success(w.default.green("Hook script exists: PASS")+w.default.dim(` \u2014 ${l}`))}catch{I.error(w.default.red("Hook script exists: FAIL")+w.default.dim(` \u2014 not found at ${l}`))}I.step(`Checking ${e.name} plugin registration...`);let d=e.checkPluginRegistration();d.status==="pass"?I.success(w.default.green("Plugin enabled: PASS")+w.default.dim(` \u2014 ${d.message}`)):I.warn(w.default.yellow("Plugin enabled: WARN")+` \u2014 ${d.message}`),I.step("Checking FTS5 / SQLite...");try{let h=(await Promise.resolve().then(()=>(ns(),Vk))).loadDatabase(),g=new h(":memory:");g.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),g.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let y=g.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();g.close(),y&&y.content==="hello world"?I.success(w.default.green("FTS5 / SQLite: PASS")+" \u2014 native module works"):(r++,I.error(w.default.red("FTS5 / SQLite: FAIL")+" \u2014 query returned unexpected result"))}catch(h){let g=h instanceof Error?h.message:String(h);g.includes("Cannot find module")||g.includes("MODULE_NOT_FOUND")?I.warn(w.default.yellow("FTS5 / better-sqlite3: SKIP")+w.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,(/Could not locate the bindings file/i.test(g)||/bindings\.node/i.test(g)||/\bbindings\b/i.test(g))&&process.platform==="win32"?I.error(w.default.red("FTS5 / better-sqlite3: FAIL")+` \u2014 ${g}`+w.default.dim(`
782
782
  Root cause: prebuild-install was likely not on PATH, so install fell through to node-gyp without an MSVC toolchain (Windows).
783
783
  Try (primary): npm install better-sqlite3 # re-resolves the dep tree and re-links the prebuild-install bin shim to fetch a prebuilt binary
784
- Try (fallback): npm rebuild better-sqlite3`)):A.error(E.default.red("FTS5 / better-sqlite3: FAIL")+` \u2014 ${g}`+E.default.dim(`
785
- Try: npm rebuild better-sqlite3`)))}A.step("Checking versions...");let p=Xw(),f=await qM(),m=e.getInstalledVersion();return f==="unknown"?A.warn(E.default.yellow("npm (MCP): WARN")+` \u2014 local v${p}, could not reach npm registry`):p===f?A.success(E.default.green("npm (MCP): PASS")+` \u2014 v${p}`):A.warn(E.default.yellow("npm (MCP): WARN")+` \u2014 local v${p}, latest v${f}`+E.default.dim(`
786
- Run: /context-mode:ctx-upgrade`)),m==="not installed"?A.info(E.default.dim(`${e.name}: not installed`)+" \u2014 using standalone MCP mode"):f!=="unknown"&&m===f?A.success(E.default.green(`${e.name}: PASS`)+` \u2014 v${m}`):f!=="unknown"?A.warn(E.default.yellow(`${e.name}: WARN`)+` \u2014 v${m}, latest v${f}`+E.default.dim(`
787
- Run: /context-mode:ctx-upgrade`)):A.info(`${e.name}: v${m}`+E.default.dim(" \u2014 could not verify against npm registry")),r>0?(Vi(E.default.red(`Diagnostics failed \u2014 ${r} critical issue(s) found`)),1):(Vi(s.length>=4?E.default.green("Diagnostics complete!"):E.default.yellow("Some checks need attention \u2014 see above for details")),0)}async function VM(t){try{let{execSync:e,spawn:r}=await import("node:child_process"),{statSync:n,mkdirSync:o,cpSync:s}=await import("node:fs"),i=Te(ms(),"insight"),a=wr(),u=(await bs(a.platform)).getSessionDir(),l=dt(Pg(u),"content"),d=dt(Pg(u),"insight-cache");qt(dt(i,"server.mjs"))||(console.error("Error: Insight source not found. Try upgrading context-mode."),process.exit(1)),o(d,{recursive:!0});let p=n(dt(i,"server.mjs")).mtimeMs,f=qt(dt(d,"server.mjs"))?n(dt(d,"server.mjs")).mtimeMs:0;if(p>f&&(console.log("Copying Insight source..."),s(i,d,{recursive:!0,force:!0})),!qt(dt(d,"node_modules"))){console.log("Installing dependencies (first run)...");try{FM("npm install --production=false",{cwd:d,stdio:"inherit",timeout:3e5})}catch{try{ds(dt(d,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!qt(dt(d,"node_modules","vite"))||!qt(dt(d,"node_modules","better-sqlite3")))throw ds(dt(d,"node_modules"),{recursive:!0,force:!0}),new Error("npm install incomplete \u2014 please retry")}console.log("Building dashboard..."),e("npx vite build",{cwd:d,stdio:"pipe",timeout:6e4});let m=`http://localhost:${t}`;console.log(`
784
+ Try (fallback): npm rebuild better-sqlite3`)):I.error(w.default.red("FTS5 / better-sqlite3: FAIL")+` \u2014 ${g}`+w.default.dim(`
785
+ Try: npm rebuild better-sqlite3`)))}I.step("Checking versions...");let p=Xw(),f=await qM(),m=e.getInstalledVersion();return f==="unknown"?I.warn(w.default.yellow("npm (MCP): WARN")+` \u2014 local v${p}, could not reach npm registry`):p===f?I.success(w.default.green("npm (MCP): PASS")+` \u2014 v${p}`):I.warn(w.default.yellow("npm (MCP): WARN")+` \u2014 local v${p}, latest v${f}`+w.default.dim(`
786
+ Run: /context-mode:ctx-upgrade`)),m==="not installed"?I.info(w.default.dim(`${e.name}: not installed`)+" \u2014 using standalone MCP mode"):f!=="unknown"&&m===f?I.success(w.default.green(`${e.name}: PASS`)+` \u2014 v${m}`):f!=="unknown"?I.warn(w.default.yellow(`${e.name}: WARN`)+` \u2014 v${m}, latest v${f}`+w.default.dim(`
787
+ Run: /context-mode:ctx-upgrade`)):I.info(`${e.name}: v${m}`+w.default.dim(" \u2014 could not verify against npm registry")),r>0?(Bi(w.default.red(`Diagnostics failed \u2014 ${r} critical issue(s) found`)),1):(Bi(s.length>=4?w.default.green("Diagnostics complete!"):w.default.yellow("Some checks need attention \u2014 see above for details")),0)}async function VM(t){try{let{execSync:e,spawn:r}=await import("node:child_process"),{statSync:n,mkdirSync:o,cpSync:s}=await import("node:fs"),i=ve(ms(),"insight"),a=wr(),u=(await bs(a.platform)).getSessionDir(),l=dt(Pg(u),"content"),d=dt(Pg(u),"insight-cache");wt(dt(i,"server.mjs"))||(console.error("Error: Insight source not found. Try upgrading context-mode."),process.exit(1)),o(d,{recursive:!0});let p=n(dt(i,"server.mjs")).mtimeMs,f=wt(dt(d,"server.mjs"))?n(dt(d,"server.mjs")).mtimeMs:0;if(p>f&&(console.log("Copying Insight source..."),s(i,d,{recursive:!0,force:!0})),!wt(dt(d,"node_modules"))){console.log("Installing dependencies (first run)...");try{FM("npm install --production=false",{cwd:d,stdio:"inherit",timeout:3e5})}catch{try{ds(dt(d,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!wt(dt(d,"node_modules","vite"))||!wt(dt(d,"node_modules","better-sqlite3")))throw ds(dt(d,"node_modules"),{recursive:!0,force:!0}),new Error("npm install incomplete \u2014 please retry")}console.log("Building dashboard..."),e("npx vite build",{cwd:d,stdio:"pipe",timeout:6e4});let m=`http://localhost:${t}`;console.log(`
788
788
  context-mode Insight
789
789
  ${m}
790
790
  `);let h=r("node",[dt(d,"server.mjs")],{cwd:d,env:{...process.env,PORT:String(t),INSIGHT_SESSION_DIR:u,INSIGHT_CONTENT_DIR:l},stdio:"inherit"});h.on("error",()=>{}),await new Promise(g=>setTimeout(g,1500));try{let{request:g}=await import("node:http");await new Promise((y,_)=>{let x=g(`http://127.0.0.1:${t}/api/overview`,{timeout:3e3},k=>{y(),k.resume()});x.on("error",_),x.on("timeout",()=>{x.destroy(),_(new Error("timeout"))}),x.end()})}catch{console.error(`
791
791
  Error: Port ${t} appears to be in use. Either a previous dashboard is still running, or another service is using this port.`),console.error(`
792
792
  To fix:`),console.error(` Kill the existing process: ${process.platform==="win32"?`netstat -ano | findstr :${t}`:`lsof -ti:${t} | xargs kill`}`),console.error(` Or use a different port: context-mode insight ${t+1}`),h.kill(),process.exit(1)}UM(m),process.on("SIGINT",()=>{h.kill(),process.exit(0)}),process.on("SIGTERM",()=>{h.kill(),process.exit(0)})}catch(e){let r=e instanceof Error?e.message:String(e);console.error(`
793
- Insight error: ${r}`),process.exit(1)}}async function WM(){process.stdout.isTTY&&console.clear();let t=wr(),e=await bs(t.platform);Du(E.default.bgCyan(E.default.black(" context-mode upgrade "))),A.info(`Platform: ${E.default.cyan(e.name)}`+E.default.dim(` (${t.confidence} confidence)`));let r=ms(),n=[],o=Lu(),s=Te(ps(),".claude","plugins","marketplaces","context-mode");if(qt(dt(s,".git"))){o.start("Syncing marketplace clone");try{ls("git",["-C",s,"status","--porcelain"],{stdio:"pipe",encoding:"utf-8",timeout:5e3}).trim()?(o.stop(E.default.yellow("Marketplace clone has local edits \u2014 skipping git pull")),A.info(E.default.dim(` Run manually: git -C "${s}" stash && git pull --ff-only`))):(ls("git",["-C",s,"fetch","--tags","origin"],{stdio:"pipe",timeout:3e4}),ls("git",["-C",s,"reset","--hard","origin/HEAD"],{stdio:"pipe",timeout:1e4}),o.stop(E.default.green("Marketplace clone synced")),n.push("Marketplace clone updated to upstream"))}catch(p){let f=p instanceof Error?p.message:String(p);o.stop(E.default.yellow("Marketplace sync skipped")),A.warn(E.default.yellow("git refresh on marketplace failed")+` \u2014 ${f}`),A.info(E.default.dim(" Continuing \u2014 cache dir update will still happen."))}}A.step("Pulling latest from GitHub...");let i=Xw(),a=dt(zM(),`context-mode-upgrade-${Date.now()}`);o.start("Cloning mksglu/context-mode");try{ls("git",["clone","--depth","1","https://github.com/mksglu/context-mode.git",a],{stdio:"pipe",timeout:3e4}),o.stop("Downloaded");let p=a,m=JSON.parse(Fi(Te(p,"package.json"),"utf-8")).version??"unknown";if(m===i){A.success(E.default.green("Already on latest")+` \u2014 v${i}`),ds(a,{recursive:!0,force:!0});return}else A.info(`Update available: ${E.default.yellow("v"+i)} \u2192 ${E.default.green("v"+m)}`);o.start("Installing dependencies & building"),Li(["install","--no-audit","--no-fund"],{cwd:p,stdio:"pipe",timeout:12e4}),Li(["run","build"],{cwd:p,stdio:"pipe",timeout:6e4}),o.stop("Built successfully"),o.start("Updating files in-place");let g=[...JSON.parse(Fi(Te(p,"package.json"),"utf-8")).files||[],"src","package.json"];for(let _ of g)try{ds(Te(r,_),{recursive:!0,force:!0}),Gw(Te(p,_),Te(r,_),{recursive:!0})}catch{}let y={mcpServers:{"context-mode":{command:"node",args:["${CLAUDE_PLUGIN_ROOT}/start.mjs"]}}};if(CM(Te(r,".mcp.json"),JSON.stringify(y,null,2)+`
794
- `),o.stop(E.default.green(`Updated in-place to v${m}`)),e.updatePluginRegistry(r,m),A.info(E.default.dim(" Registry synced to "+r)),o.start("Installing production dependencies"),Li(["install","--production","--no-audit","--no-fund"],{cwd:r,stdio:"pipe",timeout:6e4}),o.stop("Dependencies ready"),t.platform!=="opencode"&&t.platform!=="kilo"){o.start("Rebuilding native addons");try{Li(["rebuild","better-sqlite3"],{cwd:r,stdio:"pipe",timeout:6e4}),o.stop(E.default.green("Native addons rebuilt")),n.push("Rebuilt better-sqlite3 for current Node.js")}catch(_){let x=_ instanceof Error?_.message:String(_);o.stop(E.default.yellow("Native addon rebuild warning")),A.warn(E.default.yellow("better-sqlite3 rebuild issue")+` \u2014 ${x}`+E.default.dim(`
795
- Try manually: cd "${r}" && npm rebuild better-sqlite3`))}}o.start("Updating npm global package");try{Li(["install","-g",r,"--no-audit","--no-fund"],{stdio:"pipe",timeout:3e4}),o.stop(E.default.green("npm global updated")),n.push("Updated npm global package")}catch{o.stop(E.default.yellow("npm global update skipped")),A.info(E.default.dim(" Could not update global npm \u2014 may need sudo or standalone install"))}ds(a,{recursive:!0,force:!0});try{let _=Te(ps(),".claude","plugins","installed_plugins.json");if(qt(_)){let k=JSON.parse(Fi(_,"utf-8"))?.plugins?.["context-mode@context-mode"];if(Array.isArray(k))for(let T of k){let H=T.installPath;if(H&&H!==r&&qt(H)){let z=Te(p,"skills");qt(z)&&(Gw(z,Te(H,"skills"),{recursive:!0}),n.push("Synced skills to active install path"))}}}}catch{}n.push(m!==i?`Updated v${i} \u2192 v${m}`:`Reinstalled v${i} from GitHub`),A.success(E.default.green("Plugin reinstalled from GitHub!")+E.default.dim(` \u2014 v${m}`))}catch(p){let f=p instanceof Error?p.message:String(p);o.stop(E.default.red("Update failed")),A.error(E.default.red("GitHub pull failed")+` \u2014 ${f}`),A.info(E.default.dim("Continuing with hooks/settings fix..."));try{ds(a,{recursive:!0,force:!0})}catch{}}A.step(`Backing up ${e.name} settings...`);let c=e.backupSettings();c?.endsWith(".bak")?(A.success(E.default.green("Backup created")+E.default.dim(" -> "+c)),n.push("Backed up settings")):c?A.success(E.default.green("Backup skipped")+E.default.dim(" \u2014 no changes needed")):A.warn(E.default.yellow("No existing settings to backup")+" \u2014 a new one will be created"),A.step(`Configuring ${e.name} hooks...`);let u=e.configureAllHooks(r);for(let p of u)A.info(E.default.dim(` ${p}`)),n.push(p);A.success(E.default.green("Hooks configured")+E.default.dim(` \u2014 ${e.name}`)),A.step("Setting hook script permissions...");let l=e.setHookPermissions(r);if(process.platform!=="win32")for(let p of["build/cli.js","cli.bundle.mjs"]){let f=Te(r,p);try{Kw(f,Jw.F_OK),AM(f,493),l.push(f)}catch{}}l.length>0?(A.success(E.default.green("Permissions set")+E.default.dim(` \u2014 ${l.length} hook script(s)`)),n.push(`Set ${l.length} hook scripts as executable`)):A.error(E.default.red("No hook scripts found")+E.default.dim(" \u2014 expected in "+Te(r,"hooks"))),n.length>0?Mu(n.map(p=>E.default.green(" + ")+p).join(`
796
- `),"Changes Applied"):A.info(E.default.dim("No changes were needed."));let d=e.name==="Claude Code"?"/reload-plugins, new terminal, or restart session":"new terminal or restart session";A.warn(E.default.yellow("Restart for new MCP tools to take effect.")+E.default.dim(` (${d})`)),A.step("Running doctor to verify..."),console.log();try{let p=Te(r,"cli.bundle.mjs"),f=Te(r,"build","cli.js"),m=qt(p)?p:f;ls("node",[m,"doctor"],{stdio:"inherit",timeout:3e4,cwd:r})}catch{A.warn(E.default.yellow("Doctor had warnings")+E.default.dim(` \u2014 restart your ${e.name} session to pick up the new version`))}}function GM(){let t=[Te(ms(),"bin","statusline.mjs"),Te(ps(),".claude","plugins","marketplaces","context-mode","bin","statusline.mjs")];try{let r=Te(ps(),".claude","plugins","installed_plugins.json");if(qt(r)){let o=JSON.parse(Fi(r,"utf-8"))?.plugins?.["context-mode@context-mode"];if(Array.isArray(o))for(let s of o){let i=s?.installPath;typeof i=="string"&&i&&t.push(Te(i,"bin","statusline.mjs"))}}}catch{}let e=t.find(r=>qt(r));e||process.exit(0),import(Yw(e).href).catch(()=>{process.exit(0)})}export{FM as npmExec,Li as npmExecFile,UM as openInBrowser,yV as toUnixPath};
793
+ Insight error: ${r}`),process.exit(1)}}async function WM(){process.stdout.isTTY&&console.clear();let t=wr(),e=await bs(t.platform);Du(w.default.bgCyan(w.default.black(" context-mode upgrade "))),I.info(`Platform: ${w.default.cyan(e.name)}`+w.default.dim(` (${t.confidence} confidence)`));let r=ms(),n=[],o=Lu(),s=ve(ps(),".claude","plugins","marketplaces","context-mode");if(wt(dt(s,".git"))){o.start("Syncing marketplace clone");try{ls("git",["-C",s,"status","--porcelain"],{stdio:"pipe",encoding:"utf-8",timeout:5e3}).trim()?(o.stop(w.default.yellow("Marketplace clone has local edits \u2014 skipping git pull")),I.info(w.default.dim(` Run manually: git -C "${s}" stash && git pull --ff-only`))):(ls("git",["-C",s,"fetch","--tags","origin"],{stdio:"pipe",timeout:3e4}),ls("git",["-C",s,"reset","--hard","origin/HEAD"],{stdio:"pipe",timeout:1e4}),o.stop(w.default.green("Marketplace clone synced")),n.push("Marketplace clone updated to upstream"))}catch(p){let f=p instanceof Error?p.message:String(p);o.stop(w.default.yellow("Marketplace sync skipped")),I.warn(w.default.yellow("git refresh on marketplace failed")+` \u2014 ${f}`),I.info(w.default.dim(" Continuing \u2014 cache dir update will still happen."))}}I.step("Pulling latest from GitHub...");let i=Xw(),a=dt(zM(),`context-mode-upgrade-${Date.now()}`);o.start("Cloning mksglu/context-mode");try{ls("git",["clone","--depth","1","https://github.com/mksglu/context-mode.git",a],{stdio:"pipe",timeout:3e4}),o.stop("Downloaded");let p=a,m=JSON.parse(Li(ve(p,"package.json"),"utf-8")).version??"unknown";if(m===i){I.success(w.default.green("Already on latest")+` \u2014 v${i}`),ds(a,{recursive:!0,force:!0});return}else I.info(`Update available: ${w.default.yellow("v"+i)} \u2192 ${w.default.green("v"+m)}`);o.start("Installing dependencies & building"),wu(["install","--no-audit","--no-fund"],{cwd:p,stdio:"pipe",timeout:12e4}),wu(["run","build"],{cwd:p,stdio:"pipe",timeout:6e4}),o.stop("Built successfully"),o.start("Updating files in-place");let g=[...JSON.parse(Li(ve(p,"package.json"),"utf-8")).files||[],"src","package.json"];for(let _ of g)try{ds(ve(r,_),{recursive:!0,force:!0}),Kw(ve(p,_),ve(r,_),{recursive:!0})}catch{}let y={mcpServers:{"context-mode":{command:"node",args:["${CLAUDE_PLUGIN_ROOT}/start.mjs"]}}};if(CM(ve(r,".mcp.json"),JSON.stringify(y,null,2)+`
794
+ `),o.stop(w.default.green(`Updated in-place to v${m}`)),e.updatePluginRegistry(r,m),I.info(w.default.dim(" Registry synced to "+r)),o.start("Installing production dependencies"),wu(["install","--production","--no-audit","--no-fund"],{cwd:r,stdio:"pipe",timeout:6e4}),o.stop("Dependencies ready"),t.platform!=="opencode"&&t.platform!=="kilo"){o.start("Rebuilding native addons");let _=ve(r,"node_modules","better-sqlite3","build","Release","better_sqlite3.node");if(wt(_))o.stop(w.default.green("Native addons OK")+w.default.dim(" \u2014 binding present")),n.push("better-sqlite3 binding already present (no rebuild needed)");else try{let x=Rg(ve(r,"scripts","heal-better-sqlite3.mjs")).href,{healBetterSqlite3Binding:k}=await import(x),E=k(r);E?.healed?(o.stop(w.default.green("Native addons healed")+w.default.dim(` (${E.reason})`)),n.push(`Healed better-sqlite3 binding via ${E.reason}`)):(o.stop(w.default.yellow("Native addon heal needs manual step")),I.warn(w.default.dim(` Run: cd "${r}" && npm install better-sqlite3`)))}catch(x){let k=x instanceof Error?x.message:String(x);o.stop(w.default.yellow("Native addon heal unavailable")),I.warn(w.default.yellow("better-sqlite3 heal helper missing")+` \u2014 ${k}`+w.default.dim(`
795
+ Try manually: cd "${r}" && npm rebuild better-sqlite3`))}}o.start("Updating npm global package");try{wu(["install","-g",r,"--no-audit","--no-fund"],{stdio:"pipe",timeout:3e4}),o.stop(w.default.green("npm global updated")),n.push("Updated npm global package")}catch{o.stop(w.default.yellow("npm global update skipped")),I.info(w.default.dim(" Could not update global npm \u2014 may need sudo or standalone install"))}ds(a,{recursive:!0,force:!0});try{let _=ve(ps(),".claude","plugins","installed_plugins.json");if(wt(_)){let k=JSON.parse(Li(_,"utf-8"))?.plugins?.["context-mode@context-mode"];if(Array.isArray(k))for(let E of k){let H=E.installPath;if(H&&H!==r&&wt(H)){let z=ve(p,"skills");wt(z)&&(Kw(z,ve(H,"skills"),{recursive:!0}),n.push("Synced skills to active install path"))}}}}catch{}n.push(m!==i?`Updated v${i} \u2192 v${m}`:`Reinstalled v${i} from GitHub`),I.success(w.default.green("Plugin reinstalled from GitHub!")+w.default.dim(` \u2014 v${m}`))}catch(p){let f=p instanceof Error?p.message:String(p);o.stop(w.default.red("Update failed")),I.error(w.default.red("GitHub pull failed")+` \u2014 ${f}`),I.info(w.default.dim("Continuing with hooks/settings fix..."));try{ds(a,{recursive:!0,force:!0})}catch{}}I.step(`Backing up ${e.name} settings...`);let c=e.backupSettings();c?.endsWith(".bak")?(I.success(w.default.green("Backup created")+w.default.dim(" -> "+c)),n.push("Backed up settings")):c?I.success(w.default.green("Backup skipped")+w.default.dim(" \u2014 no changes needed")):I.warn(w.default.yellow("No existing settings to backup")+" \u2014 a new one will be created"),I.step(`Configuring ${e.name} hooks...`);let u=e.configureAllHooks(r);for(let p of u)I.info(w.default.dim(` ${p}`)),n.push(p);I.success(w.default.green("Hooks configured")+w.default.dim(` \u2014 ${e.name}`)),I.step("Setting hook script permissions...");let l=e.setHookPermissions(r);if(process.platform!=="win32")for(let p of["build/cli.js","cli.bundle.mjs"]){let f=ve(r,p);try{Jw(f,Yw.F_OK),AM(f,493),l.push(f)}catch{}}l.length>0?(I.success(w.default.green("Permissions set")+w.default.dim(` \u2014 ${l.length} hook script(s)`)),n.push(`Set ${l.length} hook scripts as executable`)):I.error(w.default.red("No hook scripts found")+w.default.dim(" \u2014 expected in "+ve(r,"hooks"))),n.length>0?Mu(n.map(p=>w.default.green(" + ")+p).join(`
796
+ `),"Changes Applied"):I.info(w.default.dim("No changes were needed."));let d=e.name==="Claude Code"?"/reload-plugins, new terminal, or restart session":"new terminal or restart session";I.warn(w.default.yellow("Restart for new MCP tools to take effect.")+w.default.dim(` (${d})`)),I.step("Running doctor to verify..."),console.log();try{let p=ve(r,"cli.bundle.mjs"),f=ve(r,"build","cli.js"),m=wt(p)?p:f;ls("node",[m,"doctor"],{stdio:"inherit",timeout:3e4,cwd:r})}catch{I.warn(w.default.yellow("Doctor had warnings")+w.default.dim(` \u2014 restart your ${e.name} session to pick up the new version`))}}function GM(){let t=[ve(ms(),"bin","statusline.mjs"),ve(ps(),".claude","plugins","marketplaces","context-mode","bin","statusline.mjs")];try{let r=ve(ps(),".claude","plugins","installed_plugins.json");if(wt(r)){let o=JSON.parse(Li(r,"utf-8"))?.plugins?.["context-mode@context-mode"];if(Array.isArray(o))for(let s of o){let i=s?.installPath;typeof i=="string"&&i&&t.push(ve(i,"bin","statusline.mjs"))}}}catch{}let e=t.find(r=>wt(r));e||process.exit(0),import(Rg(e).href).catch(()=>{process.exit(0)})}export{FM as npmExec,wu as npmExecFile,UM as openInBrowser,yV as toUnixPath};