context-mode 1.0.107 → 1.0.109

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/.openclaw-plugin/openclaw.plugin.json +1 -1
  4. package/.openclaw-plugin/package.json +1 -1
  5. package/README.md +22 -18
  6. package/build/adapters/claude-code/index.js +26 -9
  7. package/build/adapters/opencode/index.js +5 -5
  8. package/build/cli.js +92 -12
  9. package/build/server.js +45 -3
  10. package/build/session/analytics.d.ts +7 -0
  11. package/build/session/analytics.js +75 -15
  12. package/build/session/db.d.ts +3 -1
  13. package/build/session/persist-tool-calls.d.ts +54 -0
  14. package/build/session/persist-tool-calls.js +105 -0
  15. package/build/session/project-attribution.d.ts +1 -1
  16. package/cli.bundle.mjs +123 -122
  17. package/hooks/ensure-deps.mjs +28 -12
  18. package/hooks/posttooluse.mjs +90 -80
  19. package/hooks/precompact.mjs +56 -46
  20. package/hooks/pretooluse.mjs +161 -167
  21. package/hooks/routing-block.mjs +2 -2
  22. package/hooks/run-hook.mjs +82 -0
  23. package/hooks/session-db.bundle.mjs +2 -2
  24. package/hooks/sessionstart.mjs +187 -155
  25. package/hooks/userpromptsubmit.mjs +69 -58
  26. package/openclaw.plugin.json +1 -1
  27. package/package.json +2 -1
  28. package/scripts/heal-better-sqlite3.mjs +108 -0
  29. package/scripts/postinstall.mjs +27 -0
  30. package/server.bundle.mjs +88 -88
  31. package/skills/UPSTREAM-CREDITS.md +51 -0
  32. package/skills/context-mode-ops/SKILL.md +147 -0
  33. package/skills/diagnose/SKILL.md +122 -0
  34. package/skills/diagnose/scripts/hitl-loop.template.sh +41 -0
  35. package/skills/grill-me/SKILL.md +15 -0
  36. package/skills/grill-with-docs/ADR-FORMAT.md +47 -0
  37. package/skills/grill-with-docs/CONTEXT-FORMAT.md +77 -0
  38. package/skills/grill-with-docs/SKILL.md +93 -0
  39. package/skills/improve-codebase-architecture/DEEPENING.md +37 -0
  40. package/skills/improve-codebase-architecture/INTERFACE-DESIGN.md +44 -0
  41. package/skills/improve-codebase-architecture/LANGUAGE.md +53 -0
  42. package/skills/improve-codebase-architecture/SKILL.md +76 -0
  43. package/skills/tdd/SKILL.md +114 -0
  44. package/skills/tdd/deep-modules.md +33 -0
  45. package/skills/tdd/interface-design.md +31 -0
  46. package/skills/tdd/mocking.md +59 -0
  47. package/skills/tdd/refactoring.md +10 -0
  48. package/skills/tdd/tests.md +61 -0
package/cli.bundle.mjs CHANGED
@@ -1,24 +1,24 @@
1
1
  #!/usr/bin/env node
2
- var Jw=Object.create;var Su=Object.defineProperty;var Yw=Object.getOwnPropertyDescriptor;var Xw=Object.getOwnPropertyNames;var Qw=Object.getPrototypeOf,e$=Object.prototype.hasOwnProperty;var Pg=(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)Su(t,r,{get:e[r],enumerable:!0})},t$=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Xw(e))!e$.call(t,o)&&o!==r&&Su(t,o,{get:()=>e[o],enumerable:!(n=Yw(e,o))||n.enumerable});return t};var us=(t,e,r)=>(r=t!=null?Jw(Qw(t)):{},t$(e||!t||!t.__esModule?Su(r,"default",{value:t,enumerable:!0}):r,t));var Ru=C((XM,Ug)=>{"use strict";var Pu={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"},d$={up:(t=1)=>"\x1B[S".repeat(t),down:(t=1)=>"\x1B[T".repeat(t)},p$={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?Pu.up():"");return t&&(e+=Pu.left),e}};Ug.exports={cursor:Pu,scroll:d$,erase:p$,beep:"\x07"}});var Gg=C((AL,ju)=>{var Hi=process||{},Vg=Hi.argv||[],Zi=Hi.env||{},D$=!(Zi.NO_COLOR||Vg.includes("--no-color"))&&(!!Zi.FORCE_COLOR||Vg.includes("--color")||Hi.platform==="win32"||(Hi.stdout||{}).isTTY&&Zi.TERM!=="dumb"||!!Zi.CI),M$=(t,e,r=t)=>n=>{let o=""+n,s=o.indexOf(e,t.length);return~s?t+L$(o,e,r,s)+e:t+o+e},L$=(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)},Wg=(t=D$)=>{let e=t?M$:()=>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")}};ju.exports=Wg();ju.exports.createColors=Wg});import{execFileSync as F$,execSync as Kg}from"node:child_process";import{existsSync as qi}from"node:fs";function Z$(t){let e=t.split(/[\\/]/),r=e[e.length-1];return U$.test(r)}function Ve(t){try{let e=Du?`where ${t}`:`command -v ${t}`;return Kg(e,{stdio:"pipe"}),!0}catch{return!1}}function Jg(){if(Ve("bun"))return!0;for(let t of Yg())if(qi(t))return!0;return!1}function H$(){if(Ve("bun"))return"bun";for(let e of Yg())if(qi(e))return e;let t=process.env.HOME??process.env.USERPROFILE??"";return Du?`${t}\\.bun\\bin\\bun.exe`:`${t}/.bun/bin/bun`}function Yg(){let t=process.env.HOME??process.env.USERPROFILE??"";if(Du){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 q$(){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(qi(e))return e;try{let r=Kg("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 qt(t,e=["--version"]){try{return F$(t,e,{encoding:"utf-8",shell:process.platform==="win32",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function oo(){let e=Jg()?H$():null,r=process.env.SHELL,n=r&&qi(r)&&Z$(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?q$()??(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 so(){return Jg()}function Bi(t){let e=[],r=t.javascript?.endsWith("bun")??!1;return e.push(` JavaScript: ${t.javascript} (${qt(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${qt(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${qt(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${qt(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${qt(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${qt(t.go,["version"])})`),t.rust&&e.push(` Rust: ${t.rust} (${qt(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${qt(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${qt(t.perl)})`),t.r&&e.push(` R: ${t.r} (${qt(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${qt(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 Vi(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 Xg(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 U$,Du,Wi=v(()=>{"use strict";U$=/^(bash|sh|zsh|dash|pwsh|powershell|cmd)(\.exe)?$/i;Du=process.platform==="win32"});var Qg,e_=v(()=>{"use strict";Qg={"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 t_}from"node:crypto";import{join as ps}from"node:path";import{accessSync as B$,copyFileSync as V$,constants as W$,mkdirSync as G$}from"node:fs";import{homedir as r_}from"node:os";var De,Bt=v(()=>{"use strict";De=class{constructor(e){this.sessionDirSegments=e}getSessionDir(){let e=ps(r_(),...this.sessionDirSegments,"context-mode","sessions");return G$(e,{recursive:!0}),e}getSessionDBPath(e){let r=t_("sha256").update(e).digest("hex").slice(0,16);return ps(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=t_("sha256").update(e).digest("hex").slice(0,16);return ps(this.getSessionDir(),`${r}-events.md`)}getConfigDir(e){return ps(r_(),...this.sessionDirSegments)}getInstructionFiles(){return["CLAUDE.md"]}getMemoryDir(){return ps(this.getConfigDir(),"memory")}backupSettings(){let e=this.getSettingsPath();try{B$(e,W$.R_OK);let r=e+".bak";return V$(e,r),r}catch{return null}}}});var io,Mu=v(()=>{"use strict";Bt();io=class extends De{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 br=v(()=>{"use strict"});function fs(t,e){let r=ms[e],n=Lu(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function Lu(t,e){if(e){let r=ms[t];return ye(`${e}/hooks/${r}`)}return`context-mode hook claude-code ${t.toLowerCase()}`}function Fu(t){let e=t.match(/"[^"]+"\s+"([^"]+\.mjs)"/);return e?e[1]:t.match(/node\s+"?([^"]+\.mjs)"?/)?.[1]??null}function Uu(t){let e=Object.values(ms);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var Vt,K$,n_,J$,GL,ms,o_,KL,s_=v(()=>{"use strict";br();Vt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},K$=["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"],n_=K$.join("|"),J$=["Bash","Read","Write","Edit","NotebookEdit","Glob","Grep","TodoWrite","TaskCreate","TaskUpdate","EnterPlanMode","ExitPlanMode","Skill","Agent","AskUserQuestion","EnterWorktree","mcp__"],GL=J$.join("|"),ms={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},o_=[Vt.PRE_TOOL_USE,Vt.SESSION_START],KL=[Vt.POST_TOOL_USE,Vt.PRE_COMPACT,Vt.USER_PROMPT_SUBMIT]});var Hu={};Ze(Hu,{ClaudeCodeAdapter:()=>Zu});import{readFileSync as Gi,writeFileSync as i_,existsSync as Y$,readdirSync as X$,chmodSync as Q$,accessSync as eE,constants as tE}from"node:fs";import{resolve as pn,join as a_}from"node:path";import{homedir as hs}from"node:os";var Zu,qu=v(()=>{"use strict";Mu();s_();Zu=class extends io{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(hs(),".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=Gi(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){i_(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,Vt.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,Vt.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=[a_(e,"hooks","hooks.json"),a_(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=Gi(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=>fs(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>fs(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(hs(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Gi(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(hs(),".claude"),pn(hs(),".config","claude")];for(let r of e){let n=pn(r,"plugins","cache","context-mode","context-mode");try{let s=X$(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(!Uu(p))return!0;let f=p.hooks??[];return f.every(h=>!h.command||!Fu(h.command))?!0:f.every(h=>{let g=h.command?Fu(h.command):null;return g?Y$(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&&o_.every(c=>this.checkHookType(void 0,s,c))){for(let c of Object.keys(n)){let u=n[c];if(!Array.isArray(u))continue;let l=u.filter(p=>!Uu(p)),d=u.length-l.length;d>0&&(n[c]=l,o.push(`Removed ${d} duplicate ${c} 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=[Vt.PRE_TOOL_USE,Vt.SESSION_START];for(let a of i){let c=Lu(a,e);if(a===Vt.PRE_TOOL_USE){let u={matcher:n_,hooks:[{type:"command",command:c}]},l=n.PreToolUse;if(l&&Array.isArray(l)){let d=l.findIndex(p=>fs(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=>fs(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(ms)){let o=pn(e,"hooks",n);try{eE(o,tE.R_OK),Q$(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=pn(hs(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Gi(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();i_(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=Bu[t];return e&&r?ye(`${e}/hooks/${r}`):`context-mode hook gemini-cli ${t.toLowerCase()}`}var ke,Bu,n2,o2,c_=v(()=>{"use strict";br();ke={BEFORE_AGENT:"BeforeAgent",BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},Bu={[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"},n2=[ke.BEFORE_TOOL,ke.SESSION_START],o2=[ke.AFTER_TOOL,ke.PRE_COMPRESS]});var l_={};Ze(l_,{GeminiCLIAdapter:()=>Wu});import{readFileSync as Vu,writeFileSync as u_,mkdirSync as rE,accessSync as nE,chmodSync as oE,constants as sE}from"node:fs";import{resolve as gs,join as iE}from"node:path";import{homedir as Ki}from"node:os";var Wu,d_=v(()=>{"use strict";Bt();c_();Wu=class extends De{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 gs(Ki(),".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=Vu(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=gs(Ki(),".gemini");rE(r,{recursive:!0}),u_(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=gs(Ki(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(Vu(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=iE(e,"hooks","gemini-cli");for(let o of Object.values(Bu)){let s=gs(n,o);try{nE(s,sE.R_OK),oE(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=gs(Ki(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(Vu(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),u_(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,d2,p2,p_=v(()=>{"use strict";fn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},d2=[fn.BEFORE,fn.AFTER],p2=[fn.COMPACTING]});var f_={};Ze(f_,{OpenCodeAdapter:()=>Gu});import{readFileSync as m_,writeFileSync as cE,mkdirSync as uE,copyFileSync as lE,accessSync as dE,constants as pE}from"node:fs";import{resolve as Et,join as Zr}from"node:path";import{homedir as Hr}from"node:os";function aE(t){return t.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/,(\s*[}\]])/g,"$1")}var Gu,h_=v(()=>{"use strict";Bt();p_();Gu=class extends De{get name(){return this.platform==="kilo"?"KiloCode":"OpenCode"}paradigm="ts-plugin";settingsPath;capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};platform;constructor(e="opencode"){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 uE(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=m_(s,"utf-8"),a=s.endsWith(".jsonc")?aE(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){cE(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:"warn",message:`SessionStart not supported in ${this.name} (see issues #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(m_(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{dE(this.settingsPath,pE.R_OK);let r=this.settingsPath+".bak";return lE(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,x2,v2,g_=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"},x2=[hn.TOOL_CALL_BEFORE,hn.TOOL_CALL_AFTER],v2=[hn.COMMAND_NEW]});var __={};Ze(__,{OpenClawAdapter:()=>Xu});import{readFileSync as Ku,writeFileSync as mE,copyFileSync as fE,accessSync as hE,constants as gE}from"node:fs";import{resolve as Sr,join as Ju}from"node:path";import{homedir as Yu}from"node:os";var Xu,y_=v(()=>{"use strict";Bt();g_();Xu=class extends De{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 Sr("openclaw.json")}getConfigDir(e){return Sr(e??process.cwd())}getInstructionFiles(){return["AGENTS.md"]}getMemoryDir(){return Ju(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=[Sr("openclaw.json"),Sr(".openclaw","openclaw.json"),Ju(Yu(),".openclaw","openclaw.json")];for(let r of e)try{let n=Ku(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=Sr("openclaw.json");mE(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=Sr(Yu(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Ku(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=Sr("node_modules","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.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=[Sr("openclaw.json"),Sr(".openclaw","openclaw.json"),Ju(Yu(),".openclaw","openclaw.json")];for(let r of e)try{hE(r,gE.R_OK);let n=r+".bak";return fE(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 v_={};Ze(v_,{CodexAdapter:()=>tl});import{readFileSync as Qu}from"node:fs";import{resolve as el,dirname as _E}from"node:path";import{fileURLToPath as yE}from"node:url";import{homedir as x_}from"node:os";var tl,b_=v(()=>{"use strict";Bt();br();tl=class extends De{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 el(x_(),".codex","config.toml")}getInstructionFiles(){return["AGENTS.md","AGENTS.override.md"]}getMemoryDir(){return el(x_(),".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:Qu(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=Qu(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=el(_E(yE(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return Qu(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 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
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 S_,writeFileSync as xE,mkdirSync as vE,accessSync as bE,chmodSync as SE,constants as kE}from"node:fs";import{resolve as Ji,join as wE}from"node:path";var ao,rl=v(()=>{"use strict";Bt();ao=class extends De{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 Ji(".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=S_(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{}try{let e=S_(Ji(".claude","settings.json"),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();vE(Ji(".github","hooks"),{recursive:!0}),xE(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=wE(e,"hooks",this.hookSubdir);for(let o of Object.values(this.hookModule.HOOK_SCRIPTS)){let s=Ji(n,o);try{bE(s,kE.R_OK),SE(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}}});function k_(t,e){let r=nl[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,nl,M2,L2,w_=v(()=>{"use strict";br();Tt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart"},nl={[Tt.PRE_TOOL_USE]:"pretooluse.mjs",[Tt.POST_TOOL_USE]:"posttooluse.mjs",[Tt.PRE_COMPACT]:"precompact.mjs",[Tt.SESSION_START]:"sessionstart.mjs"},M2=[Tt.PRE_TOOL_USE,Tt.SESSION_START],L2=[Tt.POST_TOOL_USE,Tt.PRE_COMPACT]});var $_={};Ze($_,{VSCodeCopilotAdapter:()=>il});import{readFileSync as ol,mkdirSync as $E,accessSync as EE,existsSync as TE,constants as PE}from"node:fs";import{resolve as co,join as Yi}from"node:path";import{homedir as sl}from"node:os";var il,E_=v(()=>{"use strict";rl();w_();il=class extends ao{constructor(){super([".vscode"])}name="VS Code Copilot";hookModule={HOOK_TYPES:Tt,HOOK_SCRIPTS:nl,buildHookCommand:k_};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=co(".github","context-mode","sessions"),r=Yi(sl(),".vscode","context-mode","sessions"),n=TE(co(".github"))?e:r;return $E(n,{recursive:!0}),n}getConfigDir(e){return co(e??process.cwd(),".github")}getInstructionFiles(){return["copilot-instructions.md"]}validateHooks(e){let r=[],n=co(".github","hooks");try{EE(n,PE.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=co(n,"context-mode.json");try{let s=ol(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=co(".vscode","mcp.json"),r=ol(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=[Yi(sl(),".vscode","extensions"),Yi(sl(),".vscode-insiders","extensions")];for(let r of e)try{let n=ol(Yi(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 T_(t,e){let r=al[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,al,W2,G2,P_=v(()=>{"use strict";br();Pt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},al={[Pt.PRE_TOOL_USE]:"pretooluse.mjs",[Pt.POST_TOOL_USE]:"posttooluse.mjs",[Pt.PRE_COMPACT]:"precompact.mjs",[Pt.SESSION_START]:"sessionstart.mjs"},W2=[Pt.PRE_TOOL_USE,Pt.SESSION_START],G2=[Pt.POST_TOOL_USE,Pt.PRE_COMPACT]});var R_={};Ze(R_,{JetBrainsCopilotAdapter:()=>cl});import{readFileSync as RE}from"node:fs";import{resolve as CE}from"node:path";var cl,C_=v(()=>{"use strict";rl();P_();cl=class extends ao{constructor(){super([".config","JetBrains"])}name="JetBrains Copilot";hookModule={HOOK_TYPES:Pt,HOOK_SCRIPTS:al,buildHookCommand:T_};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 CE(e??this.getProjectDir(),".github")}getInstructionFiles(){return["copilot-instructions.md"]}validateHooks(e){let r=[];try{let n=RE(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 Xi(t,e){let r=ul[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,ul,OE,ll,O_,I_,N_=v(()=>{"use strict";he={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart",STOP:"stop",AFTER_AGENT_RESPONSE:"afterAgentResponse"},ul={[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"},OE=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],ll=OE.join("|"),O_=[he.PRE_TOOL_USE],I_=[he.POST_TOOL_USE]});var j_={};Ze(j_,{CursorAdapter:()=>ml});import{readFileSync as dl,writeFileSync as IE,mkdirSync as NE,accessSync as AE,chmodSync as zE,constants as jE,existsSync as A_}from"node:fs";import{execSync as DE}from"node:child_process";import{resolve as gn,join as Qi}from"node:path";import{homedir as pl}from"node:os";var z_,ml,D_=v(()=>{"use strict";Bt();N_();z_="/Library/Application Support/Cursor/hooks.json",ml=class extends De{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:ll,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=dl(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();NE(gn(".cursor"),{recursive:!0}),IE(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 O_){let i=o[s],a=Array.isArray(i)&&i.some(c=>Xi(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 I_){let i=o[s],a=Array.isArray(i)&&i.some(c=>Xi(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 A_(z_)&&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"),Qi(pl(),".cursor","mcp.json")];for(let r of e)try{let n=dl(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 DE("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:ll,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=Qi(e,"hooks","cursor");for(let o of Object.values(ul)){let s=gn(n,o);try{AE(s,jE.R_OK),zE(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),Qi(pl(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(z_),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=dl(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"),Qi(pl(),".claude","settings.json")].some(r=>A_(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>Xi(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 L_={};Ze(L_,{AntigravityAdapter:()=>hl});import{readFileSync as ea,writeFileSync as ME,mkdirSync as LE}from"node:fs";import{resolve as ta,dirname as M_}from"node:path";import{fileURLToPath as FE}from"node:url";import{homedir as fl}from"node:os";var hl,F_=v(()=>{"use strict";Bt();hl=class extends De{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 ta(fl(),".gemini","antigravity","mcp_config.json")}getConfigDir(e){return ta(fl(),".gemini","antigravity")}getInstructionFiles(){return["GEMINI.md"]}generateHookConfig(e){return{}}readSettings(){try{let e=ea(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();LE(M_(r),{recursive:!0}),ME(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=ea(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=ta(fl(),".gemini","extensions","context-mode","package.json");return JSON.parse(ea(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=ta(M_(FE(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return ea(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 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
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 ra(t,e){let r=U_[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function uo(t,e){let r=U_[t];return e&&r?ye(`${e}/hooks/kiro/${r}`):`context-mode hook kiro ${t.toLowerCase()}`}var Ne,U_,UE,gl,fF,hF,Z_=v(()=>{"use strict";br();Ne={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},U_={[Ne.PRE_TOOL_USE]:"pretooluse.mjs",[Ne.POST_TOOL_USE]:"posttooluse.mjs",[Ne.USER_PROMPT_SUBMIT]:"userpromptsubmit.mjs",[Ne.AGENT_SPAWN]:"agentspawn.mjs"},UE=["execute_bash","fs_read","@context-mode/ctx_execute","@context-mode/ctx_execute_file","@context-mode/ctx_batch_execute"],gl=UE.join("|"),fF=[Ne.PRE_TOOL_USE,Ne.AGENT_SPAWN],hF=[Ne.POST_TOOL_USE,Ne.USER_PROMPT_SUBMIT]});var V_={};Ze(V_,{KiroAdapter:()=>_l});import{readFileSync as lo,writeFileSync as H_,mkdirSync as q_}from"node:fs";import{resolve as _n,dirname as B_}from"node:path";import{fileURLToPath as ZE}from"node:url";import{homedir as na}from"node:os";var _l,W_=v(()=>{"use strict";Bt();Z_();_l=class extends De{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(na(),".kiro","settings","mcp.json")}getConfigDir(e){return _n(e??process.cwd(),".kiro")}getInstructionFiles(){return["KIRO.md"]}generateHookConfig(e){return{[Ne.PRE_TOOL_USE]:[{matcher:gl,hooks:[{type:"command",command:uo(Ne.PRE_TOOL_USE,e)}]}],[Ne.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:uo(Ne.POST_TOOL_USE,e)}]}],[Ne.AGENT_SPAWN]:[{matcher:"*",hooks:[{type:"command",command:uo(Ne.AGENT_SPAWN,e)}]}],[Ne.USER_PROMPT_SUBMIT]:[{matcher:"*",hooks:[{type:"command",command:uo(Ne.USER_PROMPT_SUBMIT,e)}]}]}}readSettings(){try{let e=lo(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();q_(B_(r),{recursive:!0}),H_(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=_n(na(),".kiro","agents","default.json");try{let s=JSON.parse(lo(n,"utf-8")).hooks??{};for(let i of[Ne.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>ra(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=>ra(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=lo(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(na(),".kiro","extensions","context-mode","package.json");return JSON.parse(lo(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=_n(na(),".kiro","agents"),o=_n(n,"default.json");try{q_(n,{recursive:!0});let s={};try{s=JSON.parse(lo(o,"utf-8"))}catch{}let i=s.hooks??{},a=[[Ne.PRE_TOOL_USE,gl],[Ne.POST_TOOL_USE,"*"],[Ne.AGENT_SPAWN,"*"],[Ne.USER_PROMPT_SUBMIT,"*"]];for(let[c,u]of a){let l=i[c]??[];l.some(d=>ra(d,c))||(l.push({matcher:u,command:uo(c,e)}),i[c]=l,r.push(`Added ${c} hook to ${o}`))}s.hooks=i,H_(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(B_(ZE(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return lo(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 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
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 J_={};Ze(J_,{ZedAdapter:()=>xl});import{readFileSync as yl,writeFileSync as HE,mkdirSync as qE}from"node:fs";import{resolve as G_,dirname as K_}from"node:path";import{fileURLToPath as BE}from"node:url";import{homedir as VE}from"node:os";var xl,Y_=v(()=>{"use strict";Bt();xl=class extends De{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 G_(VE(),".config","zed","settings.json")}getInstructionFiles(){return["AGENTS.md"]}generateHookConfig(e){return{}}readSettings(){try{let e=yl(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();qE(K_(r),{recursive:!0}),HE(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=yl(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=G_(K_(BE(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return yl(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 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
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 ey={};Ze(ey,{QwenCodeAdapter:()=>vl});import{readFileSync as WE,existsSync as GE}from"node:fs";import{resolve as X_,join as KE}from"node:path";import{homedir as Q_}from"node:os";var vl,ty=v(()=>{"use strict";Mu();br();vl=class extends io{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 X_(Q_(),".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=WE(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let{writeFileSync:r}=Pg("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)"?/),_=h||g;return _?GE(_[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:X_(KE(Q_(),".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 ny={};Ze(ny,{PLATFORM_ENV_VARS:()=>ry,detectPlatform:()=>kr,getAdapter:()=>_s,getSessionDirSegments:()=>bl});import{existsSync as Ct}from"node:fs";import{resolve as Ot}from"node:path";import{homedir as JE}from"node:os";function bl(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 kr(t){if(t?.name){let n=Qg[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 ry)if(o.some(s=>process.env[s]))return{platform:n,confidence:"high",reason:`${o.join(" or ")} env var set`};let r=JE();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 _s(t){let e=t??kr().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(qu(),Hu));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(d_(),l_));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(h_(),f_));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(y_(),__));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(b_(),v_));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(E_(),$_));return new r}case"jetbrains-copilot":{let{JetBrainsCopilotAdapter:r}=await Promise.resolve().then(()=>(C_(),R_));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(D_(),j_));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(F_(),L_));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(W_(),V_));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(Y_(),J_));return new r}case"qwen-code":{let{QwenCodeAdapter:r}=await Promise.resolve().then(()=>(ty(),ey));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(qu(),Hu));return new r}}}var ry,oa=v(()=>{"use strict";e_();ry=[["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 re,Sl,O,sr,ys=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})(re||(re={}));(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Sl||(Sl={}));O=re.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),sr=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,YE,dt,sa=v(()=>{ys();w=re.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"]),YE=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),dt=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,re.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()}};dt.create=t=>new dt(t)});var XE,wr,kl=v(()=>{sa();ys();XE=(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,re.jsonStringifyReplacer)}`;break;case w.unrecognized_keys:r=`Unrecognized key(s) in object: ${re.joinValues(t.keys,", ")}`;break;case w.invalid_union:r="Invalid input";break;case w.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${re.joinValues(t.options)}`;break;case w.invalid_enum_value:r=`Invalid enum value. Expected ${re.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}"`:re.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,re.assertNever(t)}return{message:r}},wr=XE});function QE(t){oy=t}function po(){return oy}var oy,ia=v(()=>{kl();oy=wr});function R(t,e){let r=po(),n=xs({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===wr?void 0:wr].filter(o=>!!o)});t.common.issues.push(n)}var xs,eT,We,H,yn,et,aa,ca,qr,mo,wl=v(()=>{ia();kl();xs=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}},eT=[];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 H;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 H;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}}},H=Object.freeze({status:"aborted"}),yn=t=>({status:"dirty",value:t}),et=t=>({status:"valid",value:t}),aa=t=>t.status==="aborted",ca=t=>t.status==="dirty",qr=t=>t.status==="valid",mo=t=>typeof Promise<"u"&&t instanceof Promise});var sy=v(()=>{});var j,iy=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 ly(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 _T(t){return new RegExp(`^${ly(t)}$`)}function dy(t){let e=`${uy}T${ly(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 yT(t,e){return!!((e==="v4"||!e)&&lT.test(t)||(e==="v6"||!e)&&pT.test(t))}function xT(t,e){if(!iT.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 vT(t,e){return!!((e==="v4"||!e)&&dT.test(t)||(e==="v6"||!e)&&mT.test(t))}function bT(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 fo(t){if(t instanceof mt){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=pt.create(fo(n))}return new mt({...t._def,shape:()=>e})}else return t instanceof Tr?new Tr({...t._def,type:fo(t.element)}):t instanceof pt?pt.create(fo(t.unwrap())):t instanceof ar?ar.create(fo(t.unwrap())):t instanceof ir?ir.create(t.items.map(e=>fo(e))):t}function El(t,e){let r=sr(t),n=sr(e);if(t===e)return{valid:!0,data:t};if(r===O.object&&n===O.object){let o=re.objectKeys(e),s=re.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=El(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=El(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 py(t,e){return new Rn({values:t,typeName:$.ZodEnum,...J(e)})}function cy(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function my(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=cy(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=cy(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Vr.create()}var It,ay,X,tT,rT,nT,oT,sT,iT,aT,cT,uT,$l,lT,dT,pT,mT,fT,hT,uy,gT,Br,xn,vn,bn,Sn,ho,kn,wn,Vr,Er,Wt,go,Tr,mt,$n,$r,ua,En,ir,la,_o,yo,da,Tn,Pn,Rn,Cn,Wr,Nt,pt,ar,On,In,xo,ST,vs,bs,Nn,kT,$,wT,fy,hy,$T,ET,gy,TT,PT,RT,CT,OT,IT,NT,AT,zT,Tl,jT,DT,MT,LT,FT,UT,ZT,HT,qT,BT,VT,WT,GT,KT,JT,YT,XT,QT,eP,tP,rP,nP,oP,sP,_y=v(()=>{sa();ia();iy();wl();ys();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}},ay=(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 dt(t.common.issues);return this._error=r,this._error}}};X=class{get description(){return this._def.description}_getType(e){return sr(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:sr(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:sr(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(mo(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:sr(e)},o=this._parseSync({data:e,path:n.path,parent:n});return ay(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:sr(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:sr(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(mo(o)?o:Promise.resolve(o));return ay(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 Nt({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 pt.create(this,this._def)}nullable(){return ar.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Tr.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:$.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 vs({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 bs.create(this,e)}readonly(){return Nn.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},tT=/^c[^\s-]{8,}$/i,rT=/^[0-9a-z]+$/,nT=/^[0-9A-HJKMNP-TV-Z]{26}$/i,oT=/^[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,sT=/^[a-z0-9_-]{21}$/i,iT=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,aT=/^[-+]?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)?)??$/,cT=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,uT="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",lT=/^(?:(?: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])$/,dT=/^(?:(?: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])$/,pT=/^(([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]))$/,mT=/^(([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])$/,fT=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,hT=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,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])))",gT=new RegExp(`^${uy}$`);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}),H}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")cT.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")$l||($l=new RegExp(uT,"u")),$l.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")oT.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")sT.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")tT.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")rT.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")nT.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"?dy(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"?gT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:w.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?_T(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"?aT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"duration",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?yT(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"?xT(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"?vT(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"?fT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?hT.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64url",code:w.invalid_string,message:s.message}),n.dirty()):re.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}),H}let n,o=new We;for(let s of this._def.checks)s.kind==="int"?re.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"?bT(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()):re.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"&&re.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()):re.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}),H}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}),H}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}),H}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return R(s,{code:w.invalid_date}),H}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()):re.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)});ho=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}),H}return et(e.data)}};ho.create=t=>new ho({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}),H}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}),H}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)});Er=class extends X{constructor(){super(...arguments),this._unknown=!0}_parse(e){return et(e.data)}};Er.create=t=>new Er({typeName:$.ZodUnknown,...J(t)});Wt=class extends X{_parse(e){let r=this._getOrReturnCtx(e);return R(r,{code:w.invalid_type,expected:O.never,received:r.parsedType}),H}};Wt.create=t=>new Wt({typeName:$.ZodNever,...J(t)});go=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}),H}return et(e.data)}};go.create=t=>new go({typeName:$.ZodVoid,...J(t)});Tr=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}),H;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)}};Tr.create=(t,e)=>new Tr({type:t,minLength:null,maxLength:null,exactLength:null,typeName:$.ZodArray,...J(e)});mt=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=re.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}),H}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Wt&&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 Wt){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 re.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 re.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return fo(this)}partial(e){let r={};for(let n of re.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 re.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof pt;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return py(re.objectKeys(this.shape))}};mt.create=(t,e)=>new mt({shape:()=>t,unknownKeys:"strip",catchall:Wt.create(),typeName:$.ZodObject,...J(e)});mt.strictCreate=(t,e)=>new mt({shape:()=>t,unknownKeys:"strict",catchall:Wt.create(),typeName:$.ZodObject,...J(e)});mt.lazycreate=(t,e)=>new mt({shape:t,unknownKeys:"strip",catchall:Wt.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 dt(a.ctx.common.issues));return R(r,{code:w.invalid_union,unionErrors:i}),H}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 dt(c));return R(r,{code:w.invalid_union,unionErrors:a}),H}}get options(){return this._def.options}};$n.create=(t,e)=>new $n({options:t,typeName:$.ZodUnion,...J(e)});$r=t=>t instanceof Tn?$r(t.schema):t instanceof Nt?$r(t.innerType()):t instanceof Pn?[t.value]:t instanceof Rn?t.options:t instanceof Cn?re.objectValues(t.enum):t instanceof On?$r(t._def.innerType):t instanceof kn?[void 0]:t instanceof wn?[null]:t instanceof pt?[void 0,...$r(t.unwrap())]:t instanceof ar?[null,...$r(t.unwrap())]:t instanceof vs||t instanceof Nn?$r(t.unwrap()):t instanceof In?$r(t._def.innerType):[],ua=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}),H;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]}),H)}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=$r(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(aa(s)||aa(i))return H;let a=El(s.value,i.value);return a.valid?((ca(s)||ca(i))&&r.dirty(),{status:r.value,value:a.data}):(R(n,{code:w.invalid_intersection_types}),H)};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)});ir=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}),H;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"}),H;!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})}};ir.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ir({items:t,typeName:$.ZodTuple,rest:null,...J(e)})};la=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}),H;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)})}},_o=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}),H;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 H;(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 H;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};_o.create=(t,e,r)=>new _o({valueType:e,keyType:t,typeName:$.ZodMap,...J(r)});yo=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}),H;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 H;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)}};yo.create=(t,e)=>new yo({valueType:t,minSize:null,maxSize:null,typeName:$.ZodSet,...J(e)});da=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}),H;function n(a,c){return xs({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,po(),wr].filter(u=>!!u),issueData:{code:w.invalid_arguments,argumentsError:c}})}function o(a,c){return xs({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,po(),wr].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 dt([]),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 dt([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new dt([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:ir.create(e).rest(Er.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||ir.create([]).rest(Er.create()),returns:r||Er.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}),H}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:re.joinValues(n),received:r.parsedType,code:w.invalid_type}),H}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}),H}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=py;Cn=class extends X{_parse(e){let r=re.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==O.string&&n.parsedType!==O.number){let o=re.objectValues(r);return R(n,{expected:re.joinValues(o),received:n.parsedType,code:w.invalid_type}),H}if(this._cache||(this._cache=new Set(re.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=re.objectValues(r);return R(n,{received:n.data,code:w.invalid_enum_value,options:o}),H}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}),H;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)});Nt=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 H;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?H:c.status==="dirty"?yn(c.value):r.value==="dirty"?yn(c.value):c});{if(r.value==="aborted")return H;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?H: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"?H:(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"?H:(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 H;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})):H);re.assertNever(o)}};Nt.create=(t,e,r)=>new Nt({schema:t,typeName:$.ZodEffects,effect:e,...J(r)});Nt.createWithPreprocess=(t,e,r)=>new Nt({schema:e,effect:{type:"preprocess",transform:t},typeName:$.ZodEffects,...J(r)});pt=class extends X{_parse(e){return this._getType(e)===O.undefined?et(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};pt.create=(t,e)=>new pt({innerType:t,typeName:$.ZodOptional,...J(e)});ar=class extends X{_parse(e){return this._getType(e)===O.null?et(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ar.create=(t,e)=>new ar({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 mo(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new dt(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new dt(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)});xo=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}),H}return{status:"valid",value:e.data}}};xo.create=t=>new xo({typeName:$.ZodNaN,...J(t)});ST=Symbol("zod_brand"),vs=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}},bs=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"?H: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"?H: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})}},Nn=class extends X{_parse(e){let r=this._def.innerType._parse(e),n=o=>(qr(o)&&(o.value=Object.freeze(o.value)),o);return mo(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Nn.create=(t,e)=>new Nn({innerType:t,typeName:$.ZodReadonly,...J(e)});kT={object:mt.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"})($||($={}));wT=(t,e={message:`Input not instance of ${t.name}`})=>my(r=>r instanceof t,e),fy=Br.create,hy=xn.create,$T=xo.create,ET=vn.create,gy=bn.create,TT=Sn.create,PT=ho.create,RT=kn.create,CT=wn.create,OT=Vr.create,IT=Er.create,NT=Wt.create,AT=go.create,zT=Tr.create,Tl=mt.create,jT=mt.strictCreate,DT=$n.create,MT=ua.create,LT=En.create,FT=ir.create,UT=la.create,ZT=_o.create,HT=yo.create,qT=da.create,BT=Tn.create,VT=Pn.create,WT=Rn.create,GT=Cn.create,KT=Wr.create,JT=Nt.create,YT=pt.create,XT=ar.create,QT=Nt.createWithPreprocess,eP=bs.create,tP=()=>fy().optional(),rP=()=>hy().optional(),nP=()=>gy().optional(),oP={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}))},sP=H});var M={};Ze(M,{BRAND:()=>ST,DIRTY:()=>yn,EMPTY_PATH:()=>eT,INVALID:()=>H,NEVER:()=>sP,OK:()=>et,ParseStatus:()=>We,Schema:()=>X,ZodAny:()=>Vr,ZodArray:()=>Tr,ZodBigInt:()=>vn,ZodBoolean:()=>bn,ZodBranded:()=>vs,ZodCatch:()=>In,ZodDate:()=>Sn,ZodDefault:()=>On,ZodDiscriminatedUnion:()=>ua,ZodEffects:()=>Nt,ZodEnum:()=>Rn,ZodError:()=>dt,ZodFirstPartyTypeKind:()=>$,ZodFunction:()=>da,ZodIntersection:()=>En,ZodIssueCode:()=>w,ZodLazy:()=>Tn,ZodLiteral:()=>Pn,ZodMap:()=>_o,ZodNaN:()=>xo,ZodNativeEnum:()=>Cn,ZodNever:()=>Wt,ZodNull:()=>wn,ZodNullable:()=>ar,ZodNumber:()=>xn,ZodObject:()=>mt,ZodOptional:()=>pt,ZodParsedType:()=>O,ZodPipeline:()=>bs,ZodPromise:()=>Wr,ZodReadonly:()=>Nn,ZodRecord:()=>la,ZodSchema:()=>X,ZodSet:()=>yo,ZodString:()=>Br,ZodSymbol:()=>ho,ZodTransformer:()=>Nt,ZodTuple:()=>ir,ZodType:()=>X,ZodUndefined:()=>kn,ZodUnion:()=>$n,ZodUnknown:()=>Er,ZodVoid:()=>go,addIssueToContext:()=>R,any:()=>OT,array:()=>zT,bigint:()=>ET,boolean:()=>gy,coerce:()=>oP,custom:()=>my,date:()=>TT,datetimeRegex:()=>dy,defaultErrorMap:()=>wr,discriminatedUnion:()=>MT,effect:()=>JT,enum:()=>WT,function:()=>qT,getErrorMap:()=>po,getParsedType:()=>sr,instanceof:()=>wT,intersection:()=>LT,isAborted:()=>aa,isAsync:()=>mo,isDirty:()=>ca,isValid:()=>qr,late:()=>kT,lazy:()=>BT,literal:()=>VT,makeIssue:()=>xs,map:()=>ZT,nan:()=>$T,nativeEnum:()=>GT,never:()=>NT,null:()=>CT,nullable:()=>XT,number:()=>hy,object:()=>Tl,objectUtil:()=>Sl,oboolean:()=>nP,onumber:()=>rP,optional:()=>YT,ostring:()=>tP,pipeline:()=>eP,preprocess:()=>QT,promise:()=>KT,quotelessJson:()=>YE,record:()=>UT,set:()=>HT,setErrorMap:()=>QE,strictObject:()=>jT,string:()=>fy,symbol:()=>PT,transformer:()=>JT,tuple:()=>FT,undefined:()=>RT,union:()=>DT,unknown:()=>IT,util:()=>re,void:()=>AT});var pa=v(()=>{ia();wl();sy();ys();_y();sa()});var Ss=v(()=>{pa()});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(ma,t),ma}var aP,Pr,ma,vo=v(()=>{aP=Object.freeze({status:"aborted"});Pr=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},ma={}});var ne={};Ze(ne,{BIGINT_FORMAT_RANGES:()=>xy,Class:()=>Rl,NUMBER_FORMAT_RANGES:()=>jl,aborted:()=>zn,allowsEval:()=>Nl,assert:()=>pP,assertEqual:()=>cP,assertIs:()=>lP,assertNever:()=>dP,assertNotEqual:()=>uP,assignProp:()=>Il,cached:()=>$s,captureStackTrace:()=>ha,cleanEnum:()=>$P,cleanRegex:()=>Ts,clone:()=>bt,createTransparentProxy:()=>yP,defineLazy:()=>ve,esc:()=>An,escapeRegex:()=>Gr,extend:()=>bP,finalizeIssue:()=>Gt,floatSafeRemainder:()=>Ol,getElementAtPath:()=>mP,getEnumValues:()=>ws,getLengthableOrigin:()=>Ps,getParsedType:()=>_P,getSizableOrigin:()=>vy,isObject:()=>bo,isPlainObject:()=>So,issue:()=>Dl,joinValues:()=>fa,jsonStringifyReplacer:()=>Cl,merge:()=>SP,normalizeParams:()=>q,nullish:()=>Es,numKeys:()=>gP,omit:()=>vP,optionalKeys:()=>zl,partial:()=>kP,pick:()=>xP,prefixIssues:()=>cr,primitiveTypes:()=>yy,promiseAllObject:()=>fP,propertyKeyTypes:()=>Al,randomString:()=>hP,required:()=>wP,stringifyPrimitive:()=>ga,unwrapMessage:()=>ks});function cP(t){return t}function uP(t){return t}function lP(t){}function dP(t){throw new Error}function pP(t){}function ws(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 fa(t,e="|"){return t.map(r=>ga(r)).join(e)}function Cl(t,e){return typeof e=="bigint"?e.toString():e}function $s(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Es(t){return t==null}function Ts(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Ol(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 Il(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function mP(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function fP(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 hP(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function An(t){return JSON.stringify(t)}function bo(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function So(t){if(bo(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(bo(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function gP(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 q(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 yP(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 ga(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function zl(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}function xP(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 vP(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 bP(t,e){if(!So(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 Il(this,"shape",n),n},checks:[]};return bt(t,r)}function SP(t,e){return bt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Il(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function kP(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 wP(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 cr(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function ks(t){return typeof t=="string"?t:t?.message}function Gt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=ks(t.inst?._zod.def?.error?.(t))??ks(e?.error?.(t))??ks(r.customError?.(t))??ks(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function vy(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Ps(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Dl(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function $P(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var ha,Nl,_P,Al,yy,jl,xy,Rl,ur=v(()=>{ha=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};Nl=$s(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});_P=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}`)}},Al=new Set(["string","number","symbol"]),yy=new Set(["string","number","bigint","boolean","symbol","undefined"]);jl={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]},xy={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};Rl=class{constructor(...e){}}});function Ml(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 Ll(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 by,_a,Rs,Fl=v(()=>{vo();ur();by=(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,Cl,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},_a=S("$ZodError",by),Rs=S("$ZodError",by,{Parent:Error})});var Ul,Zl,Hl,ql,Bl,jn,Vl,Dn,Wl=v(()=>{vo();Fl();ur();Ul=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 Pr;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Gt(c,s,vt())));throw ha(a,o?.callee),a}return i.value},Zl=Ul(Rs),Hl=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Gt(c,s,vt())));throw ha(a,o?.callee),a}return i.value},ql=Hl(Rs),Bl=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 Pr;return s.issues.length?{success:!1,error:new(t??_a)(s.issues.map(i=>Gt(i,o,vt())))}:{success:!0,data:s.value}},jn=Bl(Rs),Vl=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>Gt(i,o,vt())))}:{success:!0,data:s.value}},Dn=Vl(Rs)});function Oy(){return new RegExp(TP,"u")}function Uy(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 Zy(t){return new RegExp(`^${Uy(t)}$`)}function Hy(t){let e=Uy({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(`^${Ly}T(?:${n})$`)}var Sy,ky,wy,$y,Ey,Ty,Py,Ry,Gl,Cy,TP,Iy,Ny,Ay,zy,jy,Kl,Dy,My,Ly,Fy,qy,By,Vy,Wy,Gy,Ky,Jy,xa=v(()=>{Sy=/^[cC][^\s-]{8,}$/,ky=/^[0-9a-z]+$/,wy=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,$y=/^[0-9a-vA-V]{20}$/,Ey=/^[A-Za-z0-9]{27}$/,Ty=/^[a-zA-Z0-9_-]{21}$/,Py=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Ry=/^([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})$/,Gl=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)$/,Cy=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,TP="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";Iy=/^(?:(?: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])$/,Ny=/^(([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})$/,Ay=/^((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])$/,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})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,jy=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Kl=/^[A-Za-z0-9_-]*$/,Dy=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,My=/^\+(?:[0-9]){6,14}[0-9]$/,Ly="(?:(?:\\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])))",Fy=new RegExp(`^${Ly}$`);qy=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},By=/^\d+$/,Vy=/^-?\d+(?:\.\d+)?/i,Wy=/true|false/i,Gy=/null/i,Ky=/^[^A-Z]*$/,Jy=/^[^a-z]*$/});var Ge,Yy,Jl,Yl,Xy,Qy,ex,tx,rx,Cs,nx,ox,sx,ix,ax,cx,ux,va=v(()=>{vo();xa();ur();Ge=S("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Yy={number:"number",bigint:"bigint",object:"date"},Jl=S("$ZodCheckLessThan",(t,e)=>{Ge.init(t,e);let r=Yy[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})}}),Yl=S("$ZodCheckGreaterThan",(t,e)=>{Ge.init(t,e);let r=Yy[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})}}),Xy=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):Ol(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})}}),Qy=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]=jl[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=By)}),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})}}),ex=S("$ZodCheckMaxLength",(t,e)=>{var r;Ge.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Es(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=Ps(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),tx=S("$ZodCheckMinLength",(t,e)=>{var r;Ge.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Es(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=Ps(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),rx=S("$ZodCheckLengthEquals",(t,e)=>{var r;Ge.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Es(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=Ps(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})}}),Cs=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=()=>{})}),nx=S("$ZodCheckRegex",(t,e)=>{Cs.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})}}),ox=S("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Ky),Cs.init(t,e)}),sx=S("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Jy),Cs.init(t,e)}),ix=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})}}),ax=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})}}),cx=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})}}),ux=S("$ZodCheckOverwrite",(t,e)=>{Ge.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}})});var ba,Xl=v(()=>{ba=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 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(`
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 dx,Ql=v(()=>{dx={major:4,minor:0,patch:0}});function $x(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}function PP(t){if(!Kl.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return $x(r)}function RP(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 px(t,e,r){t.issues.length&&e.issues.push(...cr(r,t.issues)),e.value[r]=t.value}function Sa(t,e,r){t.issues.length&&e.issues.push(...cr(r,t.issues)),e.value[r]=t.value}function mx(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(...cr(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}function fx(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>Gt(s,n,vt())))}),e}function ed(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(So(t)&&So(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=ed(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=ed(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 hx(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=ed(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 gx(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}function _x(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 yx(t,e,r){return zn(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}function xx(t){return t.value=Object.freeze(t.value),t}function vx(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(Dl(o))}}var ge,Os,be,td,rd,nd,od,sd,id,ad,cd,ud,ld,dd,bx,Sx,kx,wx,pd,md,fd,hd,gd,_d,yd,xd,ka,vd,bd,Sd,kd,wd,$d,wa,$a,Ed,Td,Pd,Rd,Cd,Od,Id,Nd,Ad,zd,jd,Dd,Md,Ld,Fd,Ex=v(()=>{va();vo();Xl();Wl();xa();ur();Ql();ur();ge=S("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=dx;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 Pr;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 Pr;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}}),Os=S("$ZodString",(t,e)=>{ge.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??qy(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)=>{Cs.init(t,e),Os.init(t,e)}),td=S("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Ry),be.init(t,e)}),rd=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=Gl(n))}else e.pattern??(e.pattern=Gl());be.init(t,e)}),nd=S("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Cy),be.init(t,e)}),od=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:Dy.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})}}}),sd=S("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Oy()),be.init(t,e)}),id=S("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Ty),be.init(t,e)}),ad=S("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Sy),be.init(t,e)}),cd=S("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=ky),be.init(t,e)}),ud=S("$ZodULID",(t,e)=>{e.pattern??(e.pattern=wy),be.init(t,e)}),ld=S("$ZodXID",(t,e)=>{e.pattern??(e.pattern=$y),be.init(t,e)}),dd=S("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Ey),be.init(t,e)}),bx=S("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Hy(e)),be.init(t,e)}),Sx=S("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Fy),be.init(t,e)}),kx=S("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Zy(e)),be.init(t,e)}),wx=S("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Py),be.init(t,e)}),pd=S("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Iy),be.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),md=S("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Ny),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})}}}),fd=S("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Ay),be.init(t,e)}),hd=S("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=zy),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})}}});gd=S("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=jy),be.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{$x(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});_d=S("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Kl),be.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{PP(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),yd=S("$ZodE164",(t,e)=>{e.pattern??(e.pattern=My),be.init(t,e)});xd=S("$ZodJWT",(t,e)=>{be.init(t,e),t._zod.check=r=>{RP(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),ka=S("$ZodNumber",(t,e)=>{ge.init(t,e),t._zod.pattern=t._zod.bag.pattern??Vy,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}}),vd=S("$ZodNumber",(t,e)=>{Qy.init(t,e),ka.init(t,e)}),bd=S("$ZodBoolean",(t,e)=>{ge.init(t,e),t._zod.pattern=Wy,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}}),Sd=S("$ZodNull",(t,e)=>{ge.init(t,e),t._zod.pattern=Gy,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}}),kd=S("$ZodUnknown",(t,e)=>{ge.init(t,e),t._zod.parse=r=>r}),wd=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)});$d=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=>px(u,r,i))):px(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});wa=S("$ZodObject",(t,e)=>{ge.init(t,e);let r=$s(()=>{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=zl(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 ba(["shape","payload","ctx"]),f=r.value,m=y=>{let x=An(y);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 y of f.keys)h[y]=`key_${g++}`;p.write("const newResult = {}");for(let y of f.keys)if(f.optionalKeys.has(y)){let x=h[y];p.write(`const ${x} = ${m(y)};`);let k=An(y);p.write(`
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(`
22
22
  if (${x}.issues.length) {
23
23
  if (input[${k}] === undefined) {
24
24
  if (${k} in input) {
@@ -37,26 +37,26 @@ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_inde
37
37
  } else {
38
38
  newResult[${k}] = ${x}.value;
39
39
  }
40
- `)}else{let x=h[y];p.write(`const ${x} = ${m(y)};`),p.write(`
40
+ `)}else{let x=h[_];p.write(`const ${x} = ${m(_)};`),p.write(`
41
41
  if (${x}.issues.length) payload.issues = payload.issues.concat(${x}.issues.map(iss => ({
42
42
  ...iss,
43
- path: iss.path ? [${An(y)}, ...iss.path] : [${An(y)}]
44
- })));`),p.write(`newResult[${An(y)}] = ${x}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let _=p.compile();return(y,x)=>_(d,y,x)},o,s=bo,i=!ma.jitless,c=i&&Nl.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],B=E._zod.run({value:f[k],issues:[]},p),z=E._zod.optin==="optional"&&E._zod.optout==="optional";B instanceof Promise?m.push(B.then(K=>z?mx(K,d,k,f):Sa(K,d,k))):z?mx(B,d,k,f):Sa(B,d,k)}}if(!u)return m.length?Promise.all(m).then(()=>d):d;let h=[],g=l.keySet,_=u._zod,y=_.def.type;for(let x of Object.keys(f)){if(g.has(x))continue;if(y==="never"){h.push(x);continue}let k=_.run({value:f[x],issues:[]},p);k instanceof Promise?m.push(k.then(E=>Sa(E,d,x))):Sa(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}});$a=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=>Ts(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=>fx(i,r,t,n)):fx(s,r,t,n)}}),Ed=S("$ZodDiscriminatedUnion",(t,e)=>{$a.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=$s(()=>{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(!bo(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)}}),Td=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])=>hx(r,c,u)):hx(r,s,i)}});Pd=S("$ZodRecord",(t,e)=>{ge.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!So(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(...cr(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...cr(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>Gt(u,n,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(...cr(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...cr(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}}),Rd=S("$ZodEnum",(t,e)=>{ge.init(t,e);let r=ws(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Al.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}}),Cd=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}}),Od=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 Pr;return r.value=o,r}}),Id=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(`^(${Ts(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)}),Nd=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(`^(${Ts(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)}),Ad=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=>gx(s,e)):gx(o,e)}});zd=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))}),jd=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=>_x(s,t)):_x(o,t)}});Dd=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=>Gt(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=>Gt(s,n,vt()))},input:r.value}),r.issues=[]),r)}}),Md=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=>yx(s,e,n)):yx(o,e,n)}});Ld=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(xx):xx(o)}});Fd=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=>vx(s,r,n,t));vx(o,r,n,t)}})});function Tx(){return{localeError:OP()}}var CP,OP,Px=v(()=>{ur();CP=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},OP=()=>{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 ${CP(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${ga(n.values[0])}`:`Invalid option: expected one of ${fa(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":""}: ${fa(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 Ea=v(()=>{});function Rx(){return new Is}var Is,Kr,Zd=v(()=>{Is=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=Rx()});function Hd(t,e){return new t({type:"string",...q(e)})}function qd(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...q(e)})}function Ta(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...q(e)})}function Bd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...q(e)})}function Vd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...q(e)})}function Wd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...q(e)})}function Gd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...q(e)})}function Kd(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...q(e)})}function Jd(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...q(e)})}function Yd(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...q(e)})}function Xd(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...q(e)})}function Qd(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...q(e)})}function ep(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...q(e)})}function tp(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...q(e)})}function rp(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...q(e)})}function np(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...q(e)})}function op(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...q(e)})}function sp(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...q(e)})}function ip(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...q(e)})}function ap(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...q(e)})}function cp(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...q(e)})}function up(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...q(e)})}function lp(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...q(e)})}function Cx(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...q(e)})}function Ox(t,e){return new t({type:"string",format:"date",check:"string_format",...q(e)})}function Ix(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...q(e)})}function Nx(t,e){return new t({type:"string",format:"duration",check:"string_format",...q(e)})}function dp(t,e){return new t({type:"number",checks:[],...q(e)})}function pp(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...q(e)})}function mp(t,e){return new t({type:"boolean",...q(e)})}function fp(t,e){return new t({type:"null",...q(e)})}function hp(t){return new t({type:"unknown"})}function gp(t,e){return new t({type:"never",...q(e)})}function Pa(t,e){return new Jl({check:"less_than",...q(e),value:t,inclusive:!1})}function Ns(t,e){return new Jl({check:"less_than",...q(e),value:t,inclusive:!0})}function Ra(t,e){return new Yl({check:"greater_than",...q(e),value:t,inclusive:!1})}function As(t,e){return new Yl({check:"greater_than",...q(e),value:t,inclusive:!0})}function Ca(t,e){return new Xy({check:"multiple_of",...q(e),value:t})}function Oa(t,e){return new ex({check:"max_length",...q(e),maximum:t})}function ko(t,e){return new tx({check:"min_length",...q(e),minimum:t})}function Ia(t,e){return new rx({check:"length_equals",...q(e),length:t})}function _p(t,e){return new nx({check:"string_format",format:"regex",...q(e),pattern:t})}function yp(t){return new ox({check:"string_format",format:"lowercase",...q(t)})}function xp(t){return new sx({check:"string_format",format:"uppercase",...q(t)})}function vp(t,e){return new ix({check:"string_format",format:"includes",...q(e),includes:t})}function bp(t,e){return new ax({check:"string_format",format:"starts_with",...q(e),prefix:t})}function Sp(t,e){return new cx({check:"string_format",format:"ends_with",...q(e),suffix:t})}function Mn(t){return new ux({check:"overwrite",tx:t})}function kp(t){return Mn(e=>e.normalize(t))}function wp(){return Mn(t=>t.trim())}function $p(){return Mn(t=>t.toLowerCase())}function Ep(){return Mn(t=>t.toUpperCase())}function Ax(t,e,r){return new t({type:"array",element:e,...q(r)})}function Tp(t,e,r){let n=q(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Pp(t,e,r){return new t({type:"custom",check:"custom",fn:e,...q(r)})}var zx=v(()=>{va();ur()});var jx=v(()=>{});function Rp(t,e){if(t instanceof Is){let n=new Na(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 Na(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 Na,Dx=v(()=>{Zd();ur();Na=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:_,patterns:y,contentEncoding:x}=e._zod.bag;if(typeof h=="number"&&(m.minLength=h),typeof g=="number"&&(m.maxLength=g),_&&(m.format=s[_]??_,m.format===""&&delete m.format),x&&(m.contentEncoding=x),y&&y.size>0){let k=[...y];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:_,multipleOf:y,exclusiveMaximum:x,exclusiveMinimum:k}=e._zod.bag;typeof _=="string"&&_.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 y=="number"&&(m.multipleOf=y);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 y in h)m.properties[y]=this.process(h[y],{...d,path:[...d.path,"properties",y]});let g=new Set(Object.keys(h)),_=new Set([...g].filter(y=>{let x=o.shape[y]._zod;return this.io==="input"?x.optin===void 0:x.optout===void 0}));_.size>0&&(m.required=Array.from(_)),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]}),_=x=>"allOf"in x&&Object.keys(x).length===1,y=[..._(h)?h.allOf:[h],..._(g)?g.allOf:[g]];m.allOf=y;break}case"tuple":{let m=f;m.type="array";let h=o.items.map((y,x)=>this.process(y,{...d,path:[...d.path,"prefixItems",x]}));if(this.target==="draft-2020-12"?m.prefixItems=h:m.items=h,o.rest){let y=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?m.items=y:m.additionalItems=y}o.rest&&(m.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:_}=e._zod.bag;typeof g=="number"&&(m.minItems=g),typeof _=="number"&&(m.maxItems=_);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=ws(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:_,mime:y}=e._zod.bag;g!==void 0&&(h.minLength=g),_!==void 0&&(h.maxLength=_),y?y.length===1?(h.contentMediaType=y[0],Object.assign(m,h)):m.anyOf=y.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??(y=>y);if(h)return{ref:g(h)};let _=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=_,{defId:_,ref:`${g("__shared")}#/${d}/${_}`}}if(l[1]===o)return{ref:"#"};let 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>
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>
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 Mx=v(()=>{});var it=v(()=>{vo();Wl();Fl();Ex();va();Ql();ur();xa();Ea();Zd();Xl();jx();zx();Dx();Mx()});var Cp=v(()=>{it()});function Op(t,e){let r={type:"object",get shape(){return ne.assignProp(this,"shape",{...t}),this.shape},...ne.normalizeParams(e)};return new mR(r)}var pR,mR,Lx=v(()=>{it();it();Cp();pR=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)=>Zl(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>jn(t,r,n),t.parseAsync=async(r,n)=>ql(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))}),mR=S("ZodMiniObject",(t,e)=>{wa.init(t,e),pR.init(t,e),ne.defineLazy(t,"shape",()=>e.shape)})});var Fx=v(()=>{});var Ux=v(()=>{});var Zx=v(()=>{});var Hx=v(()=>{it();Cp();Lx();Fx();it();Ea();Ux();Zx()});var qx=v(()=>{Hx()});var Ip=v(()=>{qx()});function At(t){return!!t._zod}function Fn(t){let e=Object.values(t);if(e.length===0)return Op({});let r=e.every(At),n=e.every(o=>!At(o));if(r)return Op(t);if(n)return Tl(t);throw new Error("Mixed Zod versions detected in object shape.")}function Jr(t,e){return At(t)?jn(t,e):t.safeParse(e)}async function Aa(t,e){return At(t)?await Dn(t,e):await t.safeParseAsync(e)}function Yr(t){if(!t)return;let e;if(At(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function wo(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(At(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function za(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 Vx(t){return t.description}function Wx(t){if(At(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function ja(t){if(At(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var zs=v(()=>{Ss();Ip()});var Np=v(()=>{it()});var js={};Ze(js,{ZodISODate:()=>Kx,ZodISODateTime:()=>Gx,ZodISODuration:()=>Yx,ZodISOTime:()=>Jx,date:()=>zp,datetime:()=>Ap,duration:()=>Dp,time:()=>jp});function Ap(t){return Cx(Gx,t)}function zp(t){return Ox(Kx,t)}function jp(t){return Ix(Jx,t)}function Dp(t){return Nx(Yx,t)}var Gx,Kx,Jx,Yx,Mp=v(()=>{it();Lp();Gx=S("ZodISODateTime",(t,e)=>{bx.init(t,e),Re.init(t,e)});Kx=S("ZodISODate",(t,e)=>{Sx.init(t,e),Re.init(t,e)});Jx=S("ZodISOTime",(t,e)=>{kx.init(t,e),Re.init(t,e)});Yx=S("ZodISODuration",(t,e)=>{wx.init(t,e),Re.init(t,e)})});var Xx,xZ,Ds,Fp=v(()=>{it();it();Xx=(t,e)=>{_a.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Ll(t,r)},flatten:{value:r=>Ml(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},xZ=S("ZodError",Xx),Ds=S("ZodError",Xx,{Parent:Error})});var Qx,ev,tv,rv,Up=v(()=>{it();Fp();Qx=Ul(Ds),ev=Hl(Ds),tv=Bl(Ds),rv=Vl(Ds)});function b(t){return Hd(kR,t)}function pe(t){return dp(av,t)}function ov(t){return pp(UR,t)}function Be(t){return mp(ZR,t)}function cv(t){return fp(HR,t)}function Ce(){return hp(qR)}function VR(t){return gp(BR,t)}function oe(t,e){return Ax(WR,t,e)}function I(t,e){let r={type:"object",get shape(){return ne.assignProp(this,"shape",{...t}),this.shape},...ne.normalizeParams(e)};return new uv(r)}function at(t,e){return new uv({type:"object",get shape(){return ne.assignProp(this,"shape",{...t}),this.shape},catchall:Ce(),...ne.normalizeParams(e)})}function we(t,e){return new lv({type:"union",options:t,...ne.normalizeParams(e)})}function qp(t,e,r){return new GR({type:"union",options:e,discriminator:t,...ne.normalizeParams(r)})}function Ma(t,e){return new KR({type:"intersection",left:t,right:e})}function Se(t,e,r){return new JR({type:"record",keyType:t,valueType:e,...ne.normalizeParams(r)})}function ft(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Zp({type:"enum",entries:r,...ne.normalizeParams(e)})}function L(t,e){return new YR({type:"literal",values:Array.isArray(t)?t:[t],...ne.normalizeParams(e)})}function dv(t){return new XR({type:"transform",transform:t})}function Oe(t){return new pv({type:"optional",innerType:t})}function sv(t){return new QR({type:"nullable",innerType:t})}function tC(t,e){return new eC({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function nC(t,e){return new rC({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function oC(t,e){return new mv({type:"nonoptional",innerType:t,...ne.normalizeParams(e)})}function iC(t,e){return new sC({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}function Hp(t,e){return new aC({type:"pipe",in:t,out:e})}function uC(t){return new cC({type:"readonly",innerType:t})}function lC(t){let e=new Ge({check:"custom"});return e._zod.check=t,e}function hv(t,e){return Tp(fv,t??(()=>!0),e)}function dC(t,e={}){return Pp(fv,t,e)}function pC(t){let e=lC(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(ne.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(ne.issue(o))}},t(r.value,r)));return e}function Bp(t,e){return Hp(dv(t),e)}var Ae,iv,kR,Re,wR,nv,Da,$R,ER,TR,PR,RR,CR,OR,IR,NR,AR,zR,jR,DR,MR,LR,FR,av,UR,ZR,HR,qR,BR,WR,uv,lv,GR,KR,JR,Zp,YR,XR,pv,QR,eC,rC,mv,sC,aC,cC,fv,Lp=v(()=>{it();it();Np();Mp();Up();Ae=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)=>Qx(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>tv(t,r,n),t.parseAsync=async(r,n)=>ev(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>rv(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(dC(r,n)),t.superRefine=r=>t.check(pC(r)),t.overwrite=r=>t.check(Mn(r)),t.optional=()=>Oe(t),t.nullable=()=>sv(t),t.nullish=()=>Oe(sv(t)),t.nonoptional=r=>oC(t,r),t.array=()=>oe(t),t.or=r=>we([t,r]),t.and=r=>Ma(t,r),t.transform=r=>Hp(t,dv(r)),t.default=r=>tC(t,r),t.prefault=r=>nC(t,r),t.catch=r=>iC(t,r),t.pipe=r=>Hp(t,r),t.readonly=()=>uC(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)),iv=S("_ZodString",(t,e)=>{Os.init(t,e),Ae.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(_p(...n)),t.includes=(...n)=>t.check(vp(...n)),t.startsWith=(...n)=>t.check(bp(...n)),t.endsWith=(...n)=>t.check(Sp(...n)),t.min=(...n)=>t.check(ko(...n)),t.max=(...n)=>t.check(Oa(...n)),t.length=(...n)=>t.check(Ia(...n)),t.nonempty=(...n)=>t.check(ko(1,...n)),t.lowercase=n=>t.check(yp(n)),t.uppercase=n=>t.check(xp(n)),t.trim=()=>t.check(wp()),t.normalize=(...n)=>t.check(kp(...n)),t.toLowerCase=()=>t.check($p()),t.toUpperCase=()=>t.check(Ep())}),kR=S("ZodString",(t,e)=>{Os.init(t,e),iv.init(t,e),t.email=r=>t.check(qd(wR,r)),t.url=r=>t.check(Kd($R,r)),t.jwt=r=>t.check(lp(FR,r)),t.emoji=r=>t.check(Jd(ER,r)),t.guid=r=>t.check(Ta(nv,r)),t.uuid=r=>t.check(Bd(Da,r)),t.uuidv4=r=>t.check(Vd(Da,r)),t.uuidv6=r=>t.check(Wd(Da,r)),t.uuidv7=r=>t.check(Gd(Da,r)),t.nanoid=r=>t.check(Yd(TR,r)),t.guid=r=>t.check(Ta(nv,r)),t.cuid=r=>t.check(Xd(PR,r)),t.cuid2=r=>t.check(Qd(RR,r)),t.ulid=r=>t.check(ep(CR,r)),t.base64=r=>t.check(ap(DR,r)),t.base64url=r=>t.check(cp(MR,r)),t.xid=r=>t.check(tp(OR,r)),t.ksuid=r=>t.check(rp(IR,r)),t.ipv4=r=>t.check(np(NR,r)),t.ipv6=r=>t.check(op(AR,r)),t.cidrv4=r=>t.check(sp(zR,r)),t.cidrv6=r=>t.check(ip(jR,r)),t.e164=r=>t.check(up(LR,r)),t.datetime=r=>t.check(Ap(r)),t.date=r=>t.check(zp(r)),t.time=r=>t.check(jp(r)),t.duration=r=>t.check(Dp(r))});Re=S("ZodStringFormat",(t,e)=>{be.init(t,e),iv.init(t,e)}),wR=S("ZodEmail",(t,e)=>{nd.init(t,e),Re.init(t,e)}),nv=S("ZodGUID",(t,e)=>{td.init(t,e),Re.init(t,e)}),Da=S("ZodUUID",(t,e)=>{rd.init(t,e),Re.init(t,e)}),$R=S("ZodURL",(t,e)=>{od.init(t,e),Re.init(t,e)}),ER=S("ZodEmoji",(t,e)=>{sd.init(t,e),Re.init(t,e)}),TR=S("ZodNanoID",(t,e)=>{id.init(t,e),Re.init(t,e)}),PR=S("ZodCUID",(t,e)=>{ad.init(t,e),Re.init(t,e)}),RR=S("ZodCUID2",(t,e)=>{cd.init(t,e),Re.init(t,e)}),CR=S("ZodULID",(t,e)=>{ud.init(t,e),Re.init(t,e)}),OR=S("ZodXID",(t,e)=>{ld.init(t,e),Re.init(t,e)}),IR=S("ZodKSUID",(t,e)=>{dd.init(t,e),Re.init(t,e)}),NR=S("ZodIPv4",(t,e)=>{pd.init(t,e),Re.init(t,e)}),AR=S("ZodIPv6",(t,e)=>{md.init(t,e),Re.init(t,e)}),zR=S("ZodCIDRv4",(t,e)=>{fd.init(t,e),Re.init(t,e)}),jR=S("ZodCIDRv6",(t,e)=>{hd.init(t,e),Re.init(t,e)}),DR=S("ZodBase64",(t,e)=>{gd.init(t,e),Re.init(t,e)}),MR=S("ZodBase64URL",(t,e)=>{_d.init(t,e),Re.init(t,e)}),LR=S("ZodE164",(t,e)=>{yd.init(t,e),Re.init(t,e)}),FR=S("ZodJWT",(t,e)=>{xd.init(t,e),Re.init(t,e)}),av=S("ZodNumber",(t,e)=>{ka.init(t,e),Ae.init(t,e),t.gt=(n,o)=>t.check(Ra(n,o)),t.gte=(n,o)=>t.check(As(n,o)),t.min=(n,o)=>t.check(As(n,o)),t.lt=(n,o)=>t.check(Pa(n,o)),t.lte=(n,o)=>t.check(Ns(n,o)),t.max=(n,o)=>t.check(Ns(n,o)),t.int=n=>t.check(ov(n)),t.safe=n=>t.check(ov(n)),t.positive=n=>t.check(Ra(0,n)),t.nonnegative=n=>t.check(As(0,n)),t.negative=n=>t.check(Pa(0,n)),t.nonpositive=n=>t.check(Ns(0,n)),t.multipleOf=(n,o)=>t.check(Ca(n,o)),t.step=(n,o)=>t.check(Ca(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});UR=S("ZodNumberFormat",(t,e)=>{vd.init(t,e),av.init(t,e)});ZR=S("ZodBoolean",(t,e)=>{bd.init(t,e),Ae.init(t,e)});HR=S("ZodNull",(t,e)=>{Sd.init(t,e),Ae.init(t,e)});qR=S("ZodUnknown",(t,e)=>{kd.init(t,e),Ae.init(t,e)});BR=S("ZodNever",(t,e)=>{wd.init(t,e),Ae.init(t,e)});WR=S("ZodArray",(t,e)=>{$d.init(t,e),Ae.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(ko(r,n)),t.nonempty=r=>t.check(ko(1,r)),t.max=(r,n)=>t.check(Oa(r,n)),t.length=(r,n)=>t.check(Ia(r,n)),t.unwrap=()=>t.element});uv=S("ZodObject",(t,e)=>{wa.init(t,e),Ae.init(t,e),ne.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>ft(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:Ce()}),t.loose=()=>t.clone({...t._zod.def,catchall:Ce()}),t.strict=()=>t.clone({...t._zod.def,catchall:VR()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>ne.extend(t,r),t.merge=r=>ne.merge(t,r),t.pick=r=>ne.pick(t,r),t.omit=r=>ne.omit(t,r),t.partial=(...r)=>ne.partial(pv,t,r[0]),t.required=(...r)=>ne.required(mv,t,r[0])});lv=S("ZodUnion",(t,e)=>{$a.init(t,e),Ae.init(t,e),t.options=e.options});GR=S("ZodDiscriminatedUnion",(t,e)=>{lv.init(t,e),Ed.init(t,e)});KR=S("ZodIntersection",(t,e)=>{Td.init(t,e),Ae.init(t,e)});JR=S("ZodRecord",(t,e)=>{Pd.init(t,e),Ae.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});Zp=S("ZodEnum",(t,e)=>{Rd.init(t,e),Ae.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 Zp({...e,checks:[],...ne.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 Zp({...e,checks:[],...ne.normalizeParams(o),entries:s})}});YR=S("ZodLiteral",(t,e)=>{Cd.init(t,e),Ae.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]}})});XR=S("ZodTransform",(t,e)=>{Od.init(t,e),Ae.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(ne.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(ne.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});pv=S("ZodOptional",(t,e)=>{Id.init(t,e),Ae.init(t,e),t.unwrap=()=>t._zod.def.innerType});QR=S("ZodNullable",(t,e)=>{Nd.init(t,e),Ae.init(t,e),t.unwrap=()=>t._zod.def.innerType});eC=S("ZodDefault",(t,e)=>{Ad.init(t,e),Ae.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});rC=S("ZodPrefault",(t,e)=>{zd.init(t,e),Ae.init(t,e),t.unwrap=()=>t._zod.def.innerType});mv=S("ZodNonOptional",(t,e)=>{jd.init(t,e),Ae.init(t,e),t.unwrap=()=>t._zod.def.innerType});sC=S("ZodCatch",(t,e)=>{Dd.init(t,e),Ae.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});aC=S("ZodPipe",(t,e)=>{Md.init(t,e),Ae.init(t,e),t.in=e.in,t.out=e.out});cC=S("ZodReadonly",(t,e)=>{Ld.init(t,e),Ae.init(t,e)});fv=S("ZodCustom",(t,e)=>{Fd.init(t,e),Ae.init(t,e)})});var gv=v(()=>{});var _v=v(()=>{});var yv=v(()=>{it();Lp();Np();Fp();Up();gv();it();Px();Ea();Mp();_v();vt(Tx())});var xv=v(()=>{yv()});var vv=v(()=>{xv()});function Dv(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Mv(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var Wp,bv,Xr,Fa,qe,Sv,kv,zZ,hC,gC,Gp,St,Ms,wv,Ke,zt,jt,Je,Ua,$v,Kp,Ev,Tv,Jp,Ls,Z,Yp,Pv,Rv,jZ,Za,_C,Ha,yC,Fs,$o,Cv,xC,vC,bC,SC,kC,wC,Xp,$C,EC,Qp,qa,TC,PC,Ba,RC,Us,Zs,CC,Hs,Eo,OC,qs,Va,Wa,Ga,DZ,Ka,Ja,Ya,Ov,Iv,Nv,em,Av,Bs,To,zv,IC,Po,NC,Ro,AC,tm,zC,Xa,jC,DC,MC,LC,FC,UC,ZC,HC,qC,BC,Co,VC,WC,Qa,rm,nm,om,GC,KC,JC,sm,YC,XC,QC,eO,tO,jv,ec,rO,tc,MZ,nO,Oo,oO,LZ,Vs,sO,im,iO,aO,cO,uO,lO,dO,pO,La,mO,fO,hO,Ws,am,gO,_O,yO,xO,vO,bO,SO,kO,wO,$O,EO,TO,PO,RO,CO,OO,IO,NO,Io,AO,zO,jO,rc,DO,MO,LO,cm,FO,FZ,UZ,ZZ,HZ,qZ,BZ,D,Vp,Un=v(()=>{vv();Wp="2025-11-25",bv=[Wp,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Xr="io.modelcontextprotocol/related-task",Fa="2.0",qe=hv(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Sv=we([b(),pe().int()]),kv=b(),zZ=at({ttl:pe().optional(),pollInterval:pe().optional()}),hC=I({ttl:pe().optional()}),gC=I({taskId:b()}),Gp=at({progressToken:Sv.optional(),[Xr]:gC.optional()}),St=I({_meta:Gp.optional()}),Ms=St.extend({task:hC.optional()}),wv=t=>Ms.safeParse(t).success,Ke=I({method:b(),params:St.loose().optional()}),zt=I({_meta:Gp.optional()}),jt=I({method:b(),params:zt.loose().optional()}),Je=at({_meta:Gp.optional()}),Ua=we([b(),pe().int()]),$v=I({jsonrpc:L(Fa),id:Ua,...Ke.shape}).strict(),Kp=t=>$v.safeParse(t).success,Ev=I({jsonrpc:L(Fa),...jt.shape}).strict(),Tv=t=>Ev.safeParse(t).success,Jp=I({jsonrpc:L(Fa),id:Ua,result:Je}).strict(),Ls=t=>Jp.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={}));Yp=I({jsonrpc:L(Fa),id:Ua.optional(),error:I({code:pe().int(),message:b(),data:Ce().optional()})}).strict(),Pv=t=>Yp.safeParse(t).success,Rv=we([$v,Ev,Jp,Yp]),jZ=we([Jp,Yp]),Za=Je.strict(),_C=zt.extend({requestId:Ua.optional(),reason:b().optional()}),Ha=jt.extend({method:L("notifications/cancelled"),params:_C}),yC=I({src:b(),mimeType:b().optional(),sizes:oe(b()).optional(),theme:ft(["light","dark"]).optional()}),Fs=I({icons:oe(yC).optional()}),$o=I({name:b(),title:b().optional()}),Cv=$o.extend({...$o.shape,...Fs.shape,version:b(),websiteUrl:b().optional(),description:b().optional()}),xC=Ma(I({applyDefaults:Be().optional()}),Se(b(),Ce())),vC=Bp(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Ma(I({form:xC.optional(),url:qe.optional()}),Se(b(),Ce()).optional())),bC=at({list:qe.optional(),cancel:qe.optional(),requests:at({sampling:at({createMessage:qe.optional()}).optional(),elicitation:at({create:qe.optional()}).optional()}).optional()}),SC=at({list:qe.optional(),cancel:qe.optional(),requests:at({tools:at({call:qe.optional()}).optional()}).optional()}),kC=I({experimental:Se(b(),qe).optional(),sampling:I({context:qe.optional(),tools:qe.optional()}).optional(),elicitation:vC.optional(),roots:I({listChanged:Be().optional()}).optional(),tasks:bC.optional(),extensions:Se(b(),qe).optional()}),wC=St.extend({protocolVersion:b(),capabilities:kC,clientInfo:Cv}),Xp=Ke.extend({method:L("initialize"),params:wC}),$C=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:SC.optional(),extensions:Se(b(),qe).optional()}),EC=Je.extend({protocolVersion:b(),capabilities:$C,serverInfo:Cv,instructions:b().optional()}),Qp=jt.extend({method:L("notifications/initialized"),params:zt.optional()}),qa=Ke.extend({method:L("ping"),params:St.optional()}),TC=I({progress:pe(),total:Oe(pe()),message:Oe(b())}),PC=I({...zt.shape,...TC.shape,progressToken:Sv}),Ba=jt.extend({method:L("notifications/progress"),params:PC}),RC=St.extend({cursor:kv.optional()}),Us=Ke.extend({params:RC.optional()}),Zs=Je.extend({nextCursor:kv.optional()}),CC=ft(["working","input_required","completed","failed","cancelled"]),Hs=I({taskId:b(),status:CC,ttl:we([pe(),cv()]),createdAt:b(),lastUpdatedAt:b(),pollInterval:Oe(pe()),statusMessage:Oe(b())}),Eo=Je.extend({task:Hs}),OC=zt.merge(Hs),qs=jt.extend({method:L("notifications/tasks/status"),params:OC}),Va=Ke.extend({method:L("tasks/get"),params:St.extend({taskId:b()})}),Wa=Je.merge(Hs),Ga=Ke.extend({method:L("tasks/result"),params:St.extend({taskId:b()})}),DZ=Je.loose(),Ka=Us.extend({method:L("tasks/list")}),Ja=Zs.extend({tasks:oe(Hs)}),Ya=Ke.extend({method:L("tasks/cancel"),params:St.extend({taskId:b()})}),Ov=Je.merge(Hs),Iv=I({uri:b(),mimeType:Oe(b()),_meta:Se(b(),Ce()).optional()}),Nv=Iv.extend({text:b()}),em=b().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Av=Iv.extend({blob:em}),Bs=ft(["user","assistant"]),To=I({audience:oe(Bs).optional(),priority:pe().min(0).max(1).optional(),lastModified:js.datetime({offset:!0}).optional()}),zv=I({...$o.shape,...Fs.shape,uri:b(),description:Oe(b()),mimeType:Oe(b()),size:Oe(pe()),annotations:To.optional(),_meta:Oe(at({}))}),IC=I({...$o.shape,...Fs.shape,uriTemplate:b(),description:Oe(b()),mimeType:Oe(b()),annotations:To.optional(),_meta:Oe(at({}))}),Po=Us.extend({method:L("resources/list")}),NC=Zs.extend({resources:oe(zv)}),Ro=Us.extend({method:L("resources/templates/list")}),AC=Zs.extend({resourceTemplates:oe(IC)}),tm=St.extend({uri:b()}),zC=tm,Xa=Ke.extend({method:L("resources/read"),params:zC}),jC=Je.extend({contents:oe(we([Nv,Av]))}),DC=jt.extend({method:L("notifications/resources/list_changed"),params:zt.optional()}),MC=tm,LC=Ke.extend({method:L("resources/subscribe"),params:MC}),FC=tm,UC=Ke.extend({method:L("resources/unsubscribe"),params:FC}),ZC=zt.extend({uri:b()}),HC=jt.extend({method:L("notifications/resources/updated"),params:ZC}),qC=I({name:b(),description:Oe(b()),required:Oe(Be())}),BC=I({...$o.shape,...Fs.shape,description:Oe(b()),arguments:Oe(oe(qC)),_meta:Oe(at({}))}),Co=Us.extend({method:L("prompts/list")}),VC=Zs.extend({prompts:oe(BC)}),WC=St.extend({name:b(),arguments:Se(b(),b()).optional()}),Qa=Ke.extend({method:L("prompts/get"),params:WC}),rm=I({type:L("text"),text:b(),annotations:To.optional(),_meta:Se(b(),Ce()).optional()}),nm=I({type:L("image"),data:em,mimeType:b(),annotations:To.optional(),_meta:Se(b(),Ce()).optional()}),om=I({type:L("audio"),data:em,mimeType:b(),annotations:To.optional(),_meta:Se(b(),Ce()).optional()}),GC=I({type:L("tool_use"),name:b(),id:b(),input:Se(b(),Ce()),_meta:Se(b(),Ce()).optional()}),KC=I({type:L("resource"),resource:we([Nv,Av]),annotations:To.optional(),_meta:Se(b(),Ce()).optional()}),JC=zv.extend({type:L("resource_link")}),sm=we([rm,nm,om,JC,KC]),YC=I({role:Bs,content:sm}),XC=Je.extend({description:b().optional(),messages:oe(YC)}),QC=jt.extend({method:L("notifications/prompts/list_changed"),params:zt.optional()}),eO=I({title:b().optional(),readOnlyHint:Be().optional(),destructiveHint:Be().optional(),idempotentHint:Be().optional(),openWorldHint:Be().optional()}),tO=I({taskSupport:ft(["required","optional","forbidden"]).optional()}),jv=I({...$o.shape,...Fs.shape,description:b().optional(),inputSchema:I({type:L("object"),properties:Se(b(),qe).optional(),required:oe(b()).optional()}).catchall(Ce()),outputSchema:I({type:L("object"),properties:Se(b(),qe).optional(),required:oe(b()).optional()}).catchall(Ce()).optional(),annotations:eO.optional(),execution:tO.optional(),_meta:Se(b(),Ce()).optional()}),ec=Us.extend({method:L("tools/list")}),rO=Zs.extend({tools:oe(jv)}),tc=Je.extend({content:oe(sm).default([]),structuredContent:Se(b(),Ce()).optional(),isError:Be().optional()}),MZ=tc.or(Je.extend({toolResult:Ce()})),nO=Ms.extend({name:b(),arguments:Se(b(),Ce()).optional()}),Oo=Ke.extend({method:L("tools/call"),params:nO}),oO=jt.extend({method:L("notifications/tools/list_changed"),params:zt.optional()}),LZ=I({autoRefresh:Be().default(!0),debounceMs:pe().int().nonnegative().default(300)}),Vs=ft(["debug","info","notice","warning","error","critical","alert","emergency"]),sO=St.extend({level:Vs}),im=Ke.extend({method:L("logging/setLevel"),params:sO}),iO=zt.extend({level:Vs,logger:b().optional(),data:Ce()}),aO=jt.extend({method:L("notifications/message"),params:iO}),cO=I({name:b().optional()}),uO=I({hints:oe(cO).optional(),costPriority:pe().min(0).max(1).optional(),speedPriority:pe().min(0).max(1).optional(),intelligencePriority:pe().min(0).max(1).optional()}),lO=I({mode:ft(["auto","required","none"]).optional()}),dO=I({type:L("tool_result"),toolUseId:b().describe("The unique identifier for the corresponding tool call."),content:oe(sm).default([]),structuredContent:I({}).loose().optional(),isError:Be().optional(),_meta:Se(b(),Ce()).optional()}),pO=qp("type",[rm,nm,om]),La=qp("type",[rm,nm,om,GC,dO]),mO=I({role:Bs,content:we([La,oe(La)]),_meta:Se(b(),Ce()).optional()}),fO=Ms.extend({messages:oe(mO),modelPreferences:uO.optional(),systemPrompt:b().optional(),includeContext:ft(["none","thisServer","allServers"]).optional(),temperature:pe().optional(),maxTokens:pe().int(),stopSequences:oe(b()).optional(),metadata:qe.optional(),tools:oe(jv).optional(),toolChoice:lO.optional()}),hO=Ke.extend({method:L("sampling/createMessage"),params:fO}),Ws=Je.extend({model:b(),stopReason:Oe(ft(["endTurn","stopSequence","maxTokens"]).or(b())),role:Bs,content:pO}),am=Je.extend({model:b(),stopReason:Oe(ft(["endTurn","stopSequence","maxTokens","toolUse"]).or(b())),role:Bs,content:we([La,oe(La)])}),gO=I({type:L("boolean"),title:b().optional(),description:b().optional(),default:Be().optional()}),_O=I({type:L("string"),title:b().optional(),description:b().optional(),minLength:pe().optional(),maxLength:pe().optional(),format:ft(["email","uri","date","date-time"]).optional(),default:b().optional()}),yO=I({type:ft(["number","integer"]),title:b().optional(),description:b().optional(),minimum:pe().optional(),maximum:pe().optional(),default:pe().optional()}),xO=I({type:L("string"),title:b().optional(),description:b().optional(),enum:oe(b()),default:b().optional()}),vO=I({type:L("string"),title:b().optional(),description:b().optional(),oneOf:oe(I({const:b(),title:b()})),default:b().optional()}),bO=I({type:L("string"),title:b().optional(),description:b().optional(),enum:oe(b()),enumNames:oe(b()).optional(),default:b().optional()}),SO=we([xO,vO]),kO=I({type:L("array"),title:b().optional(),description:b().optional(),minItems:pe().optional(),maxItems:pe().optional(),items:I({type:L("string"),enum:oe(b())}),default:oe(b()).optional()}),wO=I({type:L("array"),title:b().optional(),description:b().optional(),minItems:pe().optional(),maxItems:pe().optional(),items:I({anyOf:oe(I({const:b(),title:b()}))}),default:oe(b()).optional()}),$O=we([kO,wO]),EO=we([bO,SO,$O]),TO=we([EO,gO,_O,yO]),PO=Ms.extend({mode:L("form").optional(),message:b(),requestedSchema:I({type:L("object"),properties:Se(b(),TO),required:oe(b()).optional()})}),RO=Ms.extend({mode:L("url"),message:b(),elicitationId:b(),url:b().url()}),CO=we([PO,RO]),OO=Ke.extend({method:L("elicitation/create"),params:CO}),IO=zt.extend({elicitationId:b()}),NO=jt.extend({method:L("notifications/elicitation/complete"),params:IO}),Io=Je.extend({action:ft(["accept","decline","cancel"]),content:Bp(t=>t===null?void 0:t,Se(b(),we([b(),pe(),Be(),oe(b())])).optional())}),AO=I({type:L("ref/resource"),uri:b()}),zO=I({type:L("ref/prompt"),name:b()}),jO=St.extend({ref:we([zO,AO]),argument:I({name:b(),value:b()}),context:I({arguments:Se(b(),b()).optional()}).optional()}),rc=Ke.extend({method:L("completion/complete"),params:jO});DO=Je.extend({completion:at({values:oe(b()).max(100),total:Oe(pe().int()),hasMore:Oe(Be())})}),MO=I({uri:b().startsWith("file://"),name:b().optional(),_meta:Se(b(),Ce()).optional()}),LO=Ke.extend({method:L("roots/list"),params:St.optional()}),cm=Je.extend({roots:oe(MO)}),FO=jt.extend({method:L("notifications/roots/list_changed"),params:zt.optional()}),FZ=we([qa,Xp,rc,im,Qa,Co,Po,Ro,Xa,LC,UC,Oo,ec,Va,Ga,Ka,Ya]),UZ=we([Ha,Ba,Qp,FO,qs]),ZZ=we([Za,Ws,am,Io,cm,Wa,Ja,Eo]),HZ=we([qa,hO,OO,LO,Va,Ga,Ka,Ya]),qZ=we([Ha,Ba,aO,HC,DC,oO,QC,qs,NO]),BZ=we([Za,EC,DO,XC,VC,NC,AC,jC,tc,rO,Wa,Ja,Eo]),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 Vp(o.elicitations,r)}return new t(e,r,n)}},Vp=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 Lv=v(()=>{});var Uv,Fv,Zv,nc=v(()=>{Uv=Symbol("Let zodToJsonSchema decide on which parser to use"),Fv={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"},Zv=t=>typeof t=="string"?{...Fv,name:t}:{...Fv,...t}});var Hv,um=v(()=>{nc();Hv=t=>{let e=Zv(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 lm(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function se(t,e,r,n,o){t[e]=r,lm(t,e,n,o)}var en=v(()=>{});var oc,sc=v(()=>{oc=(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 Ie(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?oc(e,t.currentPath):e.join("/")}}var Dt=v(()=>{sc()});function qv(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&&se(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&se(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(se(r,"minItems",t.exactLength.value,t.exactLength.message,e),se(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}var dm=v(()=>{Ss();en();Ue()});function Bv(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?se(r,"minimum",n.value,n.message,e):se(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),se(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?se(r,"maximum",n.value,n.message,e):se(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),se(r,"maximum",n.value,n.message,e));break;case"multipleOf":se(r,"multipleOf",n.value,n.message,e);break}return r}var pm=v(()=>{en()});function Vv(){return{type:"boolean"}}var mm=v(()=>{});function ic(t,e){return V(t.type._def,e)}var ac=v(()=>{Ue()});var Wv,fm=v(()=>{Ue();Wv=(t,e)=>V(t.innerType._def,e)});function hm(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>hm(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 UO(t,e)}}var UO,gm=v(()=>{en();UO=(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":se(r,"minimum",n.value,n.message,e);break;case"max":se(r,"maximum",n.value,n.message,e);break}return r}});function Gv(t,e){return{...V(t.innerType._def,e),default:t.defaultValue()}}var _m=v(()=>{Ue()});function Kv(t,e){return e.effectStrategy==="input"?V(t.schema._def,e):Ie(e)}var ym=v(()=>{Ue();Dt()});function Jv(t){return{type:"string",enum:Array.from(t.values)}}var xm=v(()=>{});function Yv(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(ZO(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 ZO,vm=v(()=>{Ue();ZO=t=>"type"in t&&t.type==="string"?!1:"allOf"in t});function Xv(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 bm=v(()=>{});function cc(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":se(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":se(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":Jt(r,"email",n.message,e);break;case"format:idn-email":Jt(r,"idn-email",n.message,e);break;case"pattern:zod":ct(r,Kt.email,n.message,e);break}break;case"url":Jt(r,"uri",n.message,e);break;case"uuid":Jt(r,"uuid",n.message,e);break;case"regex":ct(r,n.regex,n.message,e);break;case"cuid":ct(r,Kt.cuid,n.message,e);break;case"cuid2":ct(r,Kt.cuid2,n.message,e);break;case"startsWith":ct(r,RegExp(`^${km(n.value,e)}`),n.message,e);break;case"endsWith":ct(r,RegExp(`${km(n.value,e)}$`),n.message,e);break;case"datetime":Jt(r,"date-time",n.message,e);break;case"date":Jt(r,"date",n.message,e);break;case"time":Jt(r,"time",n.message,e);break;case"duration":Jt(r,"duration",n.message,e);break;case"length":se(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),se(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{ct(r,RegExp(km(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&Jt(r,"ipv4",n.message,e),n.version!=="v4"&&Jt(r,"ipv6",n.message,e);break}case"base64url":ct(r,Kt.base64url,n.message,e);break;case"jwt":ct(r,Kt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&ct(r,Kt.ipv4Cidr,n.message,e),n.version!=="v4"&&ct(r,Kt.ipv6Cidr,n.message,e);break}case"emoji":ct(r,Kt.emoji(),n.message,e);break;case"ulid":{ct(r,Kt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{Jt(r,"binary",n.message,e);break}case"contentEncoding:base64":{se(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{ct(r,Kt.base64,n.message,e);break}}break}case"nanoid":ct(r,Kt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function km(t,e){return e.patternStrategy==="escape"?qO(t):t}function qO(t){let e="";for(let r=0;r<t.length;r++)HO.has(t[r])||(e+="\\"),e+=t[r];return e}function Jt(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}}})):se(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:Qv(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):se(t,"pattern",Qv(e,n),r,n)}function Qv(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 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
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 Sm,Kt,HO,uc=v(()=>{en();Kt={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:()=>(Sm===void 0&&(Sm=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Sm),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-_]*$/};HO=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789")});function lc(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]})??Ie(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}=cc(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}=ic(t.keyType._def,e);return{...r,propertyNames:o}}}return r}var dc=v(()=>{Ss();Ue();uc();ac();Dt()});function eb(t,e){if(e.mapStrategy==="record")return lc(t,e);let r=V(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||Ie(e),n=V(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||Ie(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}var wm=v(()=>{Ue();dc();Dt()});function tb(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 $m=v(()=>{});function rb(t){return t.target==="openAi"?void 0:{not:Ie({...t,currentPath:[...t.currentPath,"not"]})}}var Em=v(()=>{Dt()});function nb(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Tm=v(()=>{});function sb(t,e){if(e.target==="openApi3")return ob(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Gs&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Gs[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 ob(t,e)}var Gs,ob,pc=v(()=>{Ue();Gs={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};ob=(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 ib(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:Gs[t.innerType._def.typeName],nullable:!0}:{type:[Gs[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 Pm=v(()=>{Ue();pc()});function ab(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",lm(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?se(r,"minimum",n.value,n.message,e):se(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),se(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?se(r,"maximum",n.value,n.message,e):se(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),se(r,"maximum",n.value,n.message,e));break;case"multipleOf":se(r,"multipleOf",n.value,n.message,e);break}return r}var Rm=v(()=>{en()});function cb(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=VO(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=BO(t,e);return i!==void 0&&(n.additionalProperties=i),n}function BO(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 VO(t){try{return t.isOptional()}catch{return!0}}var Cm=v(()=>{Ue()});var ub,Om=v(()=>{Ue();Dt();ub=(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:Ie(e)},r]}:Ie(e)}});var lb,Im=v(()=>{Ue();lb=(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 db(t,e){return V(t.type._def,e)}var Nm=v(()=>{Ue()});function pb(t,e){let n={type:"array",uniqueItems:!0,items:V(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&se(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&se(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}var Am=v(()=>{en();Ue()});function mb(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 zm=v(()=>{Ue()});function fb(t){return{not:Ie(t)}}var jm=v(()=>{Dt()});function hb(t){return Ie(t)}var Dm=v(()=>{Dt()});var gb,Mm=v(()=>{Ue();gb=(t,e)=>V(t.innerType._def,e)});var _b,Lm=v(()=>{Ss();Dt();dm();pm();mm();ac();fm();gm();_m();ym();xm();vm();bm();wm();$m();Em();Tm();Pm();Rm();Cm();Om();Im();Nm();dc();Am();uc();zm();jm();pc();Dm();Mm();_b=(t,e,r)=>{switch(e){case $.ZodString:return cc(t,r);case $.ZodNumber:return ab(t,r);case $.ZodObject:return cb(t,r);case $.ZodBigInt:return Bv(t,r);case $.ZodBoolean:return Vv();case $.ZodDate:return hm(t,r);case $.ZodUndefined:return fb(r);case $.ZodNull:return nb(r);case $.ZodArray:return qv(t,r);case $.ZodUnion:case $.ZodDiscriminatedUnion:return sb(t,r);case $.ZodIntersection:return Yv(t,r);case $.ZodTuple:return mb(t,r);case $.ZodRecord:return lc(t,r);case $.ZodLiteral:return Xv(t,r);case $.ZodEnum:return Jv(t);case $.ZodNativeEnum:return tb(t);case $.ZodNullable:return ib(t,r);case $.ZodOptional:return ub(t,r);case $.ZodMap:return eb(t,r);case $.ZodSet:return pb(t,r);case $.ZodLazy:return()=>t.getter()._def;case $.ZodPromise:return db(t,r);case $.ZodNaN:case $.ZodNever:return rb(r);case $.ZodEffects:return Kv(t,r);case $.ZodAny:return Ie(r);case $.ZodUnknown:return hb(r);case $.ZodDefault:return Gv(t,r);case $.ZodBranded:return ic(t,r);case $.ZodReadonly:return gb(t,r);case $.ZodCatch:return Wv(t,r);case $.ZodPipeline:return lb(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!==Uv)return a}if(n&&!r){let a=WO(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=_b(t,t.typeName,e),i=typeof s=="function"?V(s(),e):s;if(i&&GO(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var WO,GO,Ue=v(()=>{nc();Lm();sc();Dt();WO=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:oc(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`),Ie(e)):e.$refStrategy==="seen"?Ie(e):void 0}},GO=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r)});var yb=v(()=>{});var Fm,Um=v(()=>{Ue();um();Dt();Fm=(t,e)=>{let r=Hv(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)??Ie(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)??Ie(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 xb=v(()=>{nc();um();en();sc();Ue();yb();Dt();dm();pm();mm();ac();fm();gm();_m();ym();xm();vm();bm();wm();$m();Em();Tm();Pm();Rm();Cm();Om();Im();Nm();Mm();dc();Am();uc();zm();jm();pc();Dm();Lm();Um();Um()});function KO(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function Zm(t,e){return At(t)?Rp(t,{target:KO(e?.target),io:e?.pipeStrategy??"input"}):Fm(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Hm(t){let r=Yr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ja(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function qm(t,e){let r=Jr(t,e);if(!r.success)throw r.error;return r.data}var Bm=v(()=>{Ip();zs();xb()});function vb(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function bb(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];vb(i)&&vb(s)?r[o]={...i,...s}:r[o]=s}return r}var JO,mc,Sb=v(()=>{zs();Un();Lv();Bm();JO=6e4,mc=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(Ha,r=>{this._oncancel(r)}),this.setNotificationHandler(Ba,r=>{this._onprogress(r)}),this.setRequestHandler(qa,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Va,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(Ga,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(Ka,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(Ya,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),Ls(s)||Pv(s)?this._onresponse(s):Kp(s)?this._onrequest(s,i):Tv(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=wv(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),Ls(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(Ls(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),Ls(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,Eo,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=y=>{l(y)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(y){d(y);return}n?.signal?.throwIfAborted();let 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=y=>{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(y)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(k=>this._onerror(new Error(`Failed to send cancellation: ${k}`)));let x=y instanceof D?y:new D(Z.RequestTimeout,String(y));l(x)};this._responseHandlers.set(p,y=>{if(!n?.signal?.aborted){if(y instanceof Error)return l(y);try{let x=Jr(r,y.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??JO,g=()=>m(D.fromError(Z.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(p,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){let y=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,y),this._enqueueTaskMessage(_,{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(y=>{this._cleanupTimeout(p),l(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Wa,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},Ja,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Ov,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=Hm(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=qm(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=Hm(e);this._notificationHandlers.set(n,o=>{let s=qm(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"&&Kp(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=qs.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=qs.parse({method:"notifications/tasks/status",params:c});await this.notification(u),Qr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}}});var Ys=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 Ks=class{};de._CodeOrName=Ks;de.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Zn=class extends Ks{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 Ks{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 kb(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Wm(r,e[n]),r.push(t[++n]);return new Mt(r)}de._=kb;var Vm=new Mt("+");function wb(t,...e){let r=[Js(t[0])],n=0;for(;n<e.length;)r.push(Vm),Wm(r,e[n]),r.push(Vm,Js(t[++n]));return YO(r),new Mt(r)}de.str=wb;function Wm(t,e){e instanceof Mt?t.push(...e._items):e instanceof Zn?t.push(e):t.push(eI(e))}de.addCodeArg=Wm;function YO(t){let e=1;for(;e<t.length-1;){if(t[e]===Vm){let r=XO(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function XO(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 QO(t,e){return e.emptyStr()?t:t.emptyStr()?e:wb`${t}${e}`}de.strConcat=QO;function eI(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Js(Array.isArray(t)?t.join(","):t)}function tI(t){return new Mt(Js(t))}de.stringify=tI;function Js(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}de.safeStringify=Js;function rI(t){return typeof t=="string"&&de.IDENTIFIER.test(t)?new Mt(`.${t}`):kb`[${t}]`}de.getProperty=rI;function nI(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=nI;function oI(t){return new Mt(t.toString())}de.regexpCode=oI});var Jm=C(gt=>{"use strict";Object.defineProperty(gt,"__esModule",{value:!0});gt.ValueScope=gt.ValueScopeName=gt.Scope=gt.varKinds=gt.UsedValueState=void 0;var ht=Ys(),Gm=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},fc;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(fc||(gt.UsedValueState=fc={}));gt.varKinds={const:new ht.Name("const"),let:new ht.Name("let"),var:new ht.Name("var")};var hc=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof ht.Name?e:this.name(e)}name(e){return new ht.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}}};gt.Scope=hc;var gc=class extends ht.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,ht._)`.${new ht.Name(r)}[${n}]`}};gt.ValueScopeName=gc;var sI=(0,ht._)`\n`,Km=class extends hc{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?sI:ht.nil}}get(){return this._scope}name(e){return new gc(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,ht._)`${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=ht.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,fc.Started);let l=r(u);if(l){let d=this.opts.es5?gt.varKinds.var:gt.varKinds.const;s=(0,ht._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,ht._)`${s}${l}${this.opts._n}`;else throw new Gm(u);c.set(u,fc.Completed)})}return s}};gt.ValueScope=Km});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 ie=Ys(),Yt=Jm(),tn=Ys();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 vc=Jm();Object.defineProperty(ee,"Scope",{enumerable:!0,get:function(){return vc.Scope}});Object.defineProperty(ee,"ValueScope",{enumerable:!0,get:function(){return vc.ValueScope}});Object.defineProperty(ee,"ValueScopeName",{enumerable:!0,get:function(){return vc.ValueScopeName}});Object.defineProperty(ee,"varKinds",{enumerable:!0,get:function(){return vc.varKinds}});ee.operators={GT:new ie._Code(">"),GTE:new ie._Code(">="),LT:new ie._Code("<"),LTE:new ie._Code("<="),EQ:new ie._Code("==="),NEQ:new ie._Code("!=="),NOT:new ie._Code("!"),OR:new ie._Code("||"),AND:new ie._Code("&&"),ADD:new ie._Code("+")};var Rr=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Ym=class extends Rr{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Yt.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=Ao(this.rhs,e,r)),this}get names(){return this.rhs instanceof ie._CodeOrName?this.rhs.names:{}}},_c=class extends Rr{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 ie.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Ao(this.rhs,e,r),this}get names(){let e=this.lhs instanceof ie.Name?{}:{...this.lhs.names};return xc(e,this.rhs)}},Xm=class extends _c{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Qm=class extends Rr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},ef=class extends Rr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},tf=class extends Rr{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},rf=class extends Rr{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=Ao(this.code,e,r),this}get names(){return this.code instanceof ie._CodeOrName?this.code.names:{}}},Xs=class extends Rr{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)||(iI(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),{})}},Cr=class extends Xs{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},nf=class extends Xs{},No=class extends Cr{};No.kind="else";var Hn=class t extends Cr{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 No(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t($b(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=Ao(this.condition,e,r),this}get names(){let e=super.names;return xc(e,this.condition),this.else&&Bn(e,this.else.names),e}};Hn.kind="if";var qn=class extends Cr{};qn.kind="for";var of=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=Ao(this.iteration,e,r),this}get names(){return Bn(super.names,this.iteration.names)}},sf=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?Yt.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=xc(super.names,this.from);return xc(e,this.to)}},yc=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=Ao(this.iterable,e,r),this}get names(){return Bn(super.names,this.iterable.names)}},Qs=class extends Cr{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)}};Qs.kind="func";var ei=class extends Xs{render(e){return"return "+super.render(e)}};ei.kind="return";var af=class extends Cr{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}},ti=class extends Cr{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};ti.kind="catch";var ri=class extends Cr{render(e){return"finally"+super.render(e)}};ri.kind="finally";var cf=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
51
- `:""},this._extScope=e,this._scope=new Yt.Scope({parent:e}),this._nodes=[new nf]}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 Ym(e,s,n)),s}const(e,r,n){return this._def(Yt.varKinds.const,e,r,n)}let(e,r,n){return this._def(Yt.varKinds.let,e,r,n)}var(e,r,n){return this._def(Yt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new _c(e,r,n))}add(e,r){return this._leafNode(new Xm(e,ee.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==ie.nil&&this._leafNode(new rf(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,ie.addCodeArg)(r,o));return r.push("}"),new ie._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 No)}endIf(){return this._endBlockNode(Hn,No)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new of(e),r)}forRange(e,r,n,o,s=this.opts.es5?Yt.varKinds.var:Yt.varKinds.let){let i=this._scope.toName(e);return this._for(new sf(s,i,r,n),()=>o(i))}forOf(e,r,n,o=Yt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof ie.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,ie._)`${i}.length`,a=>{this.var(s,(0,ie._)`${i}[${a}]`),n(s)})}return this._for(new yc("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?Yt.varKinds.var:Yt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,ie._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new yc("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(qn)}label(e){return this._leafNode(new Qm(e))}break(e){return this._leafNode(new ef(e))}return(e){let r=new ei;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(ei)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new af;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new ti(s),r(s)}return n&&(this._currNode=o.finally=new ri,this.code(n)),this._endBlockNode(ti,ri)}throw(e){return this._leafNode(new tf(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=ie.nil,n,o){return this._blockNode(new Qs(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Qs)}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=cf;function Bn(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function xc(t,e){return e instanceof ie._CodeOrName?Bn(t,e.names):t}function Ao(t,e,r){if(t instanceof ie.Name)return n(t);if(!o(t))return t;return new ie._Code(t._items.reduce((s,i)=>(i instanceof ie.Name&&(i=n(i)),i instanceof ie._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 ie._Code&&s._items.some(i=>i instanceof ie.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function iI(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function $b(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,ie._)`!${uf(t)}`}ee.not=$b;var aI=Eb(ee.operators.AND);function cI(...t){return t.reduce(aI)}ee.and=cI;var uI=Eb(ee.operators.OR);function lI(...t){return t.reduce(uI)}ee.or=lI;function Eb(t){return(e,r)=>e===ie.nil?r:r===ie.nil?e:(0,ie._)`${uf(e)} ${t} ${uf(r)}`}function uf(t){return t instanceof ie.Name?t:(0,ie._)`(${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(),dI=Ys();function pI(t){let e={};for(let r of t)e[r]=!0;return e}te.toHash=pI;function mI(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Rb(t,e),!Cb(e,t.self.RULES.all))}te.alwaysValidSchema=mI;function Rb(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]||Nb(t,`unknown keyword: "${s}"`)}te.checkUnknownRules=Rb;function Cb(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}te.schemaHasRules=Cb;function fI(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=fI;function hI({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=hI;function gI(t){return Ob(decodeURIComponent(t))}te.unescapeFragment=gI;function _I(t){return encodeURIComponent(df(t))}te.escapeFragment=_I;function df(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}te.escapeJsonPointer=df;function Ob(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}te.unescapeJsonPointer=Ob;function yI(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}te.eachItem=yI;function Tb({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:Tb({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} || {}`),pf(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Ib}),items:Tb({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 Ib(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,xe._)`{}`);return e!==void 0&&pf(t,r,e),r}te.evaluatedPropsToName=Ib;function pf(t,e,r){Object.keys(r).forEach(n=>t.assign((0,xe._)`${e}${(0,xe.getProperty)(n)}`,!0))}te.setEvaluated=pf;var Pb={};function xI(t,e){return t.scopeValue("func",{ref:e,code:Pb[e.code]||(Pb[e.code]=new dI._Code(e.code))})}te.useFunc=xI;var lf;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(lf||(te.Type=lf={}));function vI(t,e,r){if(t instanceof xe.Name){let n=e===lf.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():"/"+df(t)}te.getErrorPath=vI;function Nb(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=Nb});var Or=C(mf=>{"use strict";Object.defineProperty(mf,"__esModule",{value:!0});var tt=Q(),bI={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")};mf.default=bI});var ni=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(),bc=ue(),ut=Or();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 SI(t,e=rt.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=jb(t,e,r);n??(i||a)?Ab(s,c):zb(o,(0,le._)`[${c}]`)}rt.reportError=SI;function kI(t,e=rt.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=jb(t,e,r);Ab(o,a),s||i||zb(n,ut.default.vErrors)}rt.reportExtraError=kI;function wI(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=wI;function $I({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=$I;function Ab(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 zb(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 jb(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,le._)`{}`:EI(t,e,r)}function EI(t,e,r={}){let{gen:n,it:o}=t,s=[TI(o,r),PI(t,r)];return RI(t,e,s),n.object(...s)}function TI({errorPath:t},{instancePath:e}){let r=e?(0,le.str)`${t}${(0,bc.getErrorPath)(e,bc.Type.Str)}`:t;return[ut.default.instancePath,(0,le.strConcat)(ut.default.instancePath,r)]}function PI({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,bc.getErrorPath)(r,bc.Type.Str)}`),[Vn.schemaPath,o]}function RI(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 Mb=C(zo=>{"use strict";Object.defineProperty(zo,"__esModule",{value:!0});zo.boolOrEmptySchema=zo.topBoolOrEmptySchema=void 0;var CI=ni(),OI=Q(),II=Or(),NI={message:"boolean schema is false"};function AI(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Db(t,!1):typeof r=="object"&&r.$async===!0?e.return(II.default.data):(e.assign((0,OI._)`${n}.errors`,null),e.return(!0))}zo.topBoolOrEmptySchema=AI;function zI(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Db(t)):r.var(e,!0)}zo.boolOrEmptySchema=zI;function Db(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,CI.reportError)(o,NI,void 0,e)}});var ff=C(jo=>{"use strict";Object.defineProperty(jo,"__esModule",{value:!0});jo.getRules=jo.isJSONType=void 0;var jI=["string","number","integer","boolean","null","object","array"],DI=new Set(jI);function MI(t){return typeof t=="string"&&DI.has(t)}jo.isJSONType=MI;function LI(){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:{}}}jo.getRules=LI});var hf=C(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.shouldUseRule=rn.shouldUseGroup=rn.schemaHasRulesForType=void 0;function FI({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Lb(t,n)}rn.schemaHasRulesForType=FI;function Lb(t,e){return e.rules.some(r=>Fb(t,r))}rn.shouldUseGroup=Lb;function Fb(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=Fb});var oi=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 UI=ff(),ZI=hf(),HI=ni(),Y=Q(),Ub=ue(),Do;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Do||(nt.DataType=Do={}));function qI(t){let e=Zb(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=qI;function Zb(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(UI.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}nt.getJSONTypes=Zb;function BI(t,e){let{gen:r,data:n,opts:o}=t,s=VI(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,ZI.schemaHasRulesForType)(t,e[0]));if(i){let a=_f(e,n,o.strictNumbers,Do.Wrong);r.if(a,()=>{s.length?WI(t,e,s):yf(t)})}return i}nt.coerceAndCheckDataType=BI;var Hb=new Set(["string","number","integer","boolean","null"]);function VI(t,e){return e?t.filter(r=>Hb.has(r)||e==="array"&&r==="array"):[]}function WI(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(_f(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,Y._)`${a} !== undefined`);for(let u of r)(Hb.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),yf(t),n.endIf(),n.if((0,Y._)`${a} !== undefined`,()=>{n.assign(o,a),GI(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,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
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 GI({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Y._)`${e} !== undefined`,()=>t.assign((0,Y._)`${e}[${r}]`,n))}function gf(t,e,r,n=Do.Correct){let o=n===Do.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===Do.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=gf;function _f(t,e,r,n){if(t.length===1)return gf(t[0],e,r,n);let o,s=(0,Ub.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,gf(i,e,r,n));return o}nt.checkDataTypes=_f;var KI={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Y._)`{type: ${t}}`:(0,Y._)`{type: ${e}}`};function yf(t){let e=JI(t);(0,HI.reportError)(e,KI)}nt.reportTypeError=yf;function JI(t){let{gen:e,data:r,schema:n}=t,o=(0,Ub.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Bb=C(Sc=>{"use strict";Object.defineProperty(Sc,"__esModule",{value:!0});Sc.assignDefaults=void 0;var Mo=Q(),YI=ue();function XI(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)qb(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>qb(t,s,o.default))}Sc.assignDefaults=XI;function qb(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Mo._)`${s}${(0,Mo.getProperty)(e)}`;if(o){(0,YI.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Mo._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Mo._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Mo._)`${a} = ${(0,Mo.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(),xf=ue(),nn=Or(),QI=ue();function e1(t,e){let{gen:r,data:n,it:o}=t;r.if(bf(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,$e._)`${e}`},!0),t.error()})}_e.checkReportMissingProp=e1;function t1({gen:t,data:e,it:{opts:r}},n,o){return(0,$e.or)(...n.map(s=>(0,$e.and)(bf(t,e,s,r.ownProperties),(0,$e._)`${o} = ${s}`)))}_e.checkMissingProp=t1;function r1(t,e){t.setParams({missingProperty:e},!0),t.error()}_e.reportMissingProp=r1;function Vb(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,$e._)`Object.prototype.hasOwnProperty`})}_e.hasPropFunc=Vb;function vf(t,e,r){return(0,$e._)`${Vb(t)}.call(${e}, ${r})`}_e.isOwnProperty=vf;function n1(t,e,r,n){let o=(0,$e._)`${e}${(0,$e.getProperty)(r)} !== undefined`;return n?(0,$e._)`${o} && ${vf(t,e,r)}`:o}_e.propertyInData=n1;function bf(t,e,r,n){let o=(0,$e._)`${e}${(0,$e.getProperty)(r)} === undefined`;return n?(0,$e.or)(o,(0,$e.not)(vf(t,e,r))):o}_e.noPropertyInData=bf;function Wb(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}_e.allSchemaProperties=Wb;function o1(t,e){return Wb(e).filter(r=>!(0,xf.alwaysValidSchema)(t,e[r]))}_e.schemaProperties=o1;function s1({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=s1;var i1=(0,$e._)`new RegExp`;function a1({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"?i1:(0,QI.useFunc)(t,o)}(${r}, ${n})`})}_e.usePattern=a1;function c1(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:xf.Type.Num},s),e.if((0,$e.not)(s),a)})}}_e.validateArray=c1;function u1(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,xf.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=u1});var Jb=C(lr=>{"use strict";Object.defineProperty(lr,"__esModule",{value:!0});lr.validateKeywordUsage=lr.validSchemaType=lr.funcKeywordCode=lr.macroKeywordCode=void 0;var lt=Q(),Wn=Or(),l1=Lt(),d1=ni();function p1(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Kb(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))}lr.macroKeywordCode=p1;function m1(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;h1(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Kb(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&&Gb(t),g(()=>t.error());else{let _=e.async?f():m();e.modifying&&Gb(t),g(()=>f1(t,_))}}function f(){let _=n.let("ruleErrs",null);return n.try(()=>h((0,lt._)`await `),y=>n.assign(d,!1).if((0,lt._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,lt._)`${y}.errors`),()=>n.throw(y))),_}function m(){let _=(0,lt._)`${l}.errors`;return n.assign(_,null),h(lt.nil),_}function h(_=e.async?(0,lt._)`await `:lt.nil){let y=c.opts.passContext?Wn.default.this:Wn.default.self,x=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,lt._)`${_}${(0,l1.callValidateCode)(t,l,y,x)}`,e.modifying)}function g(_){var y;n.if((0,lt.not)((y=e.valid)!==null&&y!==void 0?y:d),_)}}lr.funcKeywordCode=m1;function Gb(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,lt._)`${n.parentData}[${n.parentDataProperty}]`))}function f1(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,d1.extendErrors)(t)},()=>t.error())}function h1({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Kb(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 g1(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")}lr.validSchemaType=g1;function _1({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)}}lr.validateKeywordUsage=_1});var Xb=C(on=>{"use strict";Object.defineProperty(on,"__esModule",{value:!0});on.extendSubschemaMode=on.extendSubschemaData=on.getSubschema=void 0;var dr=Q(),Yb=ue();function y1(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,dr._)`${t.schemaPath}${(0,dr.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,dr._)`${t.schemaPath}${(0,dr.getProperty)(e)}${(0,dr.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Yb.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=y1;function x1(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,dr._)`${e.data}${(0,dr.getProperty)(r)}`,!0);c(p),t.errorPath=(0,dr.str)`${u}${(0,Yb.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,dr._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof dr.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=x1;function v1(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=v1});var Sf=C((aB,Qb)=>{"use strict";Qb.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 tS=C((cB,eS)=>{"use strict";var sn=eS.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(){};kc(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 kc(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++)kc(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)kc(t,e,r,d[f],o+"/"+l+"/"+b1(f),s,o,l,n,f)}else(l in sn.keywords||t.allKeys&&!(l in sn.skipKeywords))&&kc(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function b1(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var si=C(_t=>{"use strict";Object.defineProperty(_t,"__esModule",{value:!0});_t.getSchemaRefs=_t.resolveUrl=_t.normalizeId=_t._getFullPath=_t.getFullPath=_t.inlineRef=void 0;var S1=ue(),k1=Sf(),w1=tS(),$1=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function E1(t,e=!0){return typeof t=="boolean"?!0:e===!0?!kf(t):e?rS(t)<=e:!1}_t.inlineRef=E1;var T1=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function kf(t){for(let e in t){if(T1.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(kf)||typeof r=="object"&&kf(r))return!0}return!1}function rS(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!$1.has(r)&&(typeof t[r]=="object"&&(0,S1.eachItem)(t[r],n=>e+=rS(n)),e===1/0))return 1/0}return e}function nS(t,e="",r){r!==!1&&(e=Lo(e));let n=t.parse(e);return oS(t,n)}_t.getFullPath=nS;function oS(t,e){return t.serialize(e).split("#")[0]+"#"}_t._getFullPath=oS;var P1=/#\/?$/;function Lo(t){return t?t.replace(P1,""):""}_t.normalizeId=Lo;function R1(t,e,r){return r=Lo(r),t.resolve(e,r)}_t.resolveUrl=R1;var C1=/^[a-z_][-a-z0-9._]*$/i;function O1(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Lo(t[r]||e),s={"":o},i=nS(n,o,!1),a={},c=new Set;return w1(t,{allKeys:!0},(d,p,f,m)=>{if(m===void 0)return;let h=i+p,g=s[m];typeof d[r]=="string"&&(g=_.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),s[p]=g;function _(x){let k=this.opts.uriResolver.resolve;if(x=Lo(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!==Lo(h)&&(x[0]==="#"?(u(d,a[x],x),a[x]=d):this.refs[x]=h),x}function y(x){if(typeof x=="string"){if(!C1.test(x))throw new Error(`invalid anchor "${x}"`);_.call(this,`#${x}`)}}}),a;function u(d,p,f){if(p!==void 0&&!k1(d,p))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}_t.getSchemaRefs=O1});var ci=C(an=>{"use strict";Object.defineProperty(an,"__esModule",{value:!0});an.getData=an.KeywordCxt=an.validateFunctionCode=void 0;var uS=Mb(),sS=oi(),$f=hf(),wc=oi(),I1=Bb(),ai=Jb(),wf=Xb(),F=Q(),G=Or(),N1=si(),Ir=ue(),ii=ni();function A1(t){if(pS(t)&&(mS(t),dS(t))){D1(t);return}lS(t,()=>(0,uS.topBoolOrEmptySchema)(t))}an.validateFunctionCode=A1;function lS({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"; ${iS(r,o)}`),j1(t,o),t.code(s)}):t.func(e,(0,F._)`${G.default.data}, ${z1(o)}`,n.$async,()=>t.code(iS(r,o)).code(s))}function z1(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 j1(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 D1(t){let{schema:e,opts:r,gen:n}=t;lS(t,()=>{r.$comment&&e.$comment&&hS(t),Z1(t),n.let(G.default.vErrors,null),n.let(G.default.errors,0),r.unevaluated&&M1(t),fS(t),B1(t)})}function M1(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 iS(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 L1(t,e){if(pS(t)&&(mS(t),dS(t))){F1(t,e);return}(0,uS.boolOrEmptySchema)(t,e)}function dS({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 pS(t){return typeof t.schema!="boolean"}function F1(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&hS(t),H1(t),q1(t);let s=n.const("_errs",G.default.errors);fS(t,s),n.var(e,(0,F._)`${s} === ${G.default.errors}`)}function mS(t){(0,Ir.checkUnknownRules)(t),U1(t)}function fS(t,e){if(t.opts.jtd)return aS(t,[],!1,e);let r=(0,sS.getSchemaTypes)(t.schema),n=(0,sS.coerceAndCheckDataType)(t,r);aS(t,r,!n,e)}function U1(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Ir.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function Z1(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ir.checkStrictMode)(t,"default is ignored in the schema root")}function H1(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,N1.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function q1(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function hS({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 B1(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&&V1(t),e.return((0,F._)`${G.default.errors} === 0`))}function V1({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 aS(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,Ir.schemaHasRulesButRef)(s,l))){o.block(()=>_S(t,"$ref",l.all.$ref.definition));return}c.jtd||W1(t,e),o.block(()=>{for(let p of l.rules)d(p);d(l.post)});function d(p){(0,$f.shouldUseGroup)(s,p)&&(p.type?(o.if((0,wc.checkDataType)(p.type,i,c.strictNumbers)),cS(t,p),e.length===1&&e[0]===p.type&&r&&(o.else(),(0,wc.reportTypeError)(t)),o.endIf()):cS(t,p),a||o.if((0,F._)`${G.default.errors} === ${n||0}`))}}function cS(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,I1.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,$f.shouldUseRule)(n,s)&&_S(t,s.keyword,s.definition,e.type)})}function W1(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(G1(t,e),t.opts.allowUnionTypes||K1(t,e),J1(t,t.dataTypes))}function G1(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{gS(t.dataTypes,r)||Ef(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),X1(t,e)}}function K1(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Ef(t,"use allowUnionTypes to allow union type keyword")}function J1(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,$f.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>Y1(e,i))&&Ef(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function Y1(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function gS(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function X1(t,e){let r=[];for(let n of t.dataTypes)gS(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Ef(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Ir.checkStrictMode)(t,e,t.opts.strictTypes)}var $c=class{constructor(e,r,n){if((0,ai.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,Ir.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",yS(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,ai.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?ii.reportExtraError:ii.reportError)(this,this.def.error,r)}$dataError(){(0,ii.reportError)(this,this.def.$dataError||ii.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,ii.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,wc.checkDataTypes)(c,r,s.opts.strictNumbers,wc.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,wf.getSubschema)(this.it,e);(0,wf.extendSubschemaData)(n,this.it,e),(0,wf.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return L1(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Ir.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Ir.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=$c;function _S(t,e,r,n){let o=new $c(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,ai.funcKeywordCode)(o,r):"macro"in r?(0,ai.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,ai.funcKeywordCode)(o,r)}var Q1=/^\/(?:[^~]|~0|~1)*$/,eN=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function yS(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return G.default.rootData;if(t[0]==="/"){if(!Q1.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=G.default.rootData}else{let u=eN.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,Ir.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=yS});var Ec=C(Pf=>{"use strict";Object.defineProperty(Pf,"__esModule",{value:!0});var Tf=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Pf.default=Tf});var ui=C(Of=>{"use strict";Object.defineProperty(Of,"__esModule",{value:!0});var Rf=si(),Cf=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Rf.resolveUrl)(e,r,n),this.missingSchema=(0,Rf.normalizeId)((0,Rf.getFullPath)(e,this.missingRef))}};Of.default=Cf});var Pc=C(Ft=>{"use strict";Object.defineProperty(Ft,"__esModule",{value:!0});Ft.resolveSchema=Ft.getCompilingSchema=Ft.resolveRef=Ft.compileSchema=Ft.SchemaEnv=void 0;var Xt=Q(),tN=Ec(),Gn=Or(),Qt=si(),xS=ue(),rN=ci(),Fo=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,Qt.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=Fo;function Nf(t){let e=vS.call(this,t);if(e)return e;let r=(0,Qt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Xt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:tN.default,code:(0,Xt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Gn.default.data,parentData:Gn.default.parentData,parentDataProperty:Gn.default.parentDataProperty,dataNames:[Gn.default.data],dataPathArr:[Xt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Xt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Xt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Xt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,rN.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 Xt.Name?void 0:m,items:h instanceof Xt.Name?void 0:h,dynamicProps:m instanceof Xt.Name,dynamicItems:h instanceof Xt.Name},f.source&&(f.source.evaluated=(0,Xt.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=Nf;function nN(t,e,r){var n;r=(0,Qt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=iN.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 Fo({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=oN.call(this,s)}Ft.resolveRef=nN;function oN(t){return(0,Qt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Nf.call(this,t)}function vS(t){for(let e of this._compilations)if(sN(e,t))return e}Ft.getCompilingSchema=vS;function sN(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function iN(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Tc.call(this,t,e)}function Tc(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Qt._getFullPath)(this.opts.uriResolver,r),o=(0,Qt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return If.call(this,r,t);let s=(0,Qt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Tc.call(this,t,i);return typeof a?.schema!="object"?void 0:If.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Nf.call(this,i),s===(0,Qt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,Qt.resolveUrl)(this.opts.uriResolver,o,u)),new Fo({schema:a,schemaId:c,root:t,baseId:o})}return If.call(this,r,i)}}Ft.resolveSchema=Tc;var aN=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function If(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,xS.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!aN.has(a)&&u&&(e=(0,Qt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,xS.schemaHasRulesButRef)(r,this.RULES)){let a=(0,Qt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Tc.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Fo({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var bS=C((fB,cN)=>{cN.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 zf=C((hB,$S)=>{"use strict";var uN=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),kS=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 Af(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 lN=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function SS(t){return t.length=0,!0}function dN(t,e,r){if(t.length){let n=Af(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function pN(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=dN;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=SS}else{o.push(u);continue}}return o.length&&(a===SS?r.zone=o.join(""):i?n.push(o.join("")):n.push(Af(o))),r.address=n.join(""),r}function wS(t){if(mN(t,":")<2)return{host:t,isIPV6:!1};let e=pN(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 mN(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function fN(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 hN(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 gN(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!kS(r)){let n=wS(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}$S.exports={nonSimpleDomain:lN,recomposeAuthority:gN,normalizeComponentEncoding:hN,removeDotSegments:fN,isIPv4:kS,isUUID:uN,normalizeIPv6:wS,stringArrayToHexStripped:Af}});var CS=C((gB,RS)=>{"use strict";var{isUUID:_N}=zf(),yN=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,xN=["http","https","ws","wss","urn","urn:uuid"];function vN(t){return xN.indexOf(t)!==-1}function jf(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 ES(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function TS(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 bN(t){return t.secure=jf(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function SN(t){if((t.port===(jf(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 kN(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(yN);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=Df(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function wN(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=Df(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 $N(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!_N(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function EN(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var PS={scheme:"http",domainHost:!0,parse:ES,serialize:TS},TN={scheme:"https",domainHost:PS.domainHost,parse:ES,serialize:TS},Rc={scheme:"ws",domainHost:!0,parse:bN,serialize:SN},PN={scheme:"wss",domainHost:Rc.domainHost,parse:Rc.parse,serialize:Rc.serialize},RN={scheme:"urn",parse:kN,serialize:wN,skipNormalize:!0},CN={scheme:"urn:uuid",parse:$N,serialize:EN,skipNormalize:!0},Cc={http:PS,https:TN,ws:Rc,wss:PN,urn:RN,"urn:uuid":CN};Object.setPrototypeOf(Cc,null);function Df(t){return t&&(Cc[t]||Cc[t.toLowerCase()])||void 0}RS.exports={wsIsSecure:jf,SCHEMES:Cc,isValidSchemeName:vN,getSchemeHandler:Df}});var NS=C((_B,Ic)=>{"use strict";var{normalizeIPv6:ON,removeDotSegments:li,recomposeAuthority:IN,normalizeComponentEncoding:Oc,isIPv4:NN,nonSimpleDomain:AN}=zf(),{SCHEMES:zN,getSchemeHandler:OS}=CS();function jN(t,e){return typeof t=="string"?t=pr(Nr(t,e),e):typeof t=="object"&&(t=Nr(pr(t,e),e)),t}function DN(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=IS(Nr(t,n),Nr(e,n),n,!0);return n.skipEscape=!0,pr(o,n)}function IS(t,e,r,n){let o={};return n||(t=Nr(pr(t,r),r),e=Nr(pr(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=li(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=li(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=li(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=li(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 MN(t,e,r){return typeof t=="string"?(t=unescape(t),t=pr(Oc(Nr(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=pr(Oc(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=pr(Oc(Nr(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=pr(Oc(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function pr(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=OS(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=IN(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=li(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 LN=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\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(LN);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(NN(n.host)===!1){let c=ON(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=OS(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&AN(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 Mf={SCHEMES:zN,normalize:jN,resolve:DN,resolveComponent:IS,equal:MN,serialize:pr,parse:Nr};Ic.exports=Mf;Ic.exports.default=Mf;Ic.exports.fastUri=Mf});var zS=C(Lf=>{"use strict";Object.defineProperty(Lf,"__esModule",{value:!0});var AS=NS();AS.code='require("ajv/dist/runtime/uri").default';Lf.default=AS});var HS=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 FN=ci();Object.defineProperty(Ye,"KeywordCxt",{enumerable:!0,get:function(){return FN.KeywordCxt}});var Uo=Q();Object.defineProperty(Ye,"_",{enumerable:!0,get:function(){return Uo._}});Object.defineProperty(Ye,"str",{enumerable:!0,get:function(){return Uo.str}});Object.defineProperty(Ye,"stringify",{enumerable:!0,get:function(){return Uo.stringify}});Object.defineProperty(Ye,"nil",{enumerable:!0,get:function(){return Uo.nil}});Object.defineProperty(Ye,"Name",{enumerable:!0,get:function(){return Uo.Name}});Object.defineProperty(Ye,"CodeGen",{enumerable:!0,get:function(){return Uo.CodeGen}});var UN=Ec(),FS=ui(),ZN=ff(),di=Pc(),HN=Q(),pi=si(),Nc=oi(),Uf=ue(),jS=bS(),qN=zS(),US=(t,e)=>new RegExp(t,e);US.code="new RegExp";var BN=["removeAdditional","useDefaults","coerceTypes"],VN=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),WN={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."},GN={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},DS=200;function KN(t){var e,r,n,o,s,i,a,c,u,l,d,p,f,m,h,g,_,y,x,k,E,B,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,je=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:US,Te=(o=t.uriResolver)!==null&&o!==void 0?o:qN.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:je}:{optimize:ce,regExp:je},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:DS,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:DS,meta:(_=t.meta)!==null&&_!==void 0?_:!0,messages:(y=t.messages)!==null&&y!==void 0?y:!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:(B=t.validateSchema)!==null&&B!==void 0?B:!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:Te}}var mi=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...KN(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new HN.ValueScope({scope:{},prefixes:VN,es5:r,lines:n}),this.logger=tA(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,ZN.getRules)(),MS.call(this,WN,e,"NOT SUPPORTED"),MS.call(this,GN,e,"DEPRECATED","warn"),this._metaOpts=QN.call(this),e.formats&&YN.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&XN.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),JN.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=jS;n==="id"&&(o={...jS},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 FS.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,pi.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=LS.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new di.SchemaEnv({schema:{},schemaId:n});if(r=di.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=LS.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,pi.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(nA.call(this,n,r),!r)return(0,Uf.eachItem)(n,s=>Ff.call(this,s)),this;sA.call(this,r);let o={...r,type:(0,Nc.getJSONTypes)(r.type),schemaType:(0,Nc.getJSONTypes)(r.schemaType)};return(0,Uf.eachItem)(n,o.type.length===0?s=>Ff.call(this,s,o):s=>o.type.forEach(i=>Ff.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]=ZS(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,pi.normalizeId)(i||n);let u=pi.getSchemaRefs.call(this,e,n);return c=new di.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):di.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{di.compileSchema.call(this,e)}finally{this.opts=r}}};mi.ValidationError=UN.default;mi.MissingRefError=FS.default;Ye.default=mi;function MS(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 LS(t){return t=(0,pi.normalizeId)(t),this.schemas[t]||this.refs[t]}function JN(){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 YN(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function XN(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 QN(){let t={...this.opts};for(let e of BN)delete t[e];return t}var eA={log(){},warn(){},error(){}};function tA(t){if(t===!1)return eA;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 rA=/^[a-z_$][a-z0-9_$:-]*$/i;function nA(t,e){let{RULES:r}=this;if((0,Uf.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!rA.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 Ff(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,Nc.getJSONTypes)(e.type),schemaType:(0,Nc.getJSONTypes)(e.schemaType)}};e.before?oA.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 oA(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 sA(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=ZS(e)),t.validateSchema=this.compile(e,!0))}var iA={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function ZS(t){return{anyOf:[t,iA]}}});var qS=C(Zf=>{"use strict";Object.defineProperty(Zf,"__esModule",{value:!0});var aA={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Zf.default=aA});var GS=C(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.callRef=Kn.getValidate=void 0;var cA=ui(),BS=Lt(),yt=Q(),Zo=Or(),VS=Pc(),Ac=ue(),uA={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=VS.resolveRef.call(c,u,o,r);if(l===void 0)throw new cA.default(n.opts.uriResolver,o,r);if(l instanceof VS.SchemaEnv)return p(l);return f(l);function d(){if(s===u)return zc(t,i,s,s.$async);let m=e.scopeValue("root",{ref:u});return zc(t,(0,yt._)`${m}.validate`,u,u.$async)}function p(m){let h=WS(t,m);zc(t,h,m,m.$async)}function f(m){let h=e.scopeValue("schema",a.code.source===!0?{ref:m,code:(0,yt.stringify)(m)}:{ref:m}),g=e.name("valid"),_=t.subschema({schema:m,dataTypes:[],schemaPath:yt.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(_),t.ok(g)}}};function WS(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,yt._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Kn.getValidate=WS;function zc(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Zo.default.this:yt.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,yt._)`await ${(0,BS.callValidateCode)(t,e,u)}`),f(e),i||o.assign(m,!0)},h=>{o.if((0,yt._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),p(h),i||o.assign(m,!1)}),t.ok(m)}function d(){t.result((0,BS.callValidateCode)(t,e,u),()=>f(e),()=>p(e))}function p(m){let h=(0,yt._)`${m}.errors`;o.assign(Zo.default.vErrors,(0,yt._)`${Zo.default.vErrors} === null ? ${h} : ${Zo.default.vErrors}.concat(${h})`),o.assign(Zo.default.errors,(0,yt._)`${Zo.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=Ac.mergeEvaluated.props(o,g.props,s.props));else{let _=o.var("props",(0,yt._)`${m}.evaluated.props`);s.props=Ac.mergeEvaluated.props(o,_,s.props,yt.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Ac.mergeEvaluated.items(o,g.items,s.items));else{let _=o.var("items",(0,yt._)`${m}.evaluated.items`);s.items=Ac.mergeEvaluated.items(o,_,s.items,yt.Name)}}}Kn.callRef=zc;Kn.default=uA});var KS=C(Hf=>{"use strict";Object.defineProperty(Hf,"__esModule",{value:!0});var lA=qS(),dA=GS(),pA=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",lA.default,dA.default];Hf.default=pA});var JS=C(qf=>{"use strict";Object.defineProperty(qf,"__esModule",{value:!0});var jc=Q(),cn=jc.operators,Dc={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}},mA={message:({keyword:t,schemaCode:e})=>(0,jc.str)`must be ${Dc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,jc._)`{comparison: ${Dc[t].okStr}, limit: ${e}}`},fA={keyword:Object.keys(Dc),type:"number",schemaType:"number",$data:!0,error:mA,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,jc._)`${r} ${Dc[e].fail} ${n} || isNaN(${r})`)}};qf.default=fA});var YS=C(Bf=>{"use strict";Object.defineProperty(Bf,"__esModule",{value:!0});var fi=Q(),hA={message:({schemaCode:t})=>(0,fi.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,fi._)`{multipleOf: ${t}}`},gA={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:hA,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,fi._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,fi._)`${i} !== parseInt(${i})`;t.fail$data((0,fi._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Bf.default=gA});var QS=C(Vf=>{"use strict";Object.defineProperty(Vf,"__esModule",{value:!0});function XS(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}Vf.default=XS;XS.code='require("ajv/dist/runtime/ucs2length").default'});var e0=C(Wf=>{"use strict";Object.defineProperty(Wf,"__esModule",{value:!0});var Jn=Q(),_A=ue(),yA=QS(),xA={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}}`},vA={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:xA,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,_A.useFunc)(t.gen,yA.default)}(${r})`;t.fail$data((0,Jn._)`${i} ${s} ${n}`)}};Wf.default=vA});var t0=C(Gf=>{"use strict";Object.defineProperty(Gf,"__esModule",{value:!0});var bA=Lt(),SA=ue(),Ho=Q(),kA={message:({schemaCode:t})=>(0,Ho.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Ho._)`{pattern: ${t}}`},wA={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:kA,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,Ho._)`new RegExp`:(0,SA.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Ho._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Ho._)`!${l}`)}else{let c=(0,bA.usePattern)(t,o);t.fail$data((0,Ho._)`!${c}.test(${r})`)}}};Gf.default=wA});var r0=C(Kf=>{"use strict";Object.defineProperty(Kf,"__esModule",{value:!0});var hi=Q(),$A={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,hi.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,hi._)`{limit: ${t}}`},EA={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:$A,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?hi.operators.GT:hi.operators.LT;t.fail$data((0,hi._)`Object.keys(${r}).length ${o} ${n}`)}};Kf.default=EA});var n0=C(Jf=>{"use strict";Object.defineProperty(Jf,"__esModule",{value:!0});var gi=Lt(),_i=Q(),TA=ue(),PA={message:({params:{missingProperty:t}})=>(0,_i.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,_i._)`{missingProperty: ${t}}`},RA={keyword:"required",type:"object",schemaType:"array",$data:!0,error:PA,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,_=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,TA.checkStrictMode)(i,_,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(_i.nil,d);else for(let f of r)(0,gi.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,gi.checkMissingProp)(t,r,f)),(0,gi.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,gi.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function p(f,m){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(m,(0,gi.propertyInData)(e,o,f,a.ownProperties)),e.if((0,_i.not)(m),()=>{t.error(),e.break()})},_i.nil)}}};Jf.default=RA});var o0=C(Yf=>{"use strict";Object.defineProperty(Yf,"__esModule",{value:!0});var yi=Q(),CA={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,yi.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,yi._)`{limit: ${t}}`},OA={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:CA,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?yi.operators.GT:yi.operators.LT;t.fail$data((0,yi._)`${r}.length ${o} ${n}`)}};Yf.default=OA});var Mc=C(Xf=>{"use strict";Object.defineProperty(Xf,"__esModule",{value:!0});var s0=Sf();s0.code='require("ajv/dist/runtime/equal").default';Xf.default=s0});var i0=C(eh=>{"use strict";Object.defineProperty(eh,"__esModule",{value:!0});var Qf=oi(),Xe=Q(),IA=ue(),NA=Mc(),AA={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}}`},zA={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:AA,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,Qf.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"),_=(0,Qf.checkDataTypes)(u,g,a.opts.strictNumbers,Qf.DataType.Wrong),y=e.const("indices",(0,Xe._)`{}`);e.for((0,Xe._)`;${m}--;`,()=>{e.let(g,(0,Xe._)`${r}[${m}]`),e.if(_,(0,Xe._)`continue`),u.length>1&&e.if((0,Xe._)`typeof ${g} == "string"`,(0,Xe._)`${g} += "_"`),e.if((0,Xe._)`typeof ${y}[${g}] == "number"`,()=>{e.assign(h,(0,Xe._)`${y}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Xe._)`${y}[${g}] = ${m}`)})}function f(m,h){let g=(0,IA.useFunc)(e,NA.default),_=e.name("outer");e.label(_).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(_)})))}}};eh.default=zA});var a0=C(rh=>{"use strict";Object.defineProperty(rh,"__esModule",{value:!0});var th=Q(),jA=ue(),DA=Mc(),MA={message:"must be equal to constant",params:({schemaCode:t})=>(0,th._)`{allowedValue: ${t}}`},LA={keyword:"const",$data:!0,error:MA,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,th._)`!${(0,jA.useFunc)(e,DA.default)}(${r}, ${o})`):t.fail((0,th._)`${s} !== ${r}`)}};rh.default=LA});var c0=C(nh=>{"use strict";Object.defineProperty(nh,"__esModule",{value:!0});var xi=Q(),FA=ue(),UA=Mc(),ZA={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,xi._)`{allowedValues: ${t}}`},HA={keyword:"enum",schemaType:"array",$data:!0,error:ZA,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,FA.useFunc)(e,UA.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,xi.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,xi._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function p(f,m){let h=o[m];return typeof h=="object"&&h!==null?(0,xi._)`${u()}(${r}, ${f}[${m}])`:(0,xi._)`${r} === ${h}`}}};nh.default=HA});var u0=C(oh=>{"use strict";Object.defineProperty(oh,"__esModule",{value:!0});var qA=JS(),BA=YS(),VA=e0(),WA=t0(),GA=r0(),KA=n0(),JA=o0(),YA=i0(),XA=a0(),QA=c0(),ez=[qA.default,BA.default,VA.default,WA.default,GA.default,KA.default,JA.default,YA.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},XA.default,QA.default];oh.default=ez});var ih=C(vi=>{"use strict";Object.defineProperty(vi,"__esModule",{value:!0});vi.validateAdditionalItems=void 0;var Yn=Q(),sh=ue(),tz={message:({params:{len:t}})=>(0,Yn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Yn._)`{limit: ${t}}`},rz={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:tz,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,sh.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}l0(t,n)}};function l0(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,sh.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:sh.Type.Num},u),i.allErrors||r.if((0,Yn.not)(u),()=>r.break())})}}vi.validateAdditionalItems=l0;vi.default=rz});var ah=C(bi=>{"use strict";Object.defineProperty(bi,"__esModule",{value:!0});bi.validateTuple=void 0;var d0=Q(),Lc=ue(),nz=Lt(),oz={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return p0(t,"additionalItems",e);r.items=!0,!(0,Lc.alwaysValidSchema)(r,e)&&t.ok((0,nz.validateArray)(t))}};function p0(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=Lc.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,d0._)`${s}.length`);r.forEach((d,p)=>{(0,Lc.alwaysValidSchema)(a,d)||(n.if((0,d0._)`${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,Lc.checkStrictMode)(a,g,p.strictTuples)}}}bi.validateTuple=p0;bi.default=oz});var m0=C(ch=>{"use strict";Object.defineProperty(ch,"__esModule",{value:!0});var sz=ah(),iz={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,sz.validateTuple)(t,"items")};ch.default=iz});var h0=C(uh=>{"use strict";Object.defineProperty(uh,"__esModule",{value:!0});var f0=Q(),az=ue(),cz=Lt(),uz=ih(),lz={message:({params:{len:t}})=>(0,f0.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,f0._)`{limit: ${t}}`},dz={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:lz,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,az.alwaysValidSchema)(n,e)&&(o?(0,uz.validateAdditionalItems)(t,o):t.ok((0,cz.validateArray)(t)))}};uh.default=dz});var g0=C(lh=>{"use strict";Object.defineProperty(lh,"__esModule",{value:!0});var Ut=Q(),Fc=ue(),pz={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}}`},mz={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:pz,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,Fc.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Fc.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Fc.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,_=>{t.subschema({keyword:"contains",dataProp:_,dataPropType:Fc.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)))}}};lh.default=mz});var x0=C(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.validateSchemaDeps=mr.validatePropertyDeps=mr.error=void 0;var dh=Q(),fz=ue(),Si=Lt();mr.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,dh.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,dh._)`{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,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},
55
55
  missingProperty: ${n},
56
56
  depsCount: ${e},
57
- deps: ${r}}`};var hz={keyword:"dependencies",type:"object",schemaType:"object",error:mr.error,code(t){let[e,r]=gz(t);_0(t,e),y0(t,r)}};function gz({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 _0(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,Si.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,Si.checkReportMissingProp)(t,u)}):(r.if((0,dh._)`${c} && (${(0,Si.checkMissingProp)(t,a,s)})`),(0,Si.reportMissingProp)(t,s),r.else())}}mr.validatePropertyDeps=_0;function y0(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,fz.alwaysValidSchema)(s,e[a])||(r.if((0,Si.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))}mr.validateSchemaDeps=y0;mr.default=hz});var b0=C(ph=>{"use strict";Object.defineProperty(ph,"__esModule",{value:!0});var v0=Q(),_z=ue(),yz={message:"property name must be valid",params:({params:t})=>(0,v0._)`{propertyName: ${t.propertyName}}`},xz={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:yz,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,_z.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,v0.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};ph.default=xz});var fh=C(mh=>{"use strict";Object.defineProperty(mh,"__esModule",{value:!0});var Uc=Lt(),er=Q(),vz=Or(),Zc=ue(),bz={message:"must NOT have additional properties",params:({params:t})=>(0,er._)`{additionalProperty: ${t.additionalProperty}}`},Sz={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:bz,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,Zc.alwaysValidSchema)(i,r))return;let u=(0,Uc.allSchemaProperties)(n.properties),l=(0,Uc.allSchemaProperties)(n.patternProperties);d(),t.ok((0,er._)`${s} === ${vz.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 _;if(u.length>8){let y=(0,Zc.schemaRefOrVal)(i,n.properties,"properties");_=(0,Uc.isOwnProperty)(e,y,g)}else u.length?_=(0,er.or)(...u.map(y=>(0,er._)`${g} === ${y}`)):_=er.nil;return l.length&&(_=(0,er.or)(_,...l.map(y=>(0,er._)`${(0,Uc.usePattern)(t,y)}.test(${g})`))),(0,er.not)(_)}function f(g){e.code((0,er._)`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,Zc.alwaysValidSchema)(i,r)){let _=e.name("valid");c.removeAdditional==="failing"?(h(g,_,!1),e.if((0,er.not)(_),()=>{t.reset(),f(g)})):(h(g,_),a||e.if((0,er.not)(_),()=>e.break()))}}function h(g,_,y){let x={keyword:"additionalProperties",dataProp:g,dataPropType:Zc.Type.Str};y===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(x,_)}}};mh.default=Sz});var w0=C(gh=>{"use strict";Object.defineProperty(gh,"__esModule",{value:!0});var kz=ci(),S0=Lt(),hh=ue(),k0=fh(),wz={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&&k0.default.code(new kz.KeywordCxt(s,k0.default,"additionalProperties"));let i=(0,S0.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=hh.mergeEvaluated.props(e,(0,hh.toHash)(i),s.props));let a=i.filter(d=>!(0,hh.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,S0.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)}}};gh.default=wz});var P0=C(_h=>{"use strict";Object.defineProperty(_h,"__esModule",{value:!0});var $0=Lt(),Hc=Q(),E0=ue(),T0=ue(),$z={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,$0.allSchemaProperties)(r),c=a.filter(h=>(0,E0.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 Hc.Name)&&(s.props=(0,T0.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,E0.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,g=>{e.if((0,Hc._)`${(0,$0.usePattern)(t,h)}.test(${g})`,()=>{let _=c.includes(h);_||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:T0.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Hc._)`${d}[${g}]`,!0):!_&&!s.allErrors&&e.if((0,Hc.not)(l),()=>e.break())})})}}};_h.default=$z});var R0=C(yh=>{"use strict";Object.defineProperty(yh,"__esModule",{value:!0});var Ez=ue(),Tz={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,Ez.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"}};yh.default=Tz});var C0=C(xh=>{"use strict";Object.defineProperty(xh,"__esModule",{value:!0});var Pz=Lt(),Rz={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Pz.validateUnion,error:{message:"must match a schema in anyOf"}};xh.default=Rz});var O0=C(vh=>{"use strict";Object.defineProperty(vh,"__esModule",{value:!0});var qc=Q(),Cz=ue(),Oz={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,qc._)`{passingSchemas: ${t.passing}}`},Iz={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Oz,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,Cz.alwaysValidSchema)(o,l)?e.var(c,!0):p=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,qc._)`${c} && ${i}`).assign(i,!1).assign(a,(0,qc._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),p&&t.mergeEvaluated(p,qc.Name)})})}}};vh.default=Iz});var I0=C(bh=>{"use strict";Object.defineProperty(bh,"__esModule",{value:!0});var Nz=ue(),Az={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,Nz.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};bh.default=Az});var z0=C(Sh=>{"use strict";Object.defineProperty(Sh,"__esModule",{value:!0});var Bc=Q(),A0=ue(),zz={message:({params:t})=>(0,Bc.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Bc._)`{failingKeyword: ${t.ifClause}}`},jz={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:zz,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,A0.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=N0(n,"then"),s=N0(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,Bc.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,Bc._)`${l}`):t.setParams({ifClause:l})}}}};function N0(t,e){let r=t.schema[e];return r!==void 0&&!(0,A0.alwaysValidSchema)(t,r)}Sh.default=jz});var j0=C(kh=>{"use strict";Object.defineProperty(kh,"__esModule",{value:!0});var Dz=ue(),Mz={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,Dz.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};kh.default=Mz});var D0=C(wh=>{"use strict";Object.defineProperty(wh,"__esModule",{value:!0});var Lz=ih(),Fz=m0(),Uz=ah(),Zz=h0(),Hz=g0(),qz=x0(),Bz=b0(),Vz=fh(),Wz=w0(),Gz=P0(),Kz=R0(),Jz=C0(),Yz=O0(),Xz=I0(),Qz=z0(),ej=j0();function tj(t=!1){let e=[Kz.default,Jz.default,Yz.default,Xz.default,Qz.default,ej.default,Bz.default,Vz.default,qz.default,Wz.default,Gz.default];return t?e.push(Fz.default,Zz.default):e.push(Lz.default,Uz.default),e.push(Hz.default),e}wh.default=tj});var M0=C($h=>{"use strict";Object.defineProperty($h,"__esModule",{value:!0});var Fe=Q(),rj={message:({schemaCode:t})=>(0,Fe.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Fe._)`{format: ${t}}`},nj={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:rj,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"),_=r.let("format");r.if((0,Fe._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,Fe._)`${h}.type || "string"`).assign(_,(0,Fe._)`${h}.validate`),()=>r.assign(g,(0,Fe._)`"string"`).assign(_,h)),t.fail$data((0,Fe.or)(y(),x()));function y(){return c.strictSchema===!1?Fe.nil:(0,Fe._)`${i} && !${_}`}function x(){let k=l.$async?(0,Fe._)`(${h}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,Fe._)`${_}(${n})`,E=(0,Fe._)`(typeof ${_} == "function" ? ${k} : ${_}.test(${n}))`;return(0,Fe._)`${_} && ${_} !== true && ${g} === ${e} && !${E}`}}function f(){let m=d.formats[s];if(!m){y();return}if(m===!0)return;let[h,g,_]=x(m);h===e&&t.pass(k());function y(){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 B=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:B});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 ${_}(${n})`}return typeof g=="function"?(0,Fe._)`${_}(${n})`:(0,Fe._)`${_}.test(${n})`}}}};$h.default=nj});var L0=C(Eh=>{"use strict";Object.defineProperty(Eh,"__esModule",{value:!0});var oj=M0(),sj=[oj.default];Eh.default=sj});var F0=C(qo=>{"use strict";Object.defineProperty(qo,"__esModule",{value:!0});qo.contentVocabulary=qo.metadataVocabulary=void 0;qo.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];qo.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Z0=C(Th=>{"use strict";Object.defineProperty(Th,"__esModule",{value:!0});var ij=KS(),aj=u0(),cj=D0(),uj=L0(),U0=F0(),lj=[ij.default,aj.default,(0,cj.default)(),uj.default,U0.metadataVocabulary,U0.contentVocabulary];Th.default=lj});var q0=C(Vc=>{"use strict";Object.defineProperty(Vc,"__esModule",{value:!0});Vc.DiscrError=void 0;var H0;(function(t){t.Tag="tag",t.Mapping="mapping"})(H0||(Vc.DiscrError=H0={}))});var V0=C(Rh=>{"use strict";Object.defineProperty(Rh,"__esModule",{value:!0});var Bo=Q(),Ph=q0(),B0=Pc(),dj=ui(),pj=ue(),mj={message:({params:{discrError:t,tagName:e}})=>t===Ph.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Bo._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},fj={keyword:"discriminator",type:"object",schemaType:"object",error:mj,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,Bo._)`${r}${(0,Bo.getProperty)(a)}`);e.if((0,Bo._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Ph.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,Bo._)`${u} === ${m}`),e.assign(c,d(f[m]));e.else(),t.error(!1,{discrError:Ph.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,Bo.Name),m}function p(){var f;let m={},h=_(o),g=!0;for(let k=0;k<i.length;k++){let E=i[k];if(E?.$ref&&!(0,pj.schemaHasRulesButRef)(E,s.self.RULES)){let z=E.$ref;if(E=B0.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,z),E instanceof B0.SchemaEnv&&(E=E.schema),E===void 0)throw new dj.default(s.opts.uriResolver,s.baseId,z)}let B=(f=E?.properties)===null||f===void 0?void 0:f[a];if(typeof B!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||_(E)),y(B,k)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return m;function _({required:k}){return Array.isArray(k)&&k.includes(a)}function y(k,E){if(k.const)x(k.const,E);else if(k.enum)for(let B of k.enum)x(B,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}}}};Rh.default=fj});var W0=C((s9,hj)=>{hj.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 Oh=C((Ee,Ch)=>{"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 gj=HS(),_j=Z0(),yj=V0(),G0=W0(),xj=["/properties"],Wc="http://json-schema.org/draft-07/schema",Vo=class extends gj.default{_addVocabularies(){super._addVocabularies(),_j.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(yj.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(G0,xj):G0;this.addMetaSchema(e,Wc,!1),this.refs["http://json-schema.org/schema"]=Wc}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Wc)?Wc:void 0)}};Ee.Ajv=Vo;Ch.exports=Ee=Vo;Ch.exports.Ajv=Vo;Object.defineProperty(Ee,"__esModule",{value:!0});Ee.default=Vo;var vj=ci();Object.defineProperty(Ee,"KeywordCxt",{enumerable:!0,get:function(){return vj.KeywordCxt}});var Wo=Q();Object.defineProperty(Ee,"_",{enumerable:!0,get:function(){return Wo._}});Object.defineProperty(Ee,"str",{enumerable:!0,get:function(){return Wo.str}});Object.defineProperty(Ee,"stringify",{enumerable:!0,get:function(){return Wo.stringify}});Object.defineProperty(Ee,"nil",{enumerable:!0,get:function(){return Wo.nil}});Object.defineProperty(Ee,"Name",{enumerable:!0,get:function(){return Wo.Name}});Object.defineProperty(Ee,"CodeGen",{enumerable:!0,get:function(){return Wo.CodeGen}});var bj=Ec();Object.defineProperty(Ee,"ValidationError",{enumerable:!0,get:function(){return bj.default}});var Sj=ui();Object.defineProperty(Ee,"MissingRefError",{enumerable:!0,get:function(){return Sj.default}})});var rk=C(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.formatNames=hr.fastFormats=hr.fullFormats=void 0;function fr(t,e){return{validate:t,compare:e}}hr.fullFormats={date:fr(X0,zh),time:fr(Nh(!0),jh),"date-time":fr(K0(!0),ek),"iso-time":fr(Nh(),Q0),"iso-date-time":fr(K0(),tk),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:Pj,"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:zj,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:Rj,int32:{type:"number",validate:Ij},int64:{type:"number",validate:Nj},float:{type:"number",validate:Y0},double:{type:"number",validate:Y0},password:!0,binary:!0};hr.fastFormats={...hr.fullFormats,date:fr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,zh),time:fr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,jh),"date-time":fr(/^\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,ek),"iso-time":fr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Q0),"iso-date-time":fr(/^\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,tk),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};hr.formatNames=Object.keys(hr.fullFormats);function kj(t){return t%4===0&&(t%100!==0||t%400===0)}var wj=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,$j=[0,31,28,31,30,31,30,31,31,30,31,30,31];function X0(t){let e=wj.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&&kj(r)?29:$j[n])}function zh(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Ih=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Nh(t){return function(r){let n=Ih.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 jh(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 Q0(t,e){if(!(t&&e))return;let r=Ih.exec(t),n=Ih.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 Ah=/t|\s/i;function K0(t){let e=Nh(t);return function(n){let o=n.split(Ah);return o.length===2&&X0(o[0])&&e(o[1])}}function ek(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function tk(t,e){if(!(t&&e))return;let[r,n]=t.split(Ah),[o,s]=e.split(Ah),i=zh(r,o);if(i!==void 0)return i||jh(n,s)}var Ej=/\/|:/,Tj=/^(?:[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 Pj(t){return Ej.test(t)&&Tj.test(t)}var J0=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function Rj(t){return J0.lastIndex=0,J0.test(t)}var Cj=-(2**31),Oj=2**31-1;function Ij(t){return Number.isInteger(t)&&t<=Oj&&t>=Cj}function Nj(t){return Number.isInteger(t)}function Y0(){return!0}var Aj=/[^\\]\\Z/;function zj(t){if(Aj.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var nk=C(Go=>{"use strict";Object.defineProperty(Go,"__esModule",{value:!0});Go.formatLimitDefinition=void 0;var jj=Oh(),tr=Q(),un=tr.operators,Gc={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}},Dj={message:({keyword:t,schemaCode:e})=>(0,tr.str)`should be ${Gc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,tr._)`{comparison: ${Gc[t].okStr}, limit: ${e}}`};Go.formatLimitDefinition={keyword:Object.keys(Gc),type:"string",schemaType:"string",$data:!0,error:Dj,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 jj.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,tr._)`${p}[${c.schemaCode}]`);t.fail$data((0,tr.or)((0,tr._)`typeof ${f} != "object"`,(0,tr._)`${f} instanceof RegExp`,(0,tr._)`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,tr._)`${i.code.formats}${(0,tr.getProperty)(p)}`:void 0});t.fail$data(d(m))}function d(p){return(0,tr._)`${p}.compare(${r}, ${n}) ${Gc[o].fail} 0`}},dependencies:["format"]};var Mj=t=>(t.addKeyword(Go.formatLimitDefinition),t);Go.default=Mj});var ak=C((ki,ik)=>{"use strict";Object.defineProperty(ki,"__esModule",{value:!0});var Ko=rk(),Lj=nk(),Dh=Q(),ok=new Dh.Name("fullFormats"),Fj=new Dh.Name("fastFormats"),Mh=(t,e={keywords:!0})=>{if(Array.isArray(e))return sk(t,e,Ko.fullFormats,ok),t;let[r,n]=e.mode==="fast"?[Ko.fastFormats,Fj]:[Ko.fullFormats,ok],o=e.formats||Ko.formatNames;return sk(t,o,r,n),e.keywords&&(0,Lj.default)(t),t};Mh.get=(t,e="full")=>{let n=(e==="fast"?Ko.fastFormats:Ko.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function sk(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Dh._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}ik.exports=ki=Mh;Object.defineProperty(ki,"__esModule",{value:!0});ki.default=Mh});function Uj(){let t=new ck.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,uk.default)(t),t}var ck,uk,Kc,lk=v(()=>{ck=us(Oh(),1),uk=us(ak(),1);Kc=class{constructor(e){this._ajv=e??Uj()}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 Jc,dk=v(()=>{Un();Jc=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},Ws,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},Io,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 pk(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 mk(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 fk=v(()=>{});var Yc,hk=v(()=>{Sb();Un();lk();zs();dk();fk();Yc=class extends mc{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Vs.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 Kc,this.setRequestHandler(Xp,n=>this._oninitialize(n)),this.setNotificationHandler(Qp,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(im,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Vs.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Jc(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=bb(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(At(o)){let a=o;s=a._zod?.def?.value??a.value}else{let a=o;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=Jr(Oo,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(Eo,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(tc,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){mk(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&pk(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:bv.includes(r)?r:Wp,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"},Za)}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},am,r):this.request({method:"sampling/createMessage",params:e},Ws,r)}async elicitInput(e,r){switch(e.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let o=e;return this.request({method:"elicitation/create",params:o},Io,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},Io,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},cm,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 Lh(t){return!!t&&typeof t=="object"&&_k in t}function yk(t){return t[_k]?.complete}var _k,gk,xk=v(()=>{_k=Symbol.for("mcp.completable");(function(t){t.Completable="McpCompletable"})(gk||(gk={}))});var vk=v(()=>{});function Hj(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"),!Zj.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 qj(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 Fh(t){let e=Hj(t);return qj(t,e.warnings),e.isValid}var Zj,bk=v(()=>{Zj=/^[A-Za-z0-9._-]{1,128}$/});var Xc,Sk=v(()=>{Xc=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 Uh=v(()=>{pa();pa()});function $k(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function Ek(t){return"_def"in t||"_zod"in t||$k(t)}function Zh(t){return typeof t!="object"||t===null||Ek(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some($k)}function kk(t){if(t){if(Zh(t))return Fn(t);if(!Ek(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function Vj(t){let e=Yr(t);return e?Object.entries(e).map(([r,n])=>{let o=Vx(n),s=Wx(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=ja(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function wk(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var Qc,Bj,wi,Tk=v(()=>{hk();zs();Bm();Un();xk();vk();bk();Sk();Uh();Qc=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 Yc(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new Xc(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(ec)),this.server.assertCanSetRequestHandler(ln(Oo)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(ec,()=>({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=wo(r.inputSchema);return o?Zm(o,{strictUnions:!0,pipeStrategy:"input"}):Bj})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=wo(r.outputSchema);o&&(n.outputSchema=Zm(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(Oo,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=wo(e.inputSchema)??e.inputSchema,i=await Aa(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=za(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=wo(e.outputSchema),s=await Aa(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=za(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(rc)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(rc,async e=>{switch(e.params.ref.type){case"ref/prompt":return Dv(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Mv(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 wi;let s=Yr(n.argsSchema)?.[e.params.argument.name];if(!Lh(s))return wi;let i=yk(s);if(!i)return wi;let a=await i(e.params.argument.value,e.params.context);return wk(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 wi;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 wi;let s=await o(e.params.argument.value,e.params.context);return wk(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(ln(Po)),this.server.assertCanSetRequestHandler(ln(Ro)),this.server.assertCanSetRequestHandler(ln(Xa)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Po,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(Ro,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(Xa,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(Co)),this.server.assertCanSetRequestHandler(ln(Qa)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Co,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?Vj(r.argsSchema):void 0}))})),this.server.setRequestHandler(Qa,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=wo(n.argsSchema),s=await Aa(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=za(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 pt?c._def?.innerType:c;return Lh(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){Fh(e);let l={title:r,description:n,inputSchema:kk(o),outputSchema:kk(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"&&Fh(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(Zh(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!Zh(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()}},Bj={type:"object",properties:{}};wi={completion:{values:[],hasMore:!1}}});function Wj(t){return Rv.parse(JSON.parse(t))}function Pk(t){return JSON.stringify(t)+`
58
- `}var eu,Rk=v(()=>{Un();eu=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),Wj(r)}clear(){this._buffer=void 0}}});import Ck from"node:process";var tu,Ok=v(()=>{Rk();tu=class{constructor(e=Ck.stdin,r=Ck.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new eu,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=Pk(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}}});var Lk={};Ze(Lk,{PolyglotExecutor:()=>Jo,buildScriptFilename:()=>Dk,buildSpawnOptions:()=>Mk});import{spawn as Gj,execSync as Kj,execFileSync as zk}from"node:child_process";import{mkdtempSync as Jj,writeFileSync as Ik,rmSync as Nk,existsSync as Ak}from"node:fs";import{join as ru,resolve as jk}from"node:path";import{tmpdir as Yj}from"node:os";function Dk(t,e,r){if(e==="win32"&&t==="shell"){let n=r?.toLowerCase()??"";return n.includes("powershell")||n.includes("pwsh")?"script.ps1":"script"}return`script.${Xj[t]}`}function Mk(t){return{windowsHide:t==="win32"}}function Hh(t){if(Zt&&t.pid)try{Kj(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var Zt,Xj,Qj,Jo,qh=v(()=>{"use strict";Wi();Zt=process.platform==="win32",Xj={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};Qj=(()=>{if(Zt)return process.env.TEMP??process.env.TMP??Yj();try{let t=zk(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:jk(t,"..");if(e&&e!==process.cwd())return e}catch{}return"/tmp"})();Jo=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??oo()}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=Jj(ru(Qj,".ctx-mode-"));try{let a=this.#a(i,n,r),c=Xg(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{Nk(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{Nk(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s}=e,i=jk(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);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
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"&&Ak(ru(this.#o,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(ru(this.#o,"_build/dev/lib"))}, "*/ebin"))
67
+ ${r}`),n==="elixir"&&jk(au(this.#o,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(au(this.#o,"_build/dev/lib"))}, "*/ebin"))
68
68
  |> Enum.each(&Code.prepend_path/1)
69
69
 
70
- ${r}`);let o=ru(e,Dk(n,process.platform,n==="shell"?this.#n.shell:null));return n==="shell"?Ik(o,r,{encoding:"utf-8",mode:448}):Ik(o,r,"utf-8"),o}async#c(e,r,n){let o=Zt?".exe":"",s=e.replace(/\.rs$/,"")+o;try{zk("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(y=>y.replace(/\\/g,"/")):e.slice(1);let l=Gj(c,u,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#u(n),shell:a,detached:!Zt,...Mk(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 y=Buffer.concat(m).toString("utf-8"),x=Buffer.concat(h).toString("utf-8");i({stdout:y,stderr:x,exitCode:0,timedOut:!0,backgrounded:!0})}else Hh(l)},o),m=[],h=[],g=0,_=!1;l.stdout.on("data",y=>{g+=y.length,g<=this.#e?m.push(y):_||(_=!0,Hh(l))}),l.stderr.on("data",y=>{g+=y.length,g<=this.#e?h.push(y):_||(_=!0,Hh(l))}),l.on("close",y=>{if(clearTimeout(f),p)return;let x=Buffer.concat(m).toString("utf-8"),k=Buffer.concat(h).toString("utf-8");_&&(k+=`
72
- [output capped at ${(this.#e/1024/1024).toFixed(0)}MB \u2014 process killed]`),i({stdout:x,stderr:k,exitCode:d?1:y??1,timedOut:d})}),l.on("error",y=>{clearTimeout(f),!p&&i({stdout:"",stderr:y.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(Ak(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=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};
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 eD}from"node:os";async function Bh(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,eD().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 Fk=v(()=>{"use strict"});var Hk={};Ze(Hk,{BunSQLiteAdapter:()=>nu,NodeSQLiteAdapter:()=>ou,SQLiteBase:()=>Ei,applyWALPragmas:()=>Xo,cleanOrphanedWALFiles:()=>Qo,closeDB:()=>es,defaultDBPath:()=>Wh,deleteDBFiles:()=>su,isSQLiteCorruptionError:()=>iu,loadDatabase:()=>Ar,renameCorruptDB:()=>Zk,withRetry:()=>dn});import{createRequire as tD}from"node:module";import{existsSync as rD,unlinkSync as Uk,renameSync as nD}from"node:fs";import{tmpdir as oD}from"node:os";import{join as sD}from"node:path";function Ar(){if(!Yo){let t=tD(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;Yo=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0}),i=new nu(s);return o?.timeout&&i.pragma(`busy_timeout = ${o.timeout}`),i}}else if(process.platform==="linux")try{let{DatabaseSync:e}=t(["node","sqlite"].join(":"));Yo=function(n,o){let s=new e(n,{readOnly:o?.readonly??!1});return new ou(s)}}catch{Yo=t("better-sqlite3")}else Yo=t("better-sqlite3")}return Yo}function Xo(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL");try{t.pragma("mmap_size = 268435456")}catch{}}function Qo(t){if(!rD(t))for(let e of["-wal","-shm"])try{Uk(t+e)}catch{}}function su(t){for(let e of["","-wal","-shm"])try{Uk(t+e)}catch{}}function es(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}function Wh(t="context-mode"){return sD(oD(),`${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 iu(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 Zk(t){let e=Date.now();for(let r of["","-wal","-shm"])try{nD(t+r,`${t}${r}.corrupt-${e}`)}catch{}}var nu,ou,Yo,$i,Vh,Ei,ts=v(()=>{"use strict";nu=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()}},ou=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()}},Yo=null;$i=Symbol.for("__context_mode_live_dbs__"),Vh=(()=>{let t=globalThis;return t[$i]||(t[$i]=new Set,process.on("exit",()=>{for(let e of t[$i])es(e);t[$i].clear()})),t[$i]})(),Ei=class{#e;#t;constructor(e){let r=Ar();this.#e=e,Qo(e);let n;try{n=new r(e,{timeout:3e4}),Xo(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(iu(s)){Zk(e),Qo(e);try{n=new r(e,{timeout:3e4}),Xo(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,Vh.add(this.#t),this.initSchema(),this.prepareStatements()}get db(){return this.#t}get dbPath(){return this.#e}close(){Vh.delete(this.#t),es(this.#t)}withRetry(e){return dn(e)}cleanup(){Vh.delete(this.#t),es(this.#t),su(this.#e)}}});import{readFileSync as qk,readdirSync as Wk,unlinkSync as Kh,existsSync as Gh,statSync as au}from"node:fs";import{createHash as Bk}from"node:crypto";import{tmpdir as Gk}from"node:os";import{join as Jh}from"node:path";function Kk(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 iD(t,e="AND"){let r=Kk(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=>!rs.has(s.toLowerCase()));return(n.length>0?n:r).map(s=>`"${s}"`).join(e==="OR"?" OR ":" ")}function aD(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=Kk(r.split(/\s+/).filter(i=>i.length>=3));if(n.length===0)return"";let o=n.filter(i=>!rs.has(i.toLowerCase()));return(o.length>0?o:n).map(i=>`"${i}"`).join(e==="OR"?" OR ":" ")}function cD(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 uD(t){return t<=4?1:t<=12?2:3}function Yh(){let t=Gk(),e=0;try{let r=Wk(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=Jh(t,n);for(let a of["","-wal","-shm"])try{Kh(i+a)}catch{}e++}}}catch{}return e}function Xh(t,e){let r=0;try{if(!Gh(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=Wk(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=Jh(t,s),c=au(i).mtimeMs<n;if(!c){let u=i+"-wal";if(Gh(u))try{let l=au(u);l.size>0&&Date.now()-l.mtimeMs>36e5&&(c=!0)}catch{}}if(c){for(let u of["","-wal","-shm"])try{Kh(i+u)}catch{}r++}}catch{}}catch{}return r}function lD(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function dD(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 pD(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 rs,Vk,cu,Jk=v(()=>{"use strict";ts();rs=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"]);Vk=4096;cu=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;#N;#A;#z=0;static OPTIMIZE_EVERY=50;#r=new Map;static FUZZY_CACHE_SIZE=256;constructor(e){let r=Ar();this.#t=e??Jh(Gk(),`context-mode-${process.pid}.db`),Qo(this.#t);let n;try{n=new r(this.#t,{timeout:3e4}),Xo(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(iu(s)){su(this.#t),Qo(this.#t);try{n=new r(this.#t,{timeout:3e4}),Xo(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{Kh(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 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(`
128
128
  CREATE TABLE IF NOT EXISTS sources (
129
129
  id INTEGER PRIMARY KEY AUTOINCREMENT,
130
130
  label TEXT NOT NULL,
@@ -364,22 +364,22 @@ ${n}`}}}});import{cpus as eD}from"node:os";async function Bh(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.#N=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),this.#A=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:qk(n,"utf-8"),a=o??n??"untitled",c=this.#B(i),u=n??void 0,l=u?Bk("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=Vk){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=iD(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=aD(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=uD(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=cD(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=>!rs.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=>lD(f,h));if(!m.some(h=>h.length===0)){d=1/(1+pD(m)/Math.max(f.length,1));let g=dD(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&&!rs.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(!Gh(r.file_path))continue;let n=au(r.file_path).mtime,o=new Date(r.indexed_at+"Z");if(n<=o)continue;let s=qk(r.file_path,"utf-8");if(Bk("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&&!rs.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.#N.run(o),this.#A.run(o)))(e).changes}getDBSizeBytes(){try{return au(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(),es(this.#e)}#q(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(s=>s.length>=3&&!rs.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=Vk){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: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(`
368
368
  `),s=[],i=[],a="",c=()=>{let l=i.join(`
369
- `).trim();if(l.length===0)return;let d=this.#J(s,a),p=i.some(_=>/^`{3,}/.test(_));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 _=m.join(`
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
 
371
- `).trim();if(_.length===0)return;let y=f.length>1?`${d} (${h})`:d;h++,n.push({title:y,content:_,hasCode:_.includes("```")}),m=[]};for(let _ of f){m.push(_);let y=m.join(`
371
+ `).trim();if(y.length===0)return;let _=f.length>1?`${d} (${h})`:d;h++,n.push({title:_,content:y,hasCode:y.includes("```")}),m=[]};for(let y of f){m.push(y);let _=m.join(`
372
372
 
373
- `);Buffer.byteLength(y)>r&&m.length>1&&(m.pop(),g(),m=[_])}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(`
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 Qh(t,e){return t===void 0?e:`${t}::${e}`}var Yk=v(()=>{"use strict"});import{readFileSync as Qk,realpathSync as mD}from"node:fs";import{resolve as Xn}from"node:path";import{homedir as ew}from"node:os";function tw(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function fD(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function hD(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function Xk(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function gD(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=hD(o),a=Xk(s);r=`^${i}(\\s${a})?$`}else r=`^${Xk(t)}$`;return new RegExp(r,e?"i":"")}function _D(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 yD(t,e,r=!1){for(let n of e){let o=tw(n);if(o&&gD(o,r).test(t))return n}return null}function xD(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 eg(t){let e;try{e=Qk(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"&&tw(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function tg(t,e){let r=[];if(t){let s=Xn(t,".claude","settings.local.json"),i=eg(s);i&&r.push(i);let a=Xn(t,".claude","settings.json"),c=eg(a);c&&r.push(c)}let n=e??Xn(ew(),".claude","settings.json"),o=eg(n);return o&&r.push(o),r}function rw(t,e,r){let n=[],o=a=>{let c;try{c=Qk(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=fD(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(ew(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function rg(t,e,r=process.platform==="win32"){let n=xD(t);for(let o of n)for(let s of e){let i=yD(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function nw(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(mD(i)))}catch{}}for(let i of e)for(let a of i){let c=_D(a,r);for(let u of s)if(c.test(u))return{denied:!0,matchedPattern:a}}return{denied:!1}}function bD(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 ow(t,e){let r=vD[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(...bD(t)),n}var vD,sw=v(()=>{"use strict";vD={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 ng(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 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}
377
377
 
378
378
  stdout:
379
379
  ${n}
380
380
 
381
381
  stderr:
382
- ${o}`}}var iw=v(()=>{"use strict"});import{execFileSync as SD}from"node:child_process";function kD(){if(process.platform==="win32")return NaN;let t=process.ppid;if(!t||t<=1)return NaN;try{let e=SD("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 wD(t={}){let e=t.getPpid??(()=>process.ppid),r=t.readGrandparentPpid??kD,n=e(),o=r();return()=>{let s=e();return!(s!==n||s===0||s===1||!Number.isNaN(o)&&o>1&&r()===1)}}function aw(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??$D,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 $D,cw=v(()=>{"use strict";$D=wD()});import{createHash as og}from"node:crypto";import{execFileSync as ED}from"node:child_process";function lu(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX,e=process.cwd();if(Ti&&Ti.cwd===e&&Ti.envSuffix===t)return Ti.suffix;let r="";if(t!==void 0)r=t?`__${t}`:"";else try{let n=ED("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=`__${og("sha256").update(e).digest("hex").slice(0,8)}`)}catch{}return Ti={cwd:e,envSuffix:t,suffix:r},r}var Ti,uw,lw,U,uu,dw=v(()=>{"use strict";ts();uw=1e3,lw=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"},uu=class extends Ei{constructor(e){super(e?.dbPath??Wh("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 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(`
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 iw=v(()=>{"use strict"});import{execFileSync as SD}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=og("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,lw,r.type,s))return;this.stmt(U.getEventCount).get(e).cnt>=uw&&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=og("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,lw,c.event.type,c.dataHash)||(a>=uw?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 sg,readFileSync as TD,readdirSync as PD,statSync as RD}from"node:fs";import{join as ns,isAbsolute as CD}from"node:path";import{homedir as OD}from"node:os";function fw(t,e=5,r,n,o){let s=[],i=o?.getInstructionFiles()??["CLAUDE.md"],a=o?.getConfigDir(),c=a?mw(r,a):n||ns(OD(),".claude"),u=o?.getMemoryDir(),l=u?mw(r,u):ns(c,"memory"),d=[];if(r)for(let p of i){let f=ns(r,p);sg(f)&&d.push({path:f,label:`project/${p}`})}if(c&&c!==r)for(let p of i){let f=ns(c,p);sg(f)&&d.push({path:f,label:`user/${p}`})}if(l&&sg(l))try{let p=PD(l).filter(f=>f.endsWith(".md"));for(let f of p)d.push({path:ns(l,f),label:`memory/${f}`})}catch(p){pw&&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=RD(p.path),f.size>1e6)continue}catch{continue}let m=TD(p.path,"utf-8"),h=m.toLowerCase();for(let g of t){if(s.length>=e)break;let y=g.toLowerCase().split(/\s+/).filter(k=>k.length>=3);if(y.some(k=>{try{return new RegExp(`\\b${k.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\b`,"i").test(m)}catch{return h.includes(k)}})){let k=y.reduce((P,N)=>{let ce=h.indexOf(N);return ce>=0&&(P<0||ce<P)?ce:P},-1),E=Math.max(0,k-200),B=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,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(`
493
493
 
494
- `,E),K=m.indexOf(`
494
+ `,T),K=m.indexOf(`
495
495
 
496
- `,B);z>=0&&(E=z+2),K>=0&&(B=K);let Le=m.slice(E,B).trim();s.push({title:`[auto-memory] ${p.label}`,content:Le,source:p.label,origin:"auto-memory",timestamp:f.mtime.toISOString()});break}}}catch(f){pw&&process.stderr.write(`[ctx] auto-memory file read failed: ${f}
497
- `)}}return s.slice(0,e)}function mw(t,e){return e?CD(e)||!t?e:ns(t,e):t??""}var pw,hw=v(()=>{"use strict";pw=process.env.DEBUG?.includes("context-mode")});function gw(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){ig&&process.stderr.write(`[ctx] ContentStore search failed: ${f}
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){ig&&process.stderr.write(`[ctx] SessionDB search failed: ${f}
499
- `)}try{let f=fw([e],r,c,u,l);d.push(...f)}catch(f){ig&&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 ig,_w=v(()=>{"use strict";hw();ig=process.env.DEBUG?.includes("context-mode")});import{existsSync as ag,readdirSync as cg,statSync as ID}from"node:fs";import{join as Pi}from"node:path";import{homedir as yw}from"node:os";function ND(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 zD(t){let r=t.replace(/\.md$/i,"").match(/^([a-z]+)/i);return r?r[1].toLowerCase():"other"}function Ri(t){let e=t?.sessionsDir??Pi(yw(),".claude","context-mode","sessions"),r=t?.memoryRoot??Pi(yw(),".claude","projects"),n=0,o=0;if(ag(e)){let c=[];try{c=cg(e).filter(u=>u.endsWith(".db"))}catch{}if(c.length>0){let u=null;try{u=t?.loadDatabase?t.loadDatabase():Ar()}catch{}if(u)for(let l of c){let d=Pi(e,l);try{let p=new u(d,{readonly:!0});try{let f=p.prepare("SELECT COUNT(*) AS cnt FROM session_events").get(),m=p.prepare("SELECT COUNT(*) AS cnt FROM session_meta").get();n+=f?.cnt??0,o+=m?.cnt??0}finally{p.close()}}catch{}}}}let s=0,i=0,a={};if(ag(r)){let c=[];try{c=cg(r).filter(u=>{try{return ID(Pi(r,u)).isDirectory()}catch{return!1}})}catch{}for(let u of c){let l=Pi(r,u,"memory");if(!ag(l))continue;let d=[];try{d=cg(l).filter(p=>p.endsWith(".md"))}catch{continue}if(d.length!==0){i++,s+=d.length;for(let p of d){let f=zD(p);a[f]=(a[f]??0)+1}}}}return{totalEvents:n,totalSessions:o,autoMemoryCount:s,autoMemoryProjects:i,autoMemoryByPrefix:a}}function Qn(t){return t>=1024*1024?`${(t/1024/1024).toFixed(1)} MB`:t>=1024?`${(t/1024).toFixed(1)} KB`:`${Math.round(t)} B`}function jD(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 ug(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}K`:String(t)}function du(t){return`$${((Number.isFinite(t)&&t>0?t:0)*pu).toFixed(2)}`}function lg(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 vw(t,e){if(t.total_events===0&&(e?.lifetime?.totalEvents??0)===0)return[];let r=e?.topN??2,n=[];n.push(""),n.push("Persistent memory \u2713 preserved across compact, restart & upgrade");let o=e?.lifetime?.totalEvents??t.total_events,s=e?.lifetime?.totalSessions??t.session_count,i=s===1?"1 session":`${ug(s)} sessions`,a=o*256;n.push(` ${ug(o)} events \xB7 ${i} \xB7 ~${du(a)} saved lifetime`),n.push("");let c=t.by_category,u=c.slice(0,r),l=u.length>0?u[0].count:1;for(let p of u)n.push(` ${p.label.padEnd(18)} ${String(p.count).padStart(5)} ${lg(p.count,l,30)}`);let d=Math.max(0,c.length-r);return d>0&&n.push(` ... ${d} more categor${d===1?"y":"ies"}`),n}function bw(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((n,o)=>o[1]-n[1]).slice(0,6);for(let[n,o]of r)e.push(` ${n.padEnd(12)} ${String(o).padStart(2)}`);return e}function Sw(t,e){let r=[],n=du(t),o=(e?.totalEvents??0)*256,s=du(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 mu(t,e,r,n){let o=[],s=jD(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(`${Qn(u)} entered context | 0 tokens saved`),o.push(...vw(t.projectMemory,{lifetime:i})),o.push(...bw(i)),o.push(...Sw(0,i)),o.push("");let y=e?`v${e}`:"context-mode";return o.push(y),e&&r&&r!=="unknown"&&ND(r,e)&&o.push(`Update available: v${e} -> v${r} | ctx_upgrade`),o.join(`
501
- `)}o.push(`${ug(f)} tokens saved \xB7 ${p.toFixed(1)}% reduction \xB7 ${s} \xB7 ~${du(f)} saved (Opus)`),o.push(""),o.push(`Without context-mode |${lg(d,d)}| ${Qn(d)}`),o.push(`With context-mode |${lg(u,d)}| ${Qn(u)}`),o.push(""),m>=2?o.push(`${Qn(c)} kept out of your conversation \u2014 ${m}\xD7 longer sessions before compact.`):o.push(`${Qn(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 (+${Qn(t.cache.bytes_saved)})`),o.push(h.join(" \xB7 "));let g=t.savings.by_tool.filter(y=>y.calls>0);if(g.length>=2){o.push("");let y=g.map(x=>{let k=x.context_kb*1024,E=p<100?k/(1-p/100):k,B=Math.max(0,E-k);return{...x,returnedBytes:k,estimatedSaved:B}}).sort((x,k)=>k.estimatedSaved-x.estimatedSaved);for(let x of y){let k=x.tool.length>22?x.tool.slice(0,19)+"...":x.tool;o.push(` ${k.padEnd(22)} ${String(x.calls).padStart(4)} calls ${Qn(x.estimatedSaved).padStart(8)} saved`)}}if(a&&a.length>0){let y=a.filter(x=>x.median_concurrency!=null);for(let x of y)o.push(`MCP concurrency usage: ${x.tool_name} median=${x.median_concurrency} max=${x.max_concurrency} (${x.calls} calls)`)}o.push(...vw(t.projectMemory,{lifetime:i})),o.push(...bw(i)),o.push(...Sw(f,i)),o.push("");let _=e?`v${e}`:"context-mode";return o.push(_),e&&r&&r!=="unknown"&&r!==e&&o.push(`Update available: v${e} -> v${r} | ctx_upgrade`),o.join(`
502
- `)}var xw,AD,os,pu,kw=v(()=>{"use strict";ts();xw={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"},AD={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"},os=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),je=Math.max(0,24-Math.floor((Date.now()-e.sessionStart)/(3600*1e3)));m={hits:e.cacheHits,bytes_saved:e.cacheBytesSaved,ttl_hours_left:je,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),y=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),B=new Map;for(let N of E){B.has(N.category)||B.set(N.category,new Set);let ce=B.get(N.category);if(ce.size<5){let je=N.data;N.category==="file"?je=N.data.split("/").pop()||N.data:(N.category==="prompt"||N.category==="user-prompt")&&(je=je.length>50?je.slice(0,47)+"...":je),je.length>40&&(je=je.slice(0,37)+"..."),ce.add(je)}}let z=g.map(N=>({category:N.category,count:N.cnt,label:xw[N.category]||N.category,preview:B.get(N.category)?Array.from(B.get(N.category)).join(", "):"",why:AD[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:xw[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:y,resume_ready:k},projectMemory:{total_events:K.cnt,session_count:K.sessions,by_category:P}}}};pu=15/1e6});var Uw={};Ze(Uw,{buildBatchNodeOptionsPrefix:()=>Mw,classifyIp:()=>wg,extractSnippet:()=>Sg,formatBatchQueryResults:()=>Dw,positionsFromHighlight:()=>jw,runBatchCommands:()=>Lw});import{createRequire as Nw}from"node:module";import{createHash as DD}from"node:crypto";import{existsSync as ze,unlinkSync as gr,readdirSync as MD,readFileSync as gg,writeFileSync as _g,renameSync as LD,rmSync as _u,mkdirSync as Ci,cpSync as FD,statSync as ww,symlinkSync as UD,lstatSync as ZD}from"node:fs";import{execSync as Ht}from"node:child_process";import{join as me,dirname as rr,resolve as ot,sep as HD,isAbsolute as qD}from"node:path";import{fileURLToPath as BD}from"node:url";import{homedir as to,tmpdir as yg,cpus as VD}from"node:os";import{request as WD}from"node:https";function GD(t){try{let e=Mr();if(!ze(e))return;let r=MD(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=me(e,n);try{t.index({path:o,source:"session-events"}),gr(o)}catch{}}}catch{}}function Mr(){if(is)return is.getSessionDir();try{let e=kr(),r=bl(e.platform);if(r){let n=me(to(),...r,"context-mode","sessions");return Ci(n,{recursive:!0}),n}}catch{}let t=me(to(),".claude","context-mode","sessions");return Ci(t,{recursive:!0}),t}function Ai(){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 KD(t){return qD(t)?t:ot(Ai(),t)}function Oi(){let e=Ai().replace(/\\/g,"/");return DD("sha256").update(e).digest("hex").slice(0,16)}function fg(){let t=Oi(),e=Mr(),r=me(rr(e),"content");return Ci(r,{recursive:!0}),me(r,`${t}.db`)}function ro(){if(!_r){let t=fg();_r=new cu(t);try{let e=rr(fg());Xh(e,14),_r.cleanupStaleSources(14);let r=me(to(),".context-mode","content");ze(r)&&Xh(r,0)}catch{}Yh()}return GD(_r),_r}async function Ew(){return new Promise(t=>{let e=WD("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 XD(){let t=is?.name;return t==="Claude Code"?"/ctx-upgrade":t==="OpenClaw"?"npm run install:openclaw":t==="Pi"?"npm run build":"npm update -g context-mode"}function QD(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 eM(){return!Dr||Dr==="unknown"?!1:QD(Dr,jr)}function tM(){if(!eM())return!1;let t=Date.now();if(fu>=JD){if(t-$w<YD)return!1;fu=0}return fu===0&&($w=t),fu++,!0}function rM(){if(!Tw){Tw=!0;try{let t=ot(to(),".claude","plugins","installed_plugins.json");if(!ze(t))return;let e=JSON.parse(gg(t,"utf-8")),r=ot(to(),".claude","plugins","cache"),n=ze(ot(kt,"package.json"))?kt:rr(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||ze(a)||!ot(a).startsWith(r+HD))continue;try{ZD(a).isSymbolicLink()&&gr(a)}catch{}let c=rr(a);ze(c)||Ci(c,{recursive:!0}),ze(n)&&UD(n,a,process.platform==="win32"?"junction":void 0)}}catch{}}}function W(t,e){if(rM(),tM()&&e.content.length>0){let n=XD();e.content[0].text=`\u26A0\uFE0F context-mode v${jr} outdated \u2192 v${Dr} available. Upgrade: ${n}
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}
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}
503
503
 
504
- `+e.content[0].text}let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return ae.calls[t]=(ae.calls[t]||0)+1,ae.bytesReturned[t]=(ae.bytesReturned[t]||0)+r,vg(),e}function nr(t){ae.bytesIndexed+=t,vg()}function Aw(){let t=process.env.CLAUDE_SESSION_ID||`pid-${process.ppid}`;return me(Mr(),`stats-${t}.json`)}function vg(){let t=Date.now();if(!(t-hg<nM)){hg=t;try{let e=Object.values(ae.bytesReturned).reduce((d,p)=>d+p,0),r=Object.values(ae.calls).reduce((d,p)=>d+p,0),n=ae.bytesIndexed+ae.bytesSandboxed+ae.cacheBytesSaved,o=n+e,s=o>0?Math.round((1-e/o)*100):0,i=Math.round(n/4),a=hu?.tokens??0;if(!hu||t-hu.computedAt>sM)try{a=(Ri({sessionsDir:Mr()})?.totalEvents??0)*iM,hu={tokens:a,computedAt:t}}catch{}let c={schemaVersion:oM,version:jr,updated_at:t,session_start:ae.sessionStart,uptime_ms:t-ae.sessionStart,total_calls:r,bytes_returned:e,bytes_indexed:ae.bytesIndexed,bytes_sandboxed:ae.bytesSandboxed,cache_hits:ae.cacheHits,cache_bytes_saved:ae.cacheBytesSaved,kept_out:n,total_processed:o,reduction_pct:s,tokens_saved:i,dollars_saved_session:+(i*pu).toFixed(2),tokens_saved_lifetime:a,dollars_saved_lifetime:+(a*pu).toFixed(2),by_tool:Object.fromEntries(Object.keys({...ae.calls,...ae.bytesReturned}).map(d=>[d,{calls:ae.calls[d]||0,bytes:ae.bytesReturned[d]||0}]))},u=Aw(),l=`${u}.tmp`;_g(l,JSON.stringify(c)),LD(l,u)}catch{}}}function bg(t,e){try{let r=tg(process.env.CLAUDE_PROJECT_DIR),n=rg(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 zw(t,e,r){try{let n=ow(t,e);if(n.length===0)return null;let o=tg(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=rg(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 aM(t,e){try{let r=Ai(),n=rw("Read",r),o=nw(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 jw(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===lM){for(e.push(r),n++;n<t.length&&t[n]!==dM;)r++,n++;n<t.length&&n++}else r++,n++;return e}function Sg(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of jw(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,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)+`
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 Dw(t,e,r,n=80*1024){let o=[],s=0;for(let i of e){if(s>n){o.push(`## ${i}
507
+ `)}function Zw(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=Sg(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 pM(t){return`'${t.replace(/'/g,"'\\''")}'`}function mM(t){return`'${t.replace(/'/g,"''")}'`}function Mw(t,e){let r=`--require ${e}`,n=t.toLowerCase(),o=n.split(/[\\/]/).pop()??n;return n.includes("powershell")||n.includes("pwsh")?`$env:NODE_OPTIONS=${mM(r)}; `:o==="cmd"||o==="cmd.exe"?`set "NODE_OPTIONS=${r.replace(/"/g,'""')}" && `:`NODE_OPTIONS=${pM(r)} `}function Pw(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 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}
510
510
 
511
511
  ${n}
512
- `}async function Lw(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 y=Date.now()-p,x=n-y;if(x<=0){d.push(`# ${h.label}
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}
513
513
 
514
514
  (skipped \u2014 batch timeout exceeded)
515
- `),f=!0;continue}g=x}let _=await r.execute({language:"shell",code:`${s}${h.command} 2>&1`,timeout:g});if(d.push(Pw(h.label,_.stdout,i)),_.timedOut){f=!0;for(let y=m+1;y<t.length;y++)d.push(`# ${t[y].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(Iw(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=Pw(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=Iw(d.label,p.stdout,i);return{output:p.timedOut?f.replace(/\n$/,"")+`
519
519
  (timed out after ${n??"?"}ms)
520
- `:f,timedOut:!!p.timedOut}}})),{settled:c}=await Bh(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}
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 Fw(t,e){let r=ro();nr(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
- Use ctx_search(queries: ["..."]) to query this content. Use source: "${n.label}" to scope results.`}]}}function ss(t,e,r,n=5){let o=t.split(`
525
- `).length,s=Buffer.byteLength(t),i=ro(),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(`
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}
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
+ `).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 kg(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function hM(t){let e=kg(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}function gM(){return pg||(pg=Nw(import.meta.url).resolve("turndown")),pg}function _M(){return mg||(mg=Nw(import.meta.url).resolve("turndown-plugin-gfm")),mg}function yM(t,e){let r=JSON.stringify(gM()),n=JSON.stringify(_M()),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=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`
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 vM(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=wg(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 wg(t){let e=t.toLowerCase();if(e.includes(":")){let s=e.match(/^::ffff:([\d.]+)$/);return s?wg(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 bM(t,e,r){let n=await vM(t);if(n)return n;if(!r){let s=ro(),i=Qh(e,t),a=s.getSourceMeta(i);if(a){let c=new Date(a.indexedAt+"Z"),u=Date.now()-c.getTime();if(u<xM){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=me(yg(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let s=yM(t,o),i=await Ni.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=gg(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{_u(o)}catch{}}}function SM(t){let e=ro(),r=Qh(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}),nr(Buffer.byteLength(t.markdown));let o=t.markdown.length>Ow?t.markdown.slice(0,Ow)+`
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)+`
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 Iw(){return{prepare:()=>({run:()=>{},get:(...t)=>({cnt:0,compact_count:0,minutes:null,rate:0,avg:0,outcome:"exploratory"}),all:()=>[]})}}async function kM(){let t=Yh();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=process.platform==="win32"?yg():"/tmp",r=me(e,`context-mode-mcp-ready-${process.pid}`),n=()=>{Ni.cleanupBackgrounded(),_r&&_r.close();try{gr(xg)}catch{}try{gr(r)}catch{}if(zr&&zr.pid&&!zr.killed)try{zr.kill("SIGTERM")}catch{}},o=async()=>{try{hg=0,vg()}catch{}n(),process.exit(0)};process.on("exit",n),process.on("SIGINT",()=>{o()}),process.on("SIGTERM",()=>{o()}),aw({onShutdown:()=>o()});let s=new tu;await Qe.connect(s);try{_g(r,String(process.pid))}catch{}try{let{detectPlatform:i,getAdapter:a}=await Promise.resolve().then(()=>(oa(),ny)),c=Qe.server.getClientVersion(),u=i(c??void 0);is=await a(u.platform),c&&console.error(`MCP client: ${c.name} v${c.version} \u2192 ${u.platform}`)}catch{}Ew().then(i=>{i!=="unknown"&&(Dr=i)}),setInterval(()=>{Ew().then(i=>{i!=="unknown"&&(Dr=i)})},3600*1e3).unref(),console.error(`Context Mode MCP server v${jr} running on stdio`),console.error(`Detected runtimes:
577
- ${Bi(Ii)}`),so()||(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,jr,Ii,gu,Qe,Ni,xg,_r,is,zr,ae,Dr,fu,$w,JD,YD,Tw,nM,oM,sM,iM,hg,hu,cM,uM,lM,dM,yu,xu,eo,dg,fM,Rw,Cw,pg,mg,xM,Ow,Zw=v(()=>{"use strict";Tk();Ok();Uh();qh();Fk();Jk();Yk();sw();Wi();iw();cw();dw();_w();br();oa();ts();kw();Un();kt=rr(BD(import.meta.url)),jr=(()=>{for(let t of["../package.json","./package.json"]){let e=ot(kt,t);if(ze(e))try{return JSON.parse(gg(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 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}
579
579
  `)});process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
580
- `)});Ii=oo(),gu=Vi(Ii),Qe=new Qc({name:"context-mode",version:jr});Qe.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});Qe.server.setRequestHandler(Co,async()=>({prompts:[]}));Qe.server.setRequestHandler(Po,async()=>({resources:[]}));Qe.server.setRequestHandler(Ro,async()=>({resourceTemplates:[]}));Ni=new Jo({runtimes:Ii,projectRoot:()=>Ai()}),xg=me(yg(),`cm-fs-preload-${process.pid}.js`);_g(xg,`(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
- `);_r=null;is=null,zr=null;ae={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()},Dr=null,fu=0,$w=0,JD=3,YD=3600*1e3;Tw=!1;nM=500,oM=2,sM=3e4,iM=256,hg=0;cM=gu.join(", "),uM=so()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",lM="",dM="";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.${uM} Available: ${cM}.
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}.
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=bg(e,"execute");if(s)return s}else{let s=zw(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=Fw(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{}});
@@ -645,20 +645,20 @@ ${e}
645
645
  }
646
646
  __cm_main().catch(e=>{console.error(e);process.exitCode=1});${n?`
647
647
  setInterval(()=>{},2147483647);`:""}
648
- })(typeof require!=='undefined'?require:null);`);let i=await Ni.execute({language:t,code:s,timeout:r,background:n}),a=i.stderr?.match(/__CM_NET__:(\d+)/);a&&(ae.bytesSandboxed+=parseInt(a[1]),i.stderr=i.stderr.replace(/\n?__CM_NET__:\d+\n?/g,""));let c=i.stderr?.match(/__CM_FS__:(\d+)/);if(c&&(ae.bytesSandboxed+=parseInt(c[1]),i.stderr=i.stderr.replace(/\n?__CM_FS__:\d+\n?/g,"")),i.timedOut){let l=i.stdout?.trim();return i.backgrounded&&l?W("ctx_execute",{content:[{type:"text",text:`${l}
648
+ })(typeof require!=='undefined'?require:null);`);let i=await Di.execute({language:t,code:s,timeout:r,background:n}),a=i.stderr?.match(/__CM_NET__:(\d+)/);a&&(re.bytesSandboxed+=parseInt(a[1]),i.stderr=i.stderr.replace(/\n?__CM_NET__:\d+\n?/g,""));let c=i.stderr?.match(/__CM_FS__:(\d+)/);if(c&&(re.bytesSandboxed+=parseInt(c[1]),i.stderr=i.stderr.replace(/\n?__CM_FS__:\d+\n?/g,"")),i.timedOut){let l=i.stdout?.trim();return i.backgrounded&&l?W("ctx_execute",{content:[{type:"text",text:`${l}
649
649
 
650
650
  _(process backgrounded after ${r}ms \u2014 still running)_`}]}):l?W("ctx_execute",{content:[{type:"text",text:`${l}
651
651
 
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}=ng({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(d)>yu?(nr(Buffer.byteLength(d)),W("ctx_execute",{content:[{type:"text",text:ss(d,o,l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):Buffer.byteLength(d)>xu?(nr(Buffer.byteLength(d)),W("ctx_execute",{content:[{type:"text",text:ss(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)>yu?(nr(Buffer.byteLength(u)),W("ctx_execute",{content:[{type:"text",text:ss(u,o,`execute:${t}`)}]})):Buffer.byteLength(u)>xu?W("ctx_execute",Fw(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})}});yu=5e3,xu=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)>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.
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=aM(t,"execute_file");if(s)return s;if(e==="shell"){let i=bg(r,"execute_file");if(i)return i}else{let i=zw(r,e,"execute_file");if(i)return i}try{let i=await Ni.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}=ng({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>yu?(nr(Buffer.byteLength(u)),W("ctx_execute_file",{content:[{type:"text",text:ss(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):Buffer.byteLength(u)>xu?(nr(Buffer.byteLength(u)),W("ctx_execute_file",{content:[{type:"text",text:ss(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)>yu?(nr(Buffer.byteLength(a)),W("ctx_execute_file",{content:[{type:"text",text:ss(a,o,`file:${t}`)}]})):Buffer.byteLength(a)>xu?W("ctx_execute_file",Fw(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=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.
662
662
 
663
663
  WHEN TO USE:
664
664
  - Documentation from Context7, Skills, or MCP tools (API docs, framework guides, code examples)
@@ -670,40 +670,40 @@ WHEN TO USE:
670
670
 
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
- 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?KD(e):void 0;if(t)nr(Buffer.byteLength(t));else if(n)try{let i=await import("fs");nr(i.readFileSync(n).byteLength)}catch{}let s=ro().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})}});eo=0,dg=Date.now(),fM=6e4,Rw=3,Cw=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.
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.
675
675
 
676
676
  TIPS: 2-4 specific terms per query. Use 'source' to scope results.
677
677
 
678
678
  SESSION STATE: If skills, roles, or decisions were set earlier in this conversation, they are still active. Do not discard or contradict them.
679
679
 
680
- When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:M.object({queries:M.preprocess(kg,M.array(M.string()).optional().describe("Array of search queries. Batch ALL questions in one call.")),limit:M.number().optional().default(3).describe("Results per query (default: 3)"),source:M.string().optional().describe("Filter to a specific indexed source (partial match)."),contentType:M.enum(["code","prose"]).optional().describe("Filter results by content type: 'code' or 'prose'."),sort:M.enum(["relevance","timeline"]).optional().default("relevance").describe("Sort mode. 'relevance' (default): BM25 ranked, current session only. 'timeline': chronological across current session, prior sessions, and auto-memory.")})},async t=>{try{let e=ro(),r=t.sort||"relevance";if(r!=="timeline"&&e.getStats().chunks===0)return W("ctx_search",{content:[{type:"text",text:`Knowledge base is empty \u2014 no content has been indexed yet.
680
+ When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:M.object({queries:M.preprocess(Eg,M.array(M.string()).optional().describe("Array of search queries. Batch ALL questions in one call.")),limit:M.number().optional().default(3).describe("Results per query (default: 3)"),source:M.string().optional().describe("Filter to a specific indexed source (partial match)."),contentType:M.enum(["code","prose"]).optional().describe("Filter results by content type: 'code' or 'prose'."),sort:M.enum(["relevance","timeline"]).optional().default("relevance").describe("Sort mode. 'relevance' (default): BM25 ranked, current session only. 'timeline': chronological across current session, prior sessions, and auto-memory.")})},async t=>{try{let e=no(),r=t.sort||"relevance";if(r!=="timeline"&&e.getStats().chunks===0)return W("ctx_search",{content:[{type:"text",text:`Knowledge base is empty \u2014 no content has been indexed yet.
681
681
 
682
682
  ctx_search is a follow-up tool that queries previously indexed content. To gather and index content first, use:
683
683
  \u2022 ctx_batch_execute(commands, queries) \u2014 run commands, auto-index output, and search in one call
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-dg>fM&&(eo=0,dg=c),eo++,eo>Cw)return W("ctx_search",{content:[{type:"text",text:`BLOCKED: ${eo} search calls in ${Math.round((c-dg)/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=eo>Rw?1:Math.min(s,2),l=40*1024,d=0,p=[],f=null;if(r==="timeline")try{let g=Mr(),_=me(g,`${Oi()}${lu()}.db`);ze(_)&&(f=new uu({dbPath:_}))}catch{}let m=is?.getConfigDir()??(process.env.CLAUDE_CONFIG_DIR||me(to(),".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>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}
688
688
  (output cap reached)
689
- `);continue}let _;if(r==="timeline"?_=gw({query:g,limit:u,store:e,sort:r,source:i,contentType:a,sessionDB:f,projectDir:Ai(),configDir:m,adapter:is??void 0}):_=e.searchWithFallback(g,u,i,a),_.length===0){p.push(`## ${g}
690
- No results found.`);continue}let y=_.map((x,k)=>{let E=x.origin||"current-session",B=x.timestamp?x.timestamp.slice(0,16).replace("T"," "):"",z=`--- [${E}${B?" | "+B:""} | ${x.source}] ---`,K=`### ${x.title}`,Le=Sg(x.content,g,1500,x.highlighted);return`${z}
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}
691
691
  ${K}
692
692
 
693
693
  ${Le}`}).join(`
694
694
 
695
695
  `);p.push(`## ${g}
696
696
 
697
- ${y}`),d+=y.length}}finally{try{f?.close()}catch{}}let h=p.join(`
697
+ ${_}`),d+=_.length}}finally{try{f?.close()}catch{}}let h=p.join(`
698
698
 
699
699
  ---
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),eo>=Rw&&(h+=`
703
+ `+h),to>=Aw&&(h+=`
704
704
 
705
- \u26A0 search call #${eo}/${Cw} 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(),_=g.length>0?`
706
- Indexed sources: ${g.map(y=>`"${y.label}" (${y.chunkCount} sections)`).join(", ")}`:"";return W("ctx_search",{content:[{type:"text",text:`No results found.${_}`}]})}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})}});pg=null,mg=null;xM=1440*60*1e3,Ow=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}/${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.
707
707
 
708
708
  Better than WebFetch: preview is immediate, full content is searchable, raw HTML never enters context.
709
709
 
@@ -715,14 +715,14 @@ PARALLELIZE I/O: For multi-URL research (library evaluation, migration scans, do
715
715
  Example: requests: [{url: 'https://react.dev/...', source: 'react'}, {url: 'https://vuejs.org/...', source: 'vue'}], concurrency: 5.
716
716
  Indexing is serial regardless of concurrency \u2014 fetches race, FTS5 writes don't (avoids SQLite WAL contention).
717
717
 
718
- When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:M.object({url:M.string().optional().describe("Single URL to fetch and index (legacy single-shape)"),source:M.string().optional().describe("Label for the indexed content when using single `url` (e.g., 'React useEffect docs', 'Supabase Auth API'). For batch, put source in each requests entry."),requests:M.array(M.object({url:M.string().describe("URL to fetch"),source:M.string().optional().describe("Label for this URL's indexed content")})).min(1).optional().describe("Batch shape: array of {url, source?} entries. Use with concurrency>1 for parallel fetch. Each request indexed under its own source label. Output preserves input order."),concurrency:M.coerce.number().int().min(1).max(8).optional().default(1).describe("Max URLs to fetch in parallel (1-8, default: 1). Use 4-8 for I/O-bound multi-URL batches (library docs, changelogs, pricing pages). Capped by os.cpus().length on small machines (response notes when capped). Indexing is always serial regardless \u2014 only fetches race."),force:M.boolean().optional().describe("Skip cache and re-fetch even if content was recently indexed")})},async({url:t,source:e,requests:r,concurrency:n,force:o})=>{let s=r||(t?[{url:t,source:e}]:[]);if(s.length===0)return W("ctx_fetch_and_index",{content:[{type:"text",text:"ctx_fetch_and_index requires either `url` (single) or `requests: [{url, source?}, ...]` (batch)."}],isError:!0});let i=!r&&s.length===1,a=n??1,c=s.map(P=>({run:()=>bM(P.url,P.source,o)})),{settled:u,effectiveConcurrency:l,capped:d}=await Bh(c,{concurrency:a,capByCpuCount:!i&&a>1}),p=[];for(let P=0;P<u.length;P++){let N=u[P];if(N.status==="rejected"){let je=N.reason instanceof Error?N.reason.message:String(N.reason);p.push({kind:"job_error",url:s[P].url,error:je});continue}let ce=N.value;ce.kind==="cached"?(ae.cacheHits++,ae.cacheBytesSaved+=ce.estimatedBytes,p.push({kind:"cached",label:ce.label,chunkCount:ce.chunkCount,ageStr:ce.ageStr})):ce.kind==="fetch_error"?p.push({kind:"fetch_error",url:ce.url,error:ce.error,reason:ce.reason}):p.push({kind:"fetched",indexed:SM(ce)})}if(i){let P=p[0];if(P.kind==="cached")return W("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${P.label}** \u2014 ${P.chunkCount} sections, indexed ${P.ageStr} (fresh, TTL: 24h).
718
+ When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:M.object({url:M.string().optional().describe("Single URL to fetch and index (legacy single-shape)"),source:M.string().optional().describe("Label for the indexed content when using single `url` (e.g., 'React useEffect docs', 'Supabase Auth API'). For batch, put source in each requests entry."),requests:M.array(M.object({url:M.string().describe("URL to fetch"),source:M.string().optional().describe("Label for this URL's indexed content")})).min(1).optional().describe("Batch shape: array of {url, source?} entries. Use with concurrency>1 for parallel fetch. Each request indexed under its own source label. Output preserves input order."),concurrency:M.coerce.number().int().min(1).max(8).optional().default(1).describe("Max URLs to fetch in parallel (1-8, default: 1). Use 4-8 for I/O-bound multi-URL batches (library docs, changelogs, pricing pages). Capped by os.cpus().length on small machines (response notes when capped). Indexing is always serial regardless \u2014 only fetches race."),force:M.boolean().optional().describe("Skip cache and re-fetch even if content was recently indexed")})},async({url:t,source:e,requests:r,concurrency:n,force:o})=>{let s=r||(t?[{url:t,source:e}]:[]);if(s.length===0)return W("ctx_fetch_and_index",{content:[{type:"text",text:"ctx_fetch_and_index requires either `url` (single) or `requests: [{url, source?}, ...]` (batch)."}],isError:!0});let i=!r&&s.length===1,a=n??1,c=s.map(P=>({run:()=>EM(P.url,P.source,o)})),{settled:u,effectiveConcurrency:l,capped:d}=await Gh(c,{concurrency:a,capByCpuCount:!i&&a>1}),p=[];for(let P=0;P<u.length;P++){let N=u[P];if(N.status==="rejected"){let De=N.reason instanceof Error?N.reason.message:String(N.reason);p.push({kind:"job_error",url:s[P].url,error:De});continue}let ce=N.value;ce.kind==="cached"?(re.cacheHits++,re.cacheBytesSaved+=ce.estimatedBytes,p.push({kind:"cached",label:ce.label,chunkCount:ce.chunkCount,ageStr:ce.ageStr})):ce.kind==="fetch_error"?p.push({kind:"fetch_error",url:ce.url,error:ce.error,reason:ce.reason}):p.push({kind:"fetched",indexed:TM(ce)})}if(i){let P=p[0];if(P.kind==="cached")return W("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${P.label}** \u2014 ${P.chunkCount} sections, indexed ${P.ageStr} (fresh, TTL: 24h).
719
719
  To refresh: call ctx_fetch_and_index again with \`force: true\`.
720
720
 
721
721
  You MUST call ctx_search() to answer questions about this content \u2014 this cached response contains no content.
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
- `);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,_=0,y=0,x=0,k=[];for(let P of p)if(P.kind==="cached")_++,m.push(`- [cache] ${P.label} \u2014 ${P.chunkCount} sections (${P.ageStr})`);else if(P.kind==="fetched"){y++,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}
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 E=(g/1024).toFixed(1),B=d?` cap=${l}/${VD().length}cpu`:"",z=(P,N,ce)=>`${P} ${P===1?N:ce}`,Le=[`fetched ${s.length} c=${l}${B}. ok=${y} cache=${_} err=${x}. ${z(h,"section","sections")} ${E}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 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(`
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,58 +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(hM,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(kg,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=bg(o.command,"batch_execute");if(s)return s}try{let o=Mw(Ii.shell,xg),{outputs:s,timedOut:i}=await Lw(t,{timeout:r,concurrency:n,nodeOptsPrefix:o,onFsBytes:x=>{ae.bytesSandboxed+=x}},Ni),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=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(`
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});nr(c);let l=ro(),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=Dw(l,e,d),_=l.getDistinctiveTerms?l.getDistinctiveTerms(p.sourceId):[],y=[`Executed ${t.length} commands (${u} lines, ${(c/1024).toFixed(1)}KB). Indexed ${p.totalChunks} sections. Searched ${e.length} queries.`,"",...m,"",...g,_.length>0?`
744
- Searchable terms for follow-up: ${_.join(", ")}`:""].join(`
745
- `);return W("ctx_batch_execute",{content:[{type:"text",text:y}]})}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=Oi(),r=lu(),n=me(Mr(),`${e}${r}.db`);if(ze(n)){let o=Ar(),s=new o(n,{readonly:!0});try{let i=new os(s),a=i.queryAll(ae),c=i.getMcpToolUsage(),u=Ri();t=mu(a,jr,Dr,{lifetime:u,mcpUsage:c})}finally{s.close()}}else{let s=new os(Iw()).queryAll(ae),i=Ri();t=mu(s,jr,Dr,{lifetime:i})}}catch{let r=new os(Iw()).queryAll(ae),n;try{n=Ri()}catch{}t=mu(r,jr,Dr,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=ze(ot(kt,"package.json"))?kt:rr(kt),r=11,n=(gu.length/r*100).toFixed(0);t.push(`[OK] Runtimes: ${gu.length}/${r} (${n}%) \u2014 ${gu.join(", ")}`),so()?t.push("[OK] Performance: FAST (Bun)"):t.push("[WARN] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");{let s=new Jo({runtimes:Ii});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=Ar();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 ze(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${jr}`),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=ze(ot(kt,"package.json"))?kt:rr(kt),e=ot(t,"cli.bundle.mjs"),r=ot(t,"build","cli.js");try{let s=Mr(),i=me(rr(s),"insight-cache");if(ze(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{}_u(i,{recursive:!0,force:!0})}}catch{}let n;if(ze(e))n=`${ye(e)} upgrade`;else if(ze(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(`
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?`
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(`
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(_r){let r=!1;try{_r.cleanup(),r=!0}catch{}_r=null,r&&e.push("knowledge base (FTS5)")}else{let r=fg(),n=!1;for(let o of["","-wal","-shm"])try{gr(r+o),n=!0}catch{}n&&e.push("knowledge base (FTS5)")}try{let r=me(to(),".context-mode","content",`${Oi()}.db`);for(let n of["","-wal","-shm"])try{gr(r+n)}catch{}}catch{}try{let r=Oi(),n=lu(),o=Mr(),s=me(o,`${r}${n}.db`),i=me(o,`${r}${n}-events.md`),a=me(o,`${r}${n}.cleanup`),c=!1;for(let l of["","-wal","-shm"])try{gr(s+l),c=!0}catch{}c&&e.push("session events DB");let u=!1;try{gr(i),u=!0}catch{}u&&e.push("session events markdown");try{gr(a)}catch{}}catch{}ae.calls={},ae.bytesReturned={},ae.bytesIndexed=0,ae.bytesSandboxed=0,ae.cacheHits=0,ae.cacheBytesSaved=0,ae.sessionStart=Date.now(),e.push("session stats");try{let r=Aw();ze(r)&&gr(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=ze(ot(kt,"package.json"))?kt:rr(kt),u=ot(c,"insight"),l=i?ot(i):Mr(),d=a?ot(a):me(rr(l),"content"),p=me(rr(l),"insight-cache");if(!ze(me(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;Ci(p,{recursive:!0});let h=ww(me(u,"server.mjs")).mtimeMs,g=ze(me(p,"server.mjs"))?ww(me(p,"server.mjs")).mtimeMs:0;if(h>g&&(f.push("Copying source files..."),FD(u,p,{recursive:!0,force:!0}),f.push("Source files copied."),m=!0),!ze(me(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{_u(me(p,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!ze(me(p,"node_modules","vite"))||!ze(me(p,"node_modules","better-sqlite3")))throw _u(me(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 y=!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()}),y=!0}catch{}if(y&&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(y){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(zr&&zr.pid&&!zr.killed)try{zr.kill("SIGTERM")}catch{}let{spawn:x}=await import("node:child_process"),k=x("node",[me(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(),zr=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=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.
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 E=`http://localhost:${s}`,B=process.platform;try{B==="darwin"?Ht(`open "${E}"`,{stdio:"pipe"}):B==="win32"?Ht(`start "" "${E}"`,{stdio:"pipe"}):Ht(`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(`
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(`
753
753
  `)+`
754
754
 
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}`}]})}});kM().catch(t=>{console.error("Fatal:",t),process.exit(1)})});import{stdout as m$,stdin as f$}from"node:process";import*as Fr from"node:readline";var Rg=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,Cg=t=>t===12288||t>=65281&&t<=65376||t>=65504&&t<=65510,Og=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 ku=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,Di=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,Mi=/\t{1,1000}/y,wu=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"),Li=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,r$=new RegExp("\\p{M}+","gu"),n$={limit:1/0,ellipsis:""},Ig=(t,e={},r={})=>{let n=e.limit??1/0,o=e.ellipsis??"",s=e?.ellipsisWidth??(o?Ig(o,n$,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,_=0,y=!1,x=g,k=Math.max(0,n-s),E=0,B=0,z=0,K=0;e:for(;;){if(B>E||h>=g&&h>m){let Le=t.slice(E,B)||t.slice(m,h);_=0;for(let P of Le.replaceAll(r$,"")){let N=P.codePointAt(0)||0;if(Cg(N)?K=d:Og(N)?K=f:u!==p&&Rg(N)?K=u:K=p,z+K>k&&(x=Math.min(x,Math.max(E,m)+_)),z+K>n){y=!0;break e}_+=P.length,z+=K}E=B=0}if(h>=g)break;if(Li.lastIndex=h,Li.test(t)){if(_=Li.lastIndex-h,K=_*p,z+K>k&&(x=Math.min(x,h+Math.floor((k-z)/p))),z+K>n){y=!0;break}z+=K,E=m,B=h,h=m=Li.lastIndex;continue}if(ku.lastIndex=h,ku.test(t)){if(z+i>k&&(x=Math.min(x,h)),z+i>n){y=!0;break}z+=i,E=m,B=h,h=m=ku.lastIndex;continue}if(Di.lastIndex=h,Di.test(t)){if(_=Di.lastIndex-h,K=_*a,z+K>k&&(x=Math.min(x,h+Math.floor((k-z)/a))),z+K>n){y=!0;break}z+=K,E=m,B=h,h=m=Di.lastIndex;continue}if(Mi.lastIndex=h,Mi.test(t)){if(_=Mi.lastIndex-h,K=_*c,z+K>k&&(x=Math.min(x,h+Math.floor((k-z)/c))),z+K>n){y=!0;break}z+=K,E=m,B=h,h=m=Mi.lastIndex;continue}if(wu.lastIndex=h,wu.test(t)){if(z+l>k&&(x=Math.min(x,h)),z+l>n){y=!0;break}z+=l,E=m,B=h,h=m=wu.lastIndex;continue}h+=1}return{width:y?k:z,index:y?x:g,truncated:y,ellipsed:y&&n>=s}},Ng=Ig;var o$={limit:1/0,ellipsis:"",ellipsisWidth:0},s$=(t,e={})=>Ng(t,o$,e).width,st=s$;var Fi="\x1B",Mg="\x9B",i$=39,Eu="\x07",Lg="[",a$="]",Fg="m",Tu=`${a$}8;;`,Ag=new RegExp(`(?:\\${Lg}(?<code>\\d+)m|\\${Tu}(?<uri>.*)${Eu})`,"y"),zg=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},jg=t=>`${Fi}${Lg}${t}${Fg}`,Dg=t=>`${Fi}${Tu}${t}${Eu}`,$u=(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===Fi||d===Mg)&&(o=!0,s=e.startsWith(Tu,l+1)),o?s?d===Eu&&(o=!1,s=!1):d===Fg&&(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())},c$=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("")},u$=(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(""),$u(a,p,e),c=st(a.at(-1)??"");continue}if(c+f>e&&c&&f){if(r.wordWrap===!1&&c<e){$u(a,p,e),c=st(a.at(-1)??"");continue}a.push(""),c=0}if(c+f>e&&r.wordWrap===!1){$u(a,p,e),c=st(a.at(-1)??"");continue}a[a.length-1]+=p,c+=f}r.trim!==!1&&(a=a.map(d=>c$(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===Fi||p===Mg){Ag.lastIndex=d+1;let m=Ag.exec(u)?.groups;if(m?.code!==void 0){let h=Number.parseFloat(m.code);o=h===i$?void 0:h}else m?.uri!==void 0&&(s=m.uri.length===0?void 0:m.uri)}if(u[d+1]===`
758
- `){s&&(n+=Dg(""));let f=o?zg(o):void 0;o&&f&&(n+=jg(f))}else p===`
759
- `&&(o&&zg(o)&&(n+=jg(o)),s&&(n+=Dg(s)))}return n},l$=/\r?\n/;function no(t,e,r){return String(t).normalize().split(l$).map(n=>u$(n,e,r)).join(`
760
- `)}var ls=us(Ru(),1);import{ReadStream as Zg}from"node:tty";var h$=["up","down","left","right","space","enter","cancel"],g$=["January","February","March","April","May","June","July","August","September","October","November","December"],or={actions:new Set(h$),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:[...g$],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 Hg(t,e){if(typeof t=="string")return or.aliases.get(t)===e;for(let r of t)if(r!==void 0&&Hg(r,e))return!0;return!1}var _$=globalThis.process.platform.startsWith("win");function qg({input:t=f$,output:e=m$,overwrite:r=!0,hideCursor:n=!0}={}){let o=Fr.createInterface({input:t,output:e,prompt:"",tabSize:1});Fr.emitKeypressEvents(t,o),t instanceof Zg&&t.isTTY&&t.setRawMode(!0);let s=(i,{name:a,sequence:c})=>{let u=String(i);if(Hg([u,a,c],"cancel")){n&&e.write(ls.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(ls.cursor.hide),t.once("keypress",s),()=>{t.off("keypress",s),n&&e.write(ls.cursor.show),t instanceof Zg&&t.isTTY&&!_$&&t.setRawMode(!1),o.terminal=!1,o.close()}}var Cu=t=>"columns"in t&&typeof t.columns=="number"?t.columns:80;import{styleText as Pe,stripVTControlCharacters as _L}from"node:util";import $t from"node:process";var ds=us(Ru(),1);function x$(){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 Ou=x$(),v$=()=>process.env.CI==="true";var fe=(t,e)=>Ou?t:e,bL=fe("\u25C6","*"),b$=fe("\u25A0","x"),S$=fe("\u25B2","x"),Iu=fe("\u25C7","o"),k$=fe("\u250C","T"),Ur=fe("\u2502","|"),w$=fe("\u2514","\u2014"),SL=fe("\u2510","T"),kL=fe("\u2518","\u2014"),wL=fe("\u25CF",">"),$L=fe("\u25CB"," "),EL=fe("\u25FB","[\u2022]"),TL=fe("\u25FC","[+]"),PL=fe("\u25FB","[ ]"),RL=fe("\u25AA","\u2022"),Bg=fe("\u2500","-"),$$=fe("\u256E","+"),E$=fe("\u251C","+"),T$=fe("\u256F","+"),P$=fe("\u2570","+"),CL=fe("\u256D","+"),R$=fe("\u25CF","\u2022"),C$=fe("\u25C6","*"),O$=fe("\u25B2","!"),I$=fe("\u25A0","x");var A={message:(t=[],{symbol:e=Pe("gray",Ur),secondarySymbol:r=Pe("gray",Ur),output:n=process.stdout,spacing:o=1,withGuide:s}={})=>{let i=[],a=s??or.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: ${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(`
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:Pe("blue",R$)})},success:(t,e)=>{A.message(t,{...e,symbol:Pe("green",C$)})},step:(t,e)=>{A.message(t,{...e,symbol:Pe("green",Iu)})},warn:(t,e)=>{A.message(t,{...e,symbol:Pe("yellow",O$)})},warning:(t,e)=>{A.warn(t,e)},error:(t,e)=>{A.message(t,{...e,symbol:Pe("red",I$)})}};var Nu=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??or.withGuide?`${Pe("gray",k$)} `:"";r.write(`${n}${t}
764
- `)},Ui=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??or.withGuide?`${Pe("gray",Ur)}
765
- ${Pe("gray",w$)} `:"";r.write(`${n}${t}
766
-
767
- `)};var N$=t=>Pe("dim",t),A$=(t,e,r)=>{let n={hard:!0,trim:!1},o=no(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 no(t,a,n)},Au=(t="",e="",r)=>{let n=r?.output??$t.stdout,o=r?.withGuide??or.withGuide,s=r?.format??N$,i=["",...A$(t,Cu(n)-6,s).split(`
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=>`${Pe("gray",Ur)} ${p}${" ".repeat(c-st(p))}${Pe("gray",Ur)}`).join(`
770
- `),l=o?`${Pe("gray",Ur)}
771
- `:"",d=o?E$:P$;n.write(`${l}${Pe("green",Iu)} ${Pe("reset",e)} ${Pe("gray",Bg.repeat(Math.max(c-a-1,1))+$$)}
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)}
765
+ ${Re("gray",R$)} `:"";r.write(`${n}${t}
766
+
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(`
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
+ `),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$)}
772
772
  ${u}
773
- ${Pe("gray",d+Bg.repeat(c+2)+T$)}
774
- `)};var z$=t=>Pe("magenta",t),zu=({indicator:t="dots",onCancel:e,output:r=process.stdout,cancelMessage:n,errorMessage:o,frames:s=Ou?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],delay:i=Ou?80:120,signal:a,...c}={})=>{let u=v$(),l,d,p=!1,f=!1,m="",h,g=performance.now(),_=Cu(r),y=c?.styleFrame??z$,x=Te=>{let wt=Te>1?o??or.messages.error:n??or.messages.cancel;f=Te===1,p&&(je(wt,Te),f&&typeof e=="function"&&e())},k=()=>x(2),E=()=>x(1),B=()=>{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
- `);let Te=no(h,_,{hard:!0,trim:!1}).split(`
776
- `);Te.length>1&&r.write(ds.cursor.up(Te.length-1)),r.write(ds.cursor.to(0)),r.write(ds.erase.down())},Le=Te=>Te.replace(/\.+$/,""),P=Te=>{let wt=(performance.now()-Te)/1e3,xr=Math.floor(wt/60),vr=Math.floor(wt%60);return xr>0?`[${xr}m ${vr}s]`:`[${vr}s]`},N=c.withGuide??or.withGuide,ce=(Te="")=>{p=!0,l=qg({output:r}),m=Le(Te),g=performance.now(),N&&r.write(`${Pe("gray",Ur)}
777
- `);let wt=0,xr=0;B(),d=setInterval(()=>{if(u&&m===h)return;K(),h=m;let vr=y(s[wt]),ji;if(u)ji=`${vr} ${m}...`;else if(t==="timer")ji=`${vr} ${m} ${P(g)}`;else{let Kw=".".repeat(Math.floor(xr)).slice(0,3);ji=`${vr} ${m}${Kw}`}let Gw=no(ji,_,{hard:!0,trim:!1});r.write(Gw),wt=wt+1<s.length?wt+1:0,xr=xr<4?xr+.125:0},i)},je=(Te="",wt=0,xr=!1)=>{if(!p)return;p=!1,clearInterval(d),K();let vr=wt===0?Pe("green",Iu):wt===1?Pe("red",b$):Pe("red",S$);m=Te??m,xr||(t==="timer"?r.write(`${vr} ${m} ${P(g)}
778
- `):r.write(`${vr} ${m}
779
- `)),z(),l()};return{start:ce,stop:(Te="")=>je(Te,0),message:(Te="")=>{m=Le(Te??m)},cancel:(Te="")=>je(Te,1),error:(Te="")=>je(Te,2),clear:()=>je("",0,!0),get isCancelled(){return f}}},OL={light:fe("\u2500","-"),heavy:fe("\u2501","="),block:fe("\u2588","#")};var IL=`${Pe("gray",Ur)} `;var T=us(Gg(),1);Wi();oa();import{execFileSync as $g,execFile as wM}from"node:child_process";import{readFileSync as vu,writeFileSync as $M,cpSync as Hw,accessSync as qw,existsSync as yr,rmSync as as,closeSync as EM,openSync as TM,chmodSync as PM,constants as Bw}from"node:fs";import{request as RM}from"node:https";import{resolve as Me,dirname as Eg,join as xt}from"node:path";import{tmpdir as CM,devNull as OM,homedir as Tg}from"node:os";import{fileURLToPath as IM,pathToFileURL as Vw}from"node:url";var NM={"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 AM(t,e){try{EM(2),TM(OM,"w")}catch{process.stderr.write=(()=>!0)}let r=NM[t]?.[e];r||process.exit(1);let n=cs();await import(Vw(xt(n,r)).href)}var Lr=process.argv.slice(2);Lr[0]==="doctor"?FM().then(t=>process.exit(t)):Lr[0]==="upgrade"?ZM():Lr[0]==="hook"?AM(Lr[1],Lr[2]):Lr[0]==="insight"?UM(Lr[1]?Number(Lr[1]):4747):Lr[0]==="statusline"?HM():Promise.resolve().then(()=>(Zw(),Uw));function uV(t){return t.replace(/\\/g,"/")}var bu=process.platform==="win32";function zi(t,e={}){$g(bu?"npm.cmd":"npm",t,{...e,...bu?{shell:!0}:{}})}function zM(t,e={}){let{execSync:r}=Pg("node:child_process");r(bu?t.replace(/^npm /,"npm.cmd "):t,{...e,...bu?{shell:!0}:{}})}function jM(t,e=process.platform,r=wM){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 DM(){let t=IM(import.meta.url),e=Eg(t);return e.endsWith("/build")||e.endsWith("\\build")||e.endsWith("/src")||e.endsWith("\\src")?Me(e,".."):e}function MM(t){let e=["packages","context-mode@latest","node_modules","context-mode"];if(process.platform==="win32"){let r=process.env.LOCALAPPDATA;return r?Me(r,t,...e):Me(Tg(),"AppData","Local",t,...e)}return Me(Tg(),".cache",t,...e)}function cs(){let t=kr().platform;return t==="opencode"||t==="kilo"?MM(t):DM()}function Ww(){try{return JSON.parse(vu(Me(cs(),"package.json"),"utf-8")).version??"unknown"}catch{return"unknown"}}async function LM(){return new Promise(t=>{let e=RM("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 FM(){process.stdout.isTTY&&console.clear();let t=kr(),e=await _s(t.platform);Nu(T.default.bgMagenta(T.default.white(" context-mode doctor "))),A.info(`Platform: ${T.default.cyan(e.name)}`+T.default.dim(` (${t.confidence} confidence \u2014 ${t.reason})`));let r=0,n=zu();n.start("Running diagnostics");let o,s;try{o=oo(),s=Vi(o)}catch{return n.stop("Diagnostics partial"),A.warn(T.default.yellow("Could not detect runtimes")+T.default.dim(" \u2014 module may be missing, restart session after upgrade")),Ui(T.default.yellow("Doctor could not fully run \u2014 try again after restarting")),1}n.stop("Diagnostics complete"),Au(Bi(o),"Runtimes"),so()?A.success(T.default.green("Performance: FAST")+" \u2014 Bun detected for JS/TS execution"):A.warn(T.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(T.default.red(`Language coverage: ${s.length}/${i} (${a}%)`)+" \u2014 too few runtimes detected"+T.default.dim(` \u2014 ${s.join(", ")||"none"}`))):A.info(`Language coverage: ${s.length}/${i} (${a}%)`+T.default.dim(` \u2014 ${s.join(", ")}`)),A.step("Testing server initialization...");try{let{PolyglotExecutor:h}=await Promise.resolve().then(()=>(qh(),Lk)),_=await new h({runtimes:o}).execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(_.exitCode===0&&_.stdout.trim()==="ok")A.success(T.default.green("Server test: PASS"));else{r++;let y=_.stderr?.trim()?` (${_.stderr.trim().slice(0,200)})`:"";A.error(T.default.red("Server test: FAIL")+` \u2014 exit ${_.exitCode}${y}`)}}catch(h){let g=h instanceof Error?h.message:String(h);g.includes("Cannot find module")||g.includes("MODULE_NOT_FOUND")?A.warn(T.default.yellow("Server test: SKIP")+T.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,A.error(T.default.red("Server test: FAIL")+` \u2014 ${g}`))}A.step(`Checking ${e.name} hooks configuration...`);let c=cs(),u=e.validateHooks(c);for(let h of u)h.status==="pass"?A.success(T.default.green(`${h.check}: PASS`)+` \u2014 ${h.message}`):A.error(T.default.red(`${h.check}: FAIL`)+` \u2014 ${h.message}`+(h.fix?T.default.dim(`
781
- Run: ${h.fix}`):""));A.step("Checking hook script...");let l=Me(c,"hooks","pretooluse.mjs");try{qw(l,Bw.R_OK),A.success(T.default.green("Hook script exists: PASS")+T.default.dim(` \u2014 ${l}`))}catch{A.error(T.default.red("Hook script exists: FAIL")+T.default.dim(` \u2014 not found at ${l}`))}A.step(`Checking ${e.name} plugin registration...`);let d=e.checkPluginRegistration();d.status==="pass"?A.success(T.default.green("Plugin enabled: PASS")+T.default.dim(` \u2014 ${d.message}`)):A.warn(T.default.yellow("Plugin enabled: WARN")+` \u2014 ${d.message}`),A.step("Checking FTS5 / SQLite...");try{let h=(await Promise.resolve().then(()=>(ts(),Hk))).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 _=g.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();g.close(),_&&_.content==="hello world"?A.success(T.default.green("FTS5 / SQLite: PASS")+" \u2014 native module works"):(r++,A.error(T.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(T.default.yellow("FTS5 / better-sqlite3: SKIP")+T.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,A.error(T.default.red("FTS5 / better-sqlite3: FAIL")+` \u2014 ${g}`+T.default.dim(`
782
- Try: npm rebuild better-sqlite3`)))}A.step("Checking versions...");let p=Ww(),f=await LM(),m=e.getInstalledVersion();return f==="unknown"?A.warn(T.default.yellow("npm (MCP): WARN")+` \u2014 local v${p}, could not reach npm registry`):p===f?A.success(T.default.green("npm (MCP): PASS")+` \u2014 v${p}`):A.warn(T.default.yellow("npm (MCP): WARN")+` \u2014 local v${p}, latest v${f}`+T.default.dim(`
783
- Run: /context-mode:ctx-upgrade`)),m==="not installed"?A.info(T.default.dim(`${e.name}: not installed`)+" \u2014 using standalone MCP mode"):f!=="unknown"&&m===f?A.success(T.default.green(`${e.name}: PASS`)+` \u2014 v${m}`):f!=="unknown"?A.warn(T.default.yellow(`${e.name}: WARN`)+` \u2014 v${m}, latest v${f}`+T.default.dim(`
784
- Run: /context-mode:ctx-upgrade`)):A.info(`${e.name}: v${m}`+T.default.dim(" \u2014 could not verify against npm registry")),r>0?(Ui(T.default.red(`Diagnostics failed \u2014 ${r} critical issue(s) found`)),1):(Ui(s.length>=4?T.default.green("Diagnostics complete!"):T.default.yellow("Some checks need attention \u2014 see above for details")),0)}async function UM(t){try{let{execSync:e,spawn:r}=await import("node:child_process"),{statSync:n,mkdirSync:o,cpSync:s}=await import("node:fs"),i=Me(cs(),"insight"),a=kr(),u=(await _s(a.platform)).getSessionDir(),l=xt(Eg(u),"content"),d=xt(Eg(u),"insight-cache");yr(xt(i,"server.mjs"))||(console.error("Error: Insight source not found. Try upgrading context-mode."),process.exit(1)),o(d,{recursive:!0});let p=n(xt(i,"server.mjs")).mtimeMs,f=yr(xt(d,"server.mjs"))?n(xt(d,"server.mjs")).mtimeMs:0;if(p>f&&(console.log("Copying Insight source..."),s(i,d,{recursive:!0,force:!0})),!yr(xt(d,"node_modules"))){console.log("Installing dependencies (first run)...");try{zM("npm install --production=false",{cwd:d,stdio:"inherit",timeout:3e5})}catch{try{as(xt(d,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!yr(xt(d,"node_modules","vite"))||!yr(xt(d,"node_modules","better-sqlite3")))throw as(xt(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(`
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(`
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)}
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(`
782
+ Root cause: prebuild-install was likely not on PATH, so install fell through to node-gyp without an MSVC toolchain (Windows).
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(`
785
788
  context-mode Insight
786
789
  ${m}
787
- `);let h=r("node",[xt(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=>{_(),k.resume()});x.on("error",y),x.on("timeout",()=>{x.destroy(),y(new Error("timeout"))}),x.end()})}catch{console.error(`
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(`
788
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(`
789
- 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)}jM(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(`
790
- Insight error: ${r}`),process.exit(1)}}async function ZM(){process.stdout.isTTY&&console.clear();let t=kr(),e=await _s(t.platform);Nu(T.default.bgCyan(T.default.black(" context-mode upgrade "))),A.info(`Platform: ${T.default.cyan(e.name)}`+T.default.dim(` (${t.confidence} confidence)`));let r=cs(),n=[],o=zu();A.step("Pulling latest from GitHub...");let s=Ww(),i=xt(CM(),`context-mode-upgrade-${Date.now()}`);o.start("Cloning mksglu/context-mode");try{$g("git",["clone","--depth","1","https://github.com/mksglu/context-mode.git",i],{stdio:"pipe",timeout:3e4}),o.stop("Downloaded");let d=i,f=JSON.parse(vu(Me(d,"package.json"),"utf-8")).version??"unknown";if(f===s){A.success(T.default.green("Already on latest")+` \u2014 v${s}`),as(i,{recursive:!0,force:!0});return}else A.info(`Update available: ${T.default.yellow("v"+s)} \u2192 ${T.default.green("v"+f)}`);o.start("Installing dependencies & building"),zi(["install","--no-audit","--no-fund"],{cwd:d,stdio:"pipe",timeout:12e4}),zi(["run","build"],{cwd:d,stdio:"pipe",timeout:6e4}),o.stop("Built successfully"),o.start("Updating files in-place");let h=[...JSON.parse(vu(Me(d,"package.json"),"utf-8")).files||[],"src","package.json"];for(let _ of h)try{as(Me(r,_),{recursive:!0,force:!0}),Hw(Me(d,_),Me(r,_),{recursive:!0})}catch{}let g={mcpServers:{"context-mode":{command:"node",args:[Me(r,"start.mjs")]}}};if($M(Me(r,".mcp.json"),JSON.stringify(g,null,2)+`
791
- `),o.stop(T.default.green(`Updated in-place to v${f}`)),e.updatePluginRegistry(r,f),A.info(T.default.dim(" Registry synced to "+r)),o.start("Installing production dependencies"),zi(["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{zi(["rebuild","better-sqlite3"],{cwd:r,stdio:"pipe",timeout:6e4}),o.stop(T.default.green("Native addons rebuilt")),n.push("Rebuilt better-sqlite3 for current Node.js")}catch(_){let y=_ instanceof Error?_.message:String(_);o.stop(T.default.yellow("Native addon rebuild warning")),A.warn(T.default.yellow("better-sqlite3 rebuild issue")+` \u2014 ${y}`+T.default.dim(`
792
- Try manually: cd "${r}" && npm rebuild better-sqlite3`))}}o.start("Updating npm global package");try{zi(["install","-g",r,"--no-audit","--no-fund"],{stdio:"pipe",timeout:3e4}),o.stop(T.default.green("npm global updated")),n.push("Updated npm global package")}catch{o.stop(T.default.yellow("npm global update skipped")),A.info(T.default.dim(" Could not update global npm \u2014 may need sudo or standalone install"))}as(i,{recursive:!0,force:!0});try{let _=Me(Tg(),".claude","plugins","installed_plugins.json");if(yr(_)){let x=JSON.parse(vu(_,"utf-8"))?.plugins?.["context-mode@context-mode"];if(Array.isArray(x))for(let k of x){let E=k.installPath;if(E&&E!==r&&yr(E)){let B=Me(d,"skills");yr(B)&&(Hw(B,Me(E,"skills"),{recursive:!0}),n.push("Synced skills to active install path"))}}}}catch{}n.push(f!==s?`Updated v${s} \u2192 v${f}`:`Reinstalled v${s} from GitHub`),A.success(T.default.green("Plugin reinstalled from GitHub!")+T.default.dim(` \u2014 v${f}`))}catch(d){let p=d instanceof Error?d.message:String(d);o.stop(T.default.red("Update failed")),A.error(T.default.red("GitHub pull failed")+` \u2014 ${p}`),A.info(T.default.dim("Continuing with hooks/settings fix..."));try{as(i,{recursive:!0,force:!0})}catch{}}A.step(`Backing up ${e.name} settings...`);let a=e.backupSettings();a?.endsWith(".bak")?(A.success(T.default.green("Backup created")+T.default.dim(" -> "+a)),n.push("Backed up settings")):a?A.success(T.default.green("Backup skipped")+T.default.dim(" \u2014 no changes needed")):A.warn(T.default.yellow("No existing settings to backup")+" \u2014 a new one will be created"),A.step(`Configuring ${e.name} hooks...`);let c=e.configureAllHooks(r);for(let d of c)A.info(T.default.dim(` ${d}`)),n.push(d);A.success(T.default.green("Hooks configured")+T.default.dim(` \u2014 ${e.name}`)),A.step("Setting hook script permissions...");let u=e.setHookPermissions(r);if(process.platform!=="win32")for(let d of["build/cli.js","cli.bundle.mjs"]){let p=Me(r,d);try{qw(p,Bw.F_OK),PM(p,493),u.push(p)}catch{}}u.length>0?(A.success(T.default.green("Permissions set")+T.default.dim(` \u2014 ${u.length} hook script(s)`)),n.push(`Set ${u.length} hook scripts as executable`)):A.error(T.default.red("No hook scripts found")+T.default.dim(" \u2014 expected in "+Me(r,"hooks"))),n.length>0?Au(n.map(d=>T.default.green(" + ")+d).join(`
793
- `),"Changes Applied"):A.info(T.default.dim("No changes were needed."));let l=e.name==="Claude Code"?"/reload-plugins, new terminal, or restart session":"new terminal or restart session";A.warn(T.default.yellow("Restart for new MCP tools to take effect.")+T.default.dim(` (${l})`)),A.step("Running doctor to verify..."),console.log();try{let d=Me(r,"cli.bundle.mjs"),p=Me(r,"build","cli.js"),f=yr(d)?d:p;$g("node",[f,"doctor"],{stdio:"inherit",timeout:3e4,cwd:r})}catch{A.warn(T.default.yellow("Doctor had warnings")+T.default.dim(` \u2014 restart your ${e.name} session to pick up the new version`))}}function HM(){let t=Me(cs(),"bin","statusline.mjs");yr(t)||(process.stderr.write(`statusline script missing: ${t}
794
- `),process.exit(1)),import(Vw(t).href).catch(e=>{process.stderr.write(`statusline failed: ${e?.message??e}
795
- `),process.exit(1)})}export{zM as npmExec,zi as npmExecFile,jM as openInBrowser,uV as toUnixPath};
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};