context-mode 1.0.88 → 1.0.90

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 (132) 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 +184 -60
  6. package/build/adapters/antigravity/index.d.ts +3 -5
  7. package/build/adapters/antigravity/index.js +7 -35
  8. package/build/adapters/base.d.ts +27 -0
  9. package/build/adapters/base.js +59 -0
  10. package/build/adapters/claude-code/index.d.ts +9 -25
  11. package/build/adapters/claude-code/index.js +27 -141
  12. package/build/adapters/claude-code-base.d.ts +49 -0
  13. package/build/adapters/claude-code-base.js +113 -0
  14. package/build/adapters/client-map.js +5 -0
  15. package/build/adapters/codex/hooks.d.ts +21 -14
  16. package/build/adapters/codex/hooks.js +22 -15
  17. package/build/adapters/codex/index.d.ts +6 -10
  18. package/build/adapters/codex/index.js +13 -43
  19. package/build/adapters/copilot-base.d.ts +78 -0
  20. package/build/adapters/copilot-base.js +281 -0
  21. package/build/adapters/cursor/index.d.ts +3 -5
  22. package/build/adapters/cursor/index.js +6 -34
  23. package/build/adapters/detect.d.ts +7 -0
  24. package/build/adapters/detect.js +57 -56
  25. package/build/adapters/gemini-cli/index.d.ts +3 -5
  26. package/build/adapters/gemini-cli/index.js +7 -35
  27. package/build/adapters/jetbrains-copilot/config.d.ts +8 -0
  28. package/build/adapters/jetbrains-copilot/config.js +8 -0
  29. package/build/adapters/jetbrains-copilot/hooks.d.ts +51 -0
  30. package/build/adapters/jetbrains-copilot/hooks.js +82 -0
  31. package/build/adapters/jetbrains-copilot/index.d.ts +24 -0
  32. package/build/adapters/jetbrains-copilot/index.js +119 -0
  33. package/build/adapters/kiro/hooks.d.ts +14 -0
  34. package/build/adapters/kiro/hooks.js +23 -0
  35. package/build/adapters/kiro/index.d.ts +3 -5
  36. package/build/adapters/kiro/index.js +10 -38
  37. package/build/adapters/openclaw/index.d.ts +3 -4
  38. package/build/adapters/openclaw/index.js +6 -22
  39. package/build/adapters/opencode/index.d.ts +2 -3
  40. package/build/adapters/opencode/index.js +5 -16
  41. package/build/adapters/qwen-code/index.d.ts +39 -0
  42. package/build/adapters/qwen-code/index.js +199 -0
  43. package/build/adapters/types.d.ts +1 -1
  44. package/build/adapters/vscode-copilot/index.d.ts +16 -46
  45. package/build/adapters/vscode-copilot/index.js +29 -320
  46. package/build/adapters/zed/index.d.ts +3 -5
  47. package/build/adapters/zed/index.js +7 -35
  48. package/build/cli.js +113 -47
  49. package/build/lifecycle.d.ts +23 -0
  50. package/build/lifecycle.js +54 -13
  51. package/build/opencode-plugin.d.ts +19 -7
  52. package/build/opencode-plugin.js +19 -7
  53. package/build/pi-extension.js +24 -7
  54. package/build/runtime.js +24 -9
  55. package/build/security.d.ts +17 -1
  56. package/build/security.js +40 -6
  57. package/build/server.js +129 -21
  58. package/build/session/analytics.d.ts +8 -7
  59. package/build/session/analytics.js +95 -75
  60. package/build/session/db.d.ts +10 -1
  61. package/build/session/db.js +67 -8
  62. package/build/session/extract.js +10 -2
  63. package/build/session/project-attribution.d.ts +73 -0
  64. package/build/session/project-attribution.js +231 -0
  65. package/build/store.d.ts +7 -0
  66. package/build/store.js +117 -18
  67. package/build/truncate.d.ts +6 -0
  68. package/build/truncate.js +51 -29
  69. package/build/types.d.ts +8 -0
  70. package/cli.bundle.mjs +157 -136
  71. package/configs/antigravity/GEMINI.md +31 -36
  72. package/configs/claude-code/CLAUDE.md +31 -37
  73. package/configs/codex/AGENTS.md +35 -49
  74. package/configs/cursor/context-mode.mdc +24 -25
  75. package/configs/gemini-cli/GEMINI.md +30 -36
  76. package/configs/jetbrains-copilot/copilot-instructions.md +59 -0
  77. package/configs/jetbrains-copilot/hooks.json +16 -0
  78. package/configs/jetbrains-copilot/mcp.json +8 -0
  79. package/configs/kilo/AGENTS.md +30 -36
  80. package/configs/kiro/KIRO.md +30 -36
  81. package/configs/kiro/agent.json +1 -1
  82. package/configs/openclaw/AGENTS.md +30 -36
  83. package/configs/opencode/AGENTS.md +30 -36
  84. package/configs/pi/AGENTS.md +31 -36
  85. package/configs/qwen-code/QWEN.md +63 -0
  86. package/configs/vscode-copilot/copilot-instructions.md +30 -36
  87. package/configs/zed/AGENTS.md +31 -36
  88. package/hooks/codex/posttooluse.mjs +7 -7
  89. package/hooks/codex/pretooluse.mjs +3 -3
  90. package/hooks/codex/sessionstart.mjs +2 -1
  91. package/hooks/core/formatters.mjs +24 -0
  92. package/hooks/core/routing.mjs +40 -15
  93. package/hooks/core/tool-naming.mjs +2 -0
  94. package/hooks/cursor/posttooluse.mjs +7 -7
  95. package/hooks/cursor/pretooluse.mjs +3 -3
  96. package/hooks/cursor/sessionstart.mjs +2 -1
  97. package/hooks/cursor/stop.mjs +2 -2
  98. package/hooks/ensure-deps.mjs +22 -10
  99. package/hooks/gemini-cli/aftertool.mjs +8 -8
  100. package/hooks/gemini-cli/beforetool.mjs +3 -2
  101. package/hooks/gemini-cli/precompress.mjs +2 -2
  102. package/hooks/gemini-cli/sessionstart.mjs +12 -4
  103. package/hooks/jetbrains-copilot/posttooluse.mjs +61 -0
  104. package/hooks/jetbrains-copilot/precompact.mjs +54 -0
  105. package/hooks/jetbrains-copilot/pretooluse.mjs +27 -0
  106. package/hooks/jetbrains-copilot/sessionstart.mjs +119 -0
  107. package/hooks/kiro/posttooluse.mjs +6 -7
  108. package/hooks/kiro/pretooluse.mjs +3 -2
  109. package/hooks/posttooluse.mjs +8 -8
  110. package/hooks/precompact.mjs +3 -4
  111. package/hooks/pretooluse.mjs +43 -20
  112. package/hooks/routing-block.mjs +35 -33
  113. package/hooks/session-attribution.bundle.mjs +1 -0
  114. package/hooks/session-db.bundle.mjs +27 -8
  115. package/hooks/session-extract.bundle.mjs +2 -1
  116. package/hooks/session-helpers.mjs +44 -3
  117. package/hooks/session-loaders.mjs +37 -0
  118. package/hooks/session-snapshot.bundle.mjs +14 -14
  119. package/hooks/sessionstart.mjs +5 -5
  120. package/hooks/userpromptsubmit.mjs +26 -9
  121. package/hooks/vscode-copilot/posttooluse.mjs +8 -8
  122. package/hooks/vscode-copilot/precompact.mjs +2 -2
  123. package/hooks/vscode-copilot/pretooluse.mjs +3 -2
  124. package/hooks/vscode-copilot/sessionstart.mjs +2 -2
  125. package/insight/server.mjs +262 -32
  126. package/insight/src/lib/api.ts +2 -1
  127. package/insight/src/routes/index.tsx +16 -3
  128. package/insight/src/routes/search.tsx +1 -1
  129. package/openclaw.plugin.json +1 -1
  130. package/package.json +11 -2
  131. package/server.bundle.mjs +117 -99
  132. package/skills/ctx-insight/SKILL.md +1 -1
package/cli.bundle.mjs CHANGED
@@ -1,63 +1,62 @@
1
1
  #!/usr/bin/env node
2
- var Kk=Object.create;var ru=Object.defineProperty;var Jk=Object.getOwnPropertyDescriptor;var Yk=Object.getOwnPropertyNames;var Xk=Object.getPrototypeOf,Qk=Object.prototype.hasOwnProperty;var b=(t,e)=>()=>(t&&(e=t(t=0)),e);var R=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Le=(t,e)=>{for(var r in e)ru(t,r,{get:e[r],enumerable:!0})},ew=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Yk(e))!Qk.call(t,o)&&o!==r&&ru(t,o,{get:()=>e[o],enumerable:!(n=Jk(e,o))||n.enumerable});return t};var Go=(t,e,r)=>(r=t!=null?Kk(Xk(t)):{},ew(e||!t||!t.__esModule?ru(r,"default",{value:t,enumerable:!0}):r,t));var uu=R((uM,rg)=>{"use strict";var cu={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"},lw={up:(t=1)=>"\x1B[S".repeat(t),down:(t=1)=>"\x1B[T".repeat(t)},dw={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?cu.up():"");return t&&(e+=cu.left),e}};rg.exports={cursor:cu,scroll:lw,erase:dw,beep:"\x07"}});var ug=R((BM,gu)=>{var Pi=process||{},ag=Pi.argv||[],Ti=Pi.env||{},jw=!(Ti.NO_COLOR||ag.includes("--no-color"))&&(!!Ti.FORCE_COLOR||ag.includes("--color")||Pi.platform==="win32"||(Pi.stdout||{}).isTTY&&Ti.TERM!=="dumb"||!!Ti.CI),Mw=(t,e,r=t)=>n=>{let o=""+n,s=o.indexOf(e,t.length);return~s?t+Dw(o,e,r,s)+e:t+o+e},Dw=(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)},cg=(t=jw)=>{let e=t?Mw:()=>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")}};gu.exports=cg();gu.exports.createColors=cg});import{execSync as _u}from"node:child_process";import{existsSync as lg}from"node:fs";function Fe(t){try{let e=yu?`where ${t}`:`command -v ${t}`;return _u(e,{stdio:"pipe"}),!0}catch{return!1}}function dg(){if(Fe("bun"))return!0;if(!yu){let t=process.env.HOME??process.env.USERPROFILE??"";if(t&&lg(`${t}/.bun/bin/bun`))return!0}return!1}function Lw(){return Fe("bun")?"bun":`${process.env.HOME??process.env.USERPROFILE??""}/.bun/bin/bun`}function Fw(){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(lg(e))return e;try{let r=_u("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 Ct(t){try{return _u(`${t} --version`,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function Bn(){let e=dg()?Lw():null;return{javascript:e??process.execPath,typescript:e||(Fe("tsx")?"tsx":Fe("ts-node")?"ts-node":null),python:Fe("python3")?"python3":Fe("python")?"python":null,shell:yu?Fw()??(Fe("sh")?"sh":Fe("powershell")?"powershell":"cmd.exe"):Fe("bash")?"bash":"sh",ruby:Fe("ruby")?"ruby":null,go:Fe("go")?"go":null,rust:Fe("rustc")?"rustc":null,php:Fe("php")?"php":null,perl:Fe("perl")?"perl":null,r:Fe("Rscript")?"Rscript":Fe("r")?"r":null,elixir:Fe("elixir")?"elixir":null}}function Vn(){return dg()}function Ri(t){let e=[],r=t.javascript?.endsWith("bun")??!1;return e.push(` JavaScript: ${t.javascript} (${Ct(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${Ct(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${Ct(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${Ct(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${Ct(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${Ct(t.go)})`),t.rust&&e.push(` Rust: ${t.rust} (${Ct(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${Ct(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${Ct(t.perl)})`),t.r&&e.push(` R: ${t.r} (${Ct(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${Ct(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 Oi(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 pg(t,e,r){switch(e){case"javascript":return t.javascript.endsWith("bun")?[t.javascript,"run",r]:[t.javascript,r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript?.endsWith("bun")?[t.typescript,"run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}var yu,Ci=b(()=>{"use strict";yu=process.platform==="win32"});var mg,fg=b(()=>{"use strict";mg={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot",Codex:"codex","codex-mcp-client":"codex","Kilo Code":"kilo","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed"}});function Xo(t,e){let r=Yo[e],n=vu(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function vu(t,e){if(e){let r=Yo[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}function xu(t){return t.match(/node\s+"?([^"]+\.mjs)"?/)?.[1]??null}function _g(t){let e=Object.values(Yo);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var It,Zw,hg,Uw,JM,Yo,gg,YM,yg=b(()=>{"use strict";It={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},Zw=["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"],hg=Zw.join("|"),Uw=["Bash","Read","Write","Edit","NotebookEdit","Glob","Grep","TodoWrite","TaskCreate","TaskUpdate","EnterPlanMode","ExitPlanMode","Skill","Agent","AskUserQuestion","EnterWorktree","mcp__"],JM=Uw.join("|"),Yo={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},gg=[It.PRE_TOOL_USE,It.SESSION_START],YM=[It.POST_TOOL_USE,It.PRE_COMPACT,It.USER_PROMPT_SUBMIT]});var Su={};Le(Su,{ClaudeCodeAdapter:()=>bu});import{createHash as vg}from"node:crypto";import{readFileSync as Ii,writeFileSync as xg,mkdirSync as Hw,copyFileSync as qw,accessSync as bg,existsSync as Bw,readdirSync as Vw,chmodSync as Ww,constants as Sg}from"node:fs";import{resolve as Xr,join as Qo}from"node:path";import{homedir as Wn}from"node:os";var bu,ku=b(()=>{"use strict";yg();bu=class{name="Claude Code";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{updatedInput:e.updatedInput};if(e.decision==="context"&&e.additionalContext)return{additionalContext:e.additionalContext};if(e.decision==="ask")return{permissionDecision:"ask"}}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),e.updatedOutput&&(r.updatedMCPToolOutput=e.updatedOutput),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Xr(Wn(),".claude","settings.json")}getSessionDir(){let e=Qo(Wn(),".claude","context-mode","sessions");return Hw(e,{recursive:!0}),e}getSessionDBPath(e){let r=vg("sha256").update(e).digest("hex").slice(0,16);return Qo(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=vg("sha256").update(e).digest("hex").slice(0,16);return Qo(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){let r=`node ${e}/hooks/pretooluse.mjs`;return{PreToolUse:["Bash","WebFetch","Read","Grep","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].map(o=>({matcher:o,hooks:[{type:"command",command:r}]})),PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{let e=Ii(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){xg(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,It.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,It.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=[Qo(e,"hooks","hooks.json"),Qo(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=Ii(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=>Xo(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>Xo(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=Xr(Wn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Ii(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=[Xr(Wn(),".claude"),Xr(Wn(),".config","claude")];for(let r of e){let n=Xr(r,"plugins","cache","context-mode","context-mode");try{let s=Vw(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 m=d;if(!_g(m))return!0;let f=m.hooks??[];return f.every(h=>!h.command||!xu(h.command))?!0:f.every(h=>{let g=h.command?xu(h.command):null;return g?Bw(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&&gg.every(c=>this.checkHookType(void 0,s,c)))return r.hooks=n,this.writeSettings(r),o.push("Skipped settings.json registration \u2014 plugin hooks.json is sufficient"),o;let i=[It.PRE_TOOL_USE,It.SESSION_START];for(let a of i){let c=vu(a,e);if(a===It.PRE_TOOL_USE){let u={matcher:hg,hooks:[{type:"command",command:c}]},l=n.PreToolUse;if(l&&Array.isArray(l)){let d=l.findIndex(m=>Xo(m,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(m=>Xo(m,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n[a]=l}else n[a]=[u],o.push(`Created ${a} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{bg(e,Sg.R_OK);let r=e+".bak";return qw(e,r),r}catch{return null}}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(Yo)){let o=Xr(e,"hooks",n);try{bg(o,Sg.R_OK),Ww(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=Xr(Wn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Ii(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();xg(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 Gn(t,e){let r=wu[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var Re,wu,oD,sD,kg=b(()=>{"use strict";Re={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},wu={[Re.BEFORE_TOOL]:"beforetool.mjs",[Re.AFTER_TOOL]:"aftertool.mjs",[Re.PRE_COMPRESS]:"precompress.mjs",[Re.SESSION_START]:"sessionstart.mjs"},oD=[Re.BEFORE_TOOL,Re.SESSION_START],sD=[Re.AFTER_TOOL,Re.PRE_COMPRESS]});var Rg={};Le(Rg,{GeminiCLIAdapter:()=>Eu});import{createHash as wg}from"node:crypto";import{readFileSync as $u,writeFileSync as $g,mkdirSync as Eg,copyFileSync as Gw,accessSync as Tg,chmodSync as Kw,constants as Pg}from"node:fs";import{resolve as es,join as Ai}from"node:path";import{homedir as ts}from"node:os";var Eu,Og=b(()=>{"use strict";kg();Eu=class{name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return es(ts(),".gemini","settings.json")}getSessionDir(){let e=Ai(ts(),".gemini","context-mode","sessions");return Eg(e,{recursive:!0}),e}getSessionDBPath(e){let r=wg("sha256").update(e).digest("hex").slice(0,16);return Ai(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=wg("sha256").update(e).digest("hex").slice(0,16);return Ai(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[Re.BEFORE_TOOL]:[{matcher:"",hooks:[{type:"command",command:Gn(Re.BEFORE_TOOL,e)}]}],[Re.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Gn(Re.AFTER_TOOL,e)}]}],[Re.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Gn(Re.PRE_COMPRESS,e)}]}],[Re.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Gn(Re.SESSION_START,e)}]}]}}readSettings(){try{let e=$u(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=es(ts(),".gemini");Eg(r,{recursive:!0}),$g(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?.[Re.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?.[Re.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=es(ts(),".gemini","extensions","context-mode","package.json"),r=JSON.parse($u(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:Re.BEFORE_TOOL},{name:Re.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:Gn(i.name,e)}]},u=n[i.name];if(u&&Array.isArray(u)){let l=u.findIndex(d=>d.hooks?.some(f=>f.command?.includes("context-mode")));l>=0?(u[l]=c,o.push(`Updated existing ${i.name} hook entry`)):(u.push(c),o.push(`Added ${i.name} hook entry`)),n[i.name]=u}else n[i.name]=[c],o.push(`Created ${i.name} hooks section`)}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{Tg(e,Pg.R_OK);let r=e+".bak";return Gw(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=Ai(e,"hooks","gemini-cli");for(let o of Object.values(wu)){let s=es(n,o);try{Tg(s,Pg.R_OK),Kw(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=es(ts(),".gemini","extensions","context-mode","package.json"),o=JSON.parse($u(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),$g(n,JSON.stringify(o,null,2)+`
7
- `,"utf-8")}catch{}}getProjectDir(){return process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var Qr,pD,mD,Cg=b(()=>{"use strict";Qr={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},pD=[Qr.BEFORE,Qr.AFTER],mD=[Qr.COMPACTING]});var Ng={};Le(Ng,{OpenCodeAdapter:()=>Tu});import{createHash as Ig}from"node:crypto";import{readFileSync as Ag,writeFileSync as Yw,mkdirSync as Xw,copyFileSync as Qw,accessSync as e$,constants as t$}from"node:fs";import{resolve as Bt,join as ur}from"node:path";import{homedir as $r}from"node:os";function Jw(t){return t.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/,(\s*[}\]])/g,"$1")}var Tu,zg=b(()=>{"use strict";Cg();Tu=class{get name(){return this.platform==="kilo"?"KiloCode":"OpenCode"}paradigm="ts-plugin";settingsPath;capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};platform;constructor(e="opencode"){this.platform=e}parsePreToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},toolOutput:r.output,isError:void 0,sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")throw new Error(e.reason??"Blocked by context-mode hook");if(e.decision==="modify"&&e.updatedInput)return{args:e.updatedInput};if(e.decision==="ask")throw new Error(e.reason??"Action requires user confirmation (security policy)")}formatPostToolUseResponse(e){let r={};return e.updatedOutput&&(r.output=e.updatedOutput),e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return this.settingsPath??Bt(`${this.platform}.json`)}paths(){return this.platform==="kilo"?[Bt("kilo.json"),Bt("kilo.jsonc"),Bt(".kilo","kilo.json"),Bt(".kilo","kilo.jsonc"),ur($r(),".config","kilo","kilo.json"),ur($r(),".config","kilo","kilo.jsonc")]:[Bt("opencode.json"),Bt("opencode.jsonc"),Bt(".opencode","opencode.json"),Bt(".opencode","opencode.jsonc"),ur($r(),".config","opencode","opencode.json"),ur($r(),".config","opencode","opencode.jsonc")]}getSessionDir(){let e;process.platform==="win32"?e=process.env.APPDATA||ur($r(),"AppData","Roaming"):e=process.env.XDG_CONFIG_HOME||ur($r(),".config");let r=ur(e,this.platform,"context-mode","sessions");return Xw(r,{recursive:!0}),r}getSessionDBPath(e){let r=Ig("sha256").update(e).digest("hex").slice(0,16);return ur(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Ig("sha256").update(e).digest("hex").slice(0,16);return ur(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[Qr.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[Qr.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[Qr.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($r()))),n=null,o;for(let s of e)try{let i=Ag(s,"utf-8"),a=s.endsWith(".jsonc")?Jw(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){Yw(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=Bt($r(),".cache",this.platform,"node_modules","context-mode","package.json"),r=JSON.parse(Ag(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{e$(this.settingsPath,t$.R_OK);let r=this.settingsPath+".bak";return Qw(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 en,xD,bD,jg=b(()=>{"use strict";en={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},xD=[en.TOOL_CALL_BEFORE,en.TOOL_CALL_AFTER],bD=[en.COMMAND_NEW]});var Dg={};Le(Dg,{OpenClawAdapter:()=>Ru});import{createHash as Mg}from"node:crypto";import{readFileSync as Pu,writeFileSync as r$,mkdirSync as n$,copyFileSync as o$,accessSync as s$,constants as i$}from"node:fs";import{resolve as Er,join as rs}from"node:path";import{homedir as Ni}from"node:os";var Ru,Lg=b(()=>{"use strict";jg();Ru=class{name="OpenClaw";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},toolOutput:r.output??r.tool_output,isError:r.isError??r.is_error,sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{block:!0,blockReason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{params:e.updatedInput};if(e.decision==="ask")return{block:!0,blockReason:e.reason??"Action requires user confirmation (security policy)"};e.decision==="context"&&e.additionalContext}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Er("openclaw.json")}getSessionDir(){let e=rs(Ni(),".openclaw","context-mode","sessions");return n$(e,{recursive:!0}),e}getSessionDBPath(e){let r=Mg("sha256").update(e).digest("hex").slice(0,16);return rs(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Mg("sha256").update(e).digest("hex").slice(0,16);return rs(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[en.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[en.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[en.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[Er("openclaw.json"),Er(".openclaw","openclaw.json"),rs(Ni(),".openclaw","openclaw.json")];for(let r of e)try{let n=Pu(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=Er("openclaw.json");r$(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=Er(Ni(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Pu(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=Er("node_modules","context-mode","package.json"),r=JSON.parse(Pu(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=[Er("openclaw.json"),Er(".openclaw","openclaw.json"),rs(Ni(),".openclaw","openclaw.json")];for(let r of e)try{s$(r,i$.R_OK);let n=r+".bak";return o$(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var Hg={};Le(Hg,{CodexAdapter:()=>Iu});import{createHash as Fg}from"node:crypto";import{readFileSync as Ou,mkdirSync as a$,copyFileSync as c$,accessSync as u$,constants as l$}from"node:fs";import{resolve as Zg,join as Cu,dirname as d$}from"node:path";import{fileURLToPath as p$}from"node:url";import{homedir as Ug}from"node:os";var Iu,qg=b(()=>{"use strict";Iu=class{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:r.cwd,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:r.cwd,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:r.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:r.cwd,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 Zg(Ug(),".codex","config.toml")}getSessionDir(){let e=Cu(Ug(),".codex","context-mode","sessions");return a$(e,{recursive:!0}),e}getSessionDBPath(e){let r=Fg("sha256").update(e).digest("hex").slice(0,16);return Cu(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Fg("sha256").update(e).digest("hex").slice(0,16);return Cu(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{PreToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/pretooluse.mjs`}]}],PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{return{_raw_toml:Ou(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Codex CLI hooks are implemented but dispatch is not yet active (Stage::UnderDevelopment, v0.118.0). Enable flag: [features] codex_hooks = true in ~/.codex/config.toml. Track: openai/codex#16685"}]}checkPluginRegistration(){try{let e=Ou(this.getSettingsPath(),"utf-8"),r=e.includes("context-mode"),n=e.includes("[mcp_servers]")||e.includes("[mcp_servers.");return r&&n?{check:"MCP registration",status:"pass",message:"context-mode found in [mcp_servers] config"}:n?{check:"MCP registration",status:"fail",message:"[mcp_servers] section exists but context-mode not found",fix:"Add context-mode to [mcp_servers] in ~/.codex/config.toml"}:{check:"MCP registration",status:"fail",message:"No [mcp_servers] section in config.toml",fix:"Add [mcp_servers.context-mode] to ~/.codex/config.toml"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.codex/config.toml"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{u$(e,l$.R_OK);let r=e+".bak";return c$(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Zg(d$(p$(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return Ou(e,"utf-8")}catch{return`# context-mode
2
+ var Jk=Object.create;var tu=Object.defineProperty;var Yk=Object.getOwnPropertyDescriptor;var Xk=Object.getOwnPropertyNames;var Qk=Object.getPrototypeOf,ew=Object.prototype.hasOwnProperty;var tw=(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 R=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),je=(t,e)=>{for(var r in e)tu(t,r,{get:e[r],enumerable:!0})},rw=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Xk(e))!ew.call(t,o)&&o!==r&&tu(t,o,{get:()=>e[o],enumerable:!(n=Yk(e,o))||n.enumerable});return t};var Xo=(t,e,r)=>(r=t!=null?Jk(Qk(t)):{},rw(e||!t||!t.__esModule?tu(r,"default",{value:t,enumerable:!0}):r,t));var cu=R((kM,ug)=>{"use strict";var au={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"},pw={up:(t=1)=>"\x1B[S".repeat(t),down:(t=1)=>"\x1B[T".repeat(t)},mw={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?au.up():"");return t&&(e+=au.left),e}};ug.exports={cursor:au,scroll:pw,erase:mw,beep:"\x07"}});var gg=R((sD,hu)=>{var Ti=process||{},fg=Ti.argv||[],Ei=Ti.env||{},Dw=!(Ei.NO_COLOR||fg.includes("--no-color"))&&(!!Ei.FORCE_COLOR||fg.includes("--color")||Ti.platform==="win32"||(Ti.stdout||{}).isTTY&&Ei.TERM!=="dumb"||!!Ei.CI),Lw=(t,e,r=t)=>n=>{let o=""+n,s=o.indexOf(e,t.length);return~s?t+Fw(o,e,r,s)+e:t+o+e},Fw=(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)},hg=(t=Dw)=>{let e=t?Lw:()=>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")}};hu.exports=hg();hu.exports.createColors=hg});import{execFileSync as Zw,execSync as _g}from"node:child_process";import{existsSync as gu}from"node:fs";function Le(t){try{let e=Pi?`where ${t}`:`command -v ${t}`;return _g(e,{stdio:"pipe"}),!0}catch{return!1}}function yg(){if(Le("bun"))return!0;for(let t of xg())if(gu(t))return!0;return!1}function Uw(){if(Le("bun"))return"bun";for(let e of xg())if(gu(e))return e;let t=process.env.HOME??process.env.USERPROFILE??"";return Pi?`${t}\\.bun\\bin\\bun.exe`:`${t}/.bun/bin/bun`}function xg(){let t=process.env.HOME??process.env.USERPROFILE??"";if(Pi){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 Hw(){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(gu(e))return e;try{let r=_g("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 jt(t,e=["--version"]){try{return Zw(t,e,{encoding:"utf-8",shell:process.platform==="win32",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function Kn(){let e=yg()?Uw():null;return{javascript:e??process.execPath,typescript:e||(Le("tsx")?"tsx":Le("ts-node")?"ts-node":null),python:Le("python3")?"python3":Le("python")?"python":null,shell:Pi?Hw()??(Le("sh")?"sh":Le("powershell")?"powershell":"cmd.exe"):Le("bash")?"bash":"sh",ruby:Le("ruby")?"ruby":null,go:Le("go")?"go":null,rust:Le("rustc")?"rustc":null,php:Le("php")?"php":null,perl:Le("perl")?"perl":null,r:Le("Rscript")?"Rscript":Le("r")?"r":null,elixir:Le("elixir")?"elixir":null}}function Jn(){return yg()}function Ri(t){let e=[],r=t.javascript?.endsWith("bun")??!1;return e.push(` JavaScript: ${t.javascript} (${jt(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${jt(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${jt(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${jt(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${jt(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${jt(t.go,["version"])})`),t.rust&&e.push(` Rust: ${t.rust} (${jt(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${jt(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${jt(t.perl)})`),t.r&&e.push(` R: ${t.r} (${jt(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${jt(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 Oi(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 vg(t,e,r){switch(e){case"javascript":return t.javascript.endsWith("bun")?[t.javascript,"run",r]:[t.javascript,r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript?.endsWith("bun")?[t.typescript,"run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}var Pi,Ci=v(()=>{"use strict";Pi=process.platform==="win32"});var Sg,bg=v(()=>{"use strict";Sg={"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 kg}from"node:crypto";import{join as _u}from"node:path";import{accessSync as qw,copyFileSync as Bw,constants as Vw,mkdirSync as Ww}from"node:fs";import{homedir as Gw}from"node:os";var Pe,Mt=v(()=>{"use strict";Pe=class{constructor(e){this.sessionDirSegments=e}sessionDirSegments;getSessionDir(){let e=_u(Gw(),...this.sessionDirSegments,"context-mode","sessions");return Ww(e,{recursive:!0}),e}getSessionDBPath(e){let r=kg("sha256").update(e).digest("hex").slice(0,16);return _u(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=kg("sha256").update(e).digest("hex").slice(0,16);return _u(this.getSessionDir(),`${r}-events.md`)}backupSettings(){let e=this.getSettingsPath();try{qw(e,Vw.R_OK);let r=e+".bak";return Bw(e,r),r}catch{return null}}}});var Yn,yu=v(()=>{"use strict";Mt();Yn=class extends Pe{parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar],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],raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar],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],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 rs(t,e){let r=ts[e],n=xu(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function xu(t,e){if(e){let r=ts[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}function vu(t){return t.match(/node\s+"?([^"]+\.mjs)"?/)?.[1]??null}function Su(t){let e=Object.values(ts);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var Dt,Kw,wg,Jw,_D,ts,$g,yD,Eg=v(()=>{"use strict";Dt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},Kw=["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"],wg=Kw.join("|"),Jw=["Bash","Read","Write","Edit","NotebookEdit","Glob","Grep","TodoWrite","TaskCreate","TaskUpdate","EnterPlanMode","ExitPlanMode","Skill","Agent","AskUserQuestion","EnterWorktree","mcp__"],_D=Jw.join("|"),ts={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},$g=[Dt.PRE_TOOL_USE,Dt.SESSION_START],yD=[Dt.POST_TOOL_USE,Dt.PRE_COMPACT,Dt.USER_PROMPT_SUBMIT]});var ku={};je(ku,{ClaudeCodeAdapter:()=>bu});import{readFileSync as Ii,writeFileSync as Tg,existsSync as Yw,readdirSync as Xw,chmodSync as Qw,accessSync as e$,constants as t$}from"node:fs";import{resolve as nn,join as Pg}from"node:path";import{homedir as ns}from"node:os";var bu,wu=v(()=>{"use strict";yu();Eg();bu=class extends Yn{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 nn(ns(),".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=Ii(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){Tg(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,Dt.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,Dt.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=[Pg(e,"hooks","hooks.json"),Pg(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=Ii(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=>rs(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>rs(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=nn(ns(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Ii(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=[nn(ns(),".claude"),nn(ns(),".config","claude")];for(let r of e){let n=nn(r,"plugins","cache","context-mode","context-mode");try{let s=Xw(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 m=d;if(!Su(m))return!0;let h=m.hooks??[];return h.every(f=>!f.command||!vu(f.command))?!0:h.every(f=>{let g=f.command?vu(f.command):null;return g?Yw(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&&$g.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(m=>!Su(m)),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=[Dt.PRE_TOOL_USE,Dt.SESSION_START];for(let a of i){let c=xu(a,e);if(a===Dt.PRE_TOOL_USE){let u={matcher:wg,hooks:[{type:"command",command:c}]},l=n.PreToolUse;if(l&&Array.isArray(l)){let d=l.findIndex(m=>rs(m,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(m=>rs(m,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(ts)){let o=nn(e,"hooks",n);try{e$(o,t$.R_OK),Qw(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=nn(ns(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Ii(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();Tg(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 Xn(t,e){let r=$u[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var Oe,$u,$D,ED,Rg=v(()=>{"use strict";Oe={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},$u={[Oe.BEFORE_TOOL]:"beforetool.mjs",[Oe.AFTER_TOOL]:"aftertool.mjs",[Oe.PRE_COMPRESS]:"precompress.mjs",[Oe.SESSION_START]:"sessionstart.mjs"},$D=[Oe.BEFORE_TOOL,Oe.SESSION_START],ED=[Oe.AFTER_TOOL,Oe.PRE_COMPRESS]});var Cg={};je(Cg,{GeminiCLIAdapter:()=>Tu});import{readFileSync as Eu,writeFileSync as Og,mkdirSync as r$,accessSync as n$,chmodSync as o$,constants as s$}from"node:fs";import{resolve as os,join as i$}from"node:path";import{homedir as Ai}from"node:os";var Tu,Ig=v(()=>{"use strict";Mt();Rg();Tu=class extends Pe{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(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return os(Ai(),".gemini","settings.json")}generateHookConfig(e){return{[Oe.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:Xn(Oe.BEFORE_TOOL,e)}]}],[Oe.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Xn(Oe.AFTER_TOOL,e)}]}],[Oe.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Xn(Oe.PRE_COMPRESS,e)}]}],[Oe.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Xn(Oe.SESSION_START,e)}]}]}}readSettings(){try{let e=Eu(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=os(Ai(),".gemini");r$(r,{recursive:!0}),Og(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?.[Oe.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?.[Oe.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=os(Ai(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(Eu(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:Oe.BEFORE_TOOL},{name:Oe.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:Xn(i.name,e)}]},u=n[i.name];if(u&&Array.isArray(u)){let l=u.findIndex(d=>d.hooks?.some(h=>h.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=i$(e,"hooks","gemini-cli");for(let o of Object.values($u)){let s=os(n,o);try{n$(s,s$.R_OK),o$(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=os(Ai(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(Eu(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),Og(n,JSON.stringify(o,null,2)+`
7
+ `,"utf-8")}catch{}}getProjectDir(){return process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var on,AD,ND,Ag=v(()=>{"use strict";on={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},AD=[on.BEFORE,on.AFTER],ND=[on.COMPACTING]});var zg={};je(zg,{OpenCodeAdapter:()=>Pu});import{readFileSync as Ng,writeFileSync as c$,mkdirSync as u$,copyFileSync as l$,accessSync as d$,constants as p$}from"node:fs";import{resolve as Jt,join as sn}from"node:path";import{homedir as Pr}from"node:os";function a$(t){return t.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/,(\s*[}\]])/g,"$1")}var Pu,jg=v(()=>{"use strict";Mt();Ag();Pu=class extends Pe{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??Jt(`${this.platform}.json`)}paths(){return this.platform==="kilo"?[Jt("kilo.json"),Jt("kilo.jsonc"),Jt(".kilo","kilo.json"),Jt(".kilo","kilo.jsonc"),sn(Pr(),".config","kilo","kilo.json"),sn(Pr(),".config","kilo","kilo.jsonc")]:[Jt("opencode.json"),Jt("opencode.jsonc"),Jt(".opencode","opencode.json"),Jt(".opencode","opencode.jsonc"),sn(Pr(),".config","opencode","opencode.json"),sn(Pr(),".config","opencode","opencode.jsonc")]}getSessionDir(){let e;process.platform==="win32"?e=process.env.APPDATA||sn(Pr(),"AppData","Roaming"):e=process.env.XDG_CONFIG_HOME||sn(Pr(),".config");let r=sn(e,this.platform,"context-mode","sessions");return u$(r,{recursive:!0}),r}generateHookConfig(e){return{[on.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[on.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[on.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){this.settingsPath=void 0;let e=this.paths(),r=new Set(e.filter(s=>s.includes(Pr()))),n=null,o;for(let s of e)try{let i=Ng(s,"utf-8"),a=s.endsWith(".jsonc")?a$(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){c$(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=Jt(Pr(),".cache",this.platform,"node_modules","context-mode","package.json"),r=JSON.parse(Ng(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{d$(this.settingsPath,p$.R_OK);let r=this.settingsPath+".bak";return l$(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 an,ZD,UD,Mg=v(()=>{"use strict";an={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},ZD=[an.TOOL_CALL_BEFORE,an.TOOL_CALL_AFTER],UD=[an.COMMAND_NEW]});var Lg={};je(Lg,{OpenClawAdapter:()=>Cu});import{readFileSync as Ru,writeFileSync as m$,copyFileSync as f$,accessSync as h$,constants as g$}from"node:fs";import{resolve as Rr,join as Dg}from"node:path";import{homedir as Ou}from"node:os";var Cu,Fg=v(()=>{"use strict";Mt();Mg();Cu=class extends Pe{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:process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},toolOutput:r.output??r.tool_output,isError:r.isError??r.is_error,sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{block:!0,blockReason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{params:e.updatedInput};if(e.decision==="ask")return{block:!0,blockReason:e.reason??"Action requires user confirmation (security policy)"};e.decision==="context"&&e.additionalContext}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Rr("openclaw.json")}generateHookConfig(e){return{[an.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[an.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[an.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[Rr("openclaw.json"),Rr(".openclaw","openclaw.json"),Dg(Ou(),".openclaw","openclaw.json")];for(let r of e)try{let n=Ru(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=Rr("openclaw.json");m$(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=Rr(Ou(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Ru(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=Rr("node_modules","context-mode","package.json"),r=JSON.parse(Ru(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=[Rr("openclaw.json"),Rr(".openclaw","openclaw.json"),Dg(Ou(),".openclaw","openclaw.json")];for(let r of e)try{h$(r,g$.R_OK);let n=r+".bak";return f$(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var Ug={};je(Ug,{CodexAdapter:()=>Au});import{readFileSync as Iu}from"node:fs";import{resolve as Zg,dirname as _$}from"node:path";import{fileURLToPath as y$}from"node:url";import{homedir as x$}from"node:os";var Au,Hg=v(()=>{"use strict";Mt();Au=class extends Pe{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:r.cwd,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:r.cwd,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:r.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:r.cwd,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 Zg(x$(),".codex","config.toml")}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:`node ${e}/hooks/pretooluse.mjs`}]}],PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{return{_raw_toml:Iu(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, and SessionStart."}]}checkPluginRegistration(){try{let e=Iu(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=Zg(_$(y$(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return Iu(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.`}}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});function Kn(t,e){let r=zi[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/${r}"`:`context-mode hook vscode-copilot ${t.toLowerCase()}`}var pe,zi,AD,ND,Bg=b(()=>{"use strict";pe={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},zi={[pe.PRE_TOOL_USE]:"pretooluse.mjs",[pe.POST_TOOL_USE]:"posttooluse.mjs",[pe.PRE_COMPACT]:"precompact.mjs",[pe.SESSION_START]:"sessionstart.mjs"},AD=[pe.PRE_TOOL_USE,pe.SESSION_START],ND=[pe.POST_TOOL_USE,pe.PRE_COMPACT]});var Gg={};Le(Gg,{VSCodeCopilotAdapter:()=>Mu});import{createHash as Vg}from"node:crypto";import{readFileSync as ji,writeFileSync as Wg,mkdirSync as Au,copyFileSync as m$,accessSync as Nu,existsSync as f$,chmodSync as h$,constants as zu}from"node:fs";import{resolve as At,join as tn}from"node:path";import{homedir as ju}from"node:os";var Mu,Kg=b(()=>{"use strict";Bg();Mu=class{name="VS Code Copilot";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:pe.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:pe.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:pe.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:pe.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return At(".github","hooks","context-mode.json")}getSessionDir(){let e=At(".github","context-mode","sessions"),r=tn(ju(),".vscode","context-mode","sessions"),n=f$(At(".github"))?e:r;return Au(n,{recursive:!0}),n}getSessionDBPath(e){let r=Vg("sha256").update(e).digest("hex").slice(0,16);return tn(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Vg("sha256").update(e).digest("hex").slice(0,16);return tn(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[pe.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Kn(pe.PRE_TOOL_USE,e)}]}],[pe.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Kn(pe.POST_TOOL_USE,e)}]}],[pe.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:Kn(pe.PRE_COMPACT,e)}]}],[pe.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Kn(pe.SESSION_START,e)}]}]}}readSettings(){let e=[this.getSettingsPath(),At(".claude","settings.json")];for(let r of e)try{let n=ji(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath(),n=At(".github","hooks");Au(n,{recursive:!0}),Wg(r,JSON.stringify(e,null,2)+`
12
- `,"utf-8")}validateHooks(e){let r=[],n=At(".github","hooks");try{Nu(n,zu.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=At(n,"context-mode.json");try{let s=ji(o,"utf-8"),a=JSON.parse(s).hooks;a?.[pe.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?.[pe.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=At(".vscode","mcp.json"),r=ji(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=[tn(ju(),".vscode","extensions"),tn(ju(),".vscode-insiders","extensions")];for(let r of e)try{let n=ji(tn(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}configureAllHooks(e){let r=[],n={hooks:{}},o=n.hooks,s=[pe.PRE_TOOL_USE,pe.POST_TOOL_USE,pe.PRE_COMPACT,pe.SESSION_START];for(let c of s)zi[c]&&(o[c]=[{matcher:"",hooks:[{type:"command",command:Kn(c,e)}]}],r.push(`Configured ${c} hook`));let i=At(".github","hooks");Au(i,{recursive:!0});let a=At(i,"context-mode.json");return Wg(a,JSON.stringify(n,null,2)+`
13
- `,"utf-8"),r.push(`Wrote hook config to ${a}`),r}backupSettings(){let e=this.getSettingsPath();try{Nu(e,zu.R_OK);let r=e+".bak";return m$(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=tn(e,"hooks","vscode-copilot");for(let o of Object.values(zi)){let s=At(n,o);try{Nu(s,zu.R_OK),h$(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}}});function Mi(t,e){let r=Du[e],n=vt(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 vt(t){return`context-mode hook cursor ${t.toLowerCase()}`}var me,Du,g$,Lu,Jg,Yg,Xg=b(()=>{"use strict";me={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart",STOP:"stop",AFTER_AGENT_RESPONSE:"afterAgentResponse"},Du={[me.PRE_TOOL_USE]:"pretooluse.mjs",[me.POST_TOOL_USE]:"posttooluse.mjs",[me.SESSION_START]:"sessionstart.mjs",[me.STOP]:"stop.mjs"},g$=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],Lu=g$.join("|"),Jg=[me.PRE_TOOL_USE],Yg=[me.POST_TOOL_USE]});var s_={};Le(s_,{CursorAdapter:()=>Zu});import{createHash as Qg}from"node:crypto";import{readFileSync as Fu,writeFileSync as _$,mkdirSync as e_,copyFileSync as y$,accessSync as t_,chmodSync as v$,constants as r_,existsSync as n_}from"node:fs";import{execSync as x$}from"node:child_process";import{resolve as Jn,join as rn}from"node:path";import{homedir as Di}from"node:os";var o_,Zu,i_=b(()=>{"use strict";Xg();o_="/Library/Application Support/Cursor/hooks.json",Zu=class{name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}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 Jn(".cursor","hooks.json")}getSessionDir(){let e=rn(Di(),".cursor","context-mode","sessions");return e_(e,{recursive:!0}),e}getSessionDBPath(e){let r=Qg("sha256").update(e).digest("hex").slice(0,16);return rn(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Qg("sha256").update(e).digest("hex").slice(0,16);return rn(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[me.PRE_TOOL_USE]:[{type:"command",command:vt(me.PRE_TOOL_USE),matcher:Lu,loop_limit:null,failClosed:!1}],[me.POST_TOOL_USE]:[{type:"command",command:vt(me.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[me.SESSION_START]:[{type:"command",command:vt(me.SESSION_START),loop_limit:null,failClosed:!1}],[me.STOP]:[{type:"command",command:vt(me.STOP),loop_limit:null,failClosed:!1}],[me.AFTER_AGENT_RESPONSE]:[{type:"command",command:vt(me.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=Fu(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();e_(Jn(".cursor"),{recursive:!0}),_$(r,JSON.stringify(e,null,2)+`
14
- `,"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 Jg){let i=o[s],a=Array.isArray(i)&&i.some(c=>Mi(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 Yg){let i=o[s],a=Array.isArray(i)&&i.some(c=>Mi(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 n_(o_)&&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=[Jn(".cursor","mcp.json"),rn(Di(),".cursor","mcp.json")];for(let r of e)try{let n=Fu(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 x$("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,me.PRE_TOOL_USE,{type:"command",command:vt(me.PRE_TOOL_USE),matcher:Lu,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,me.POST_TOOL_USE,{type:"command",command:vt(me.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,me.SESSION_START,{type:"command",command:vt(me.SESSION_START),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,me.STOP,{type:"command",command:vt(me.STOP),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,me.AFTER_AGENT_RESPONSE,{type:"command",command:vt(me.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}backupSettings(){let e=this.getSettingsPath();try{t_(e,r_.R_OK);let r=e+".bak";return y$(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=rn(e,"hooks","cursor");for(let o of Object.values(Du)){let s=Jn(n,o);try{t_(s,r_.R_OK),v$(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),rn(Di(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(o_),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=Fu(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[Jn(".claude","settings.json"),Jn(".claude","settings.local.json"),rn(Di(),".claude","settings.json")].some(r=>n_(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>Mi(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_={};Le(l_,{AntigravityAdapter:()=>Bu});import{createHash as a_}from"node:crypto";import{readFileSync as Li,writeFileSync as b$,mkdirSync as c_,copyFileSync as S$,accessSync as k$,constants as w$}from"node:fs";import{resolve as Uu,join as Hu,dirname as u_}from"node:path";import{fileURLToPath as $$}from"node:url";import{homedir as qu}from"node:os";var Bu,d_=b(()=>{"use strict";Bu=class{name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Uu(qu(),".gemini","antigravity","mcp_config.json")}getSessionDir(){let e=Hu(qu(),".gemini","context-mode","sessions");return c_(e,{recursive:!0}),e}getSessionDBPath(e){let r=a_("sha256").update(e).digest("hex").slice(0,16);return Hu(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=a_("sha256").update(e).digest("hex").slice(0,16);return Hu(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=Li(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();c_(u_(r),{recursive:!0}),b$(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=Li(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=Uu(qu(),".gemini","extensions","context-mode","package.json");return JSON.parse(Li(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{k$(e,w$.R_OK);let r=e+".bak";return S$(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Uu(u_($$(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return Li(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.`}}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});import{readFileSync as qg,writeFileSync as v$,mkdirSync as S$,accessSync as b$,chmodSync as k$,constants as w$}from"node:fs";import{resolve as Ni,join as $$}from"node:path";var Qn,Nu=v(()=>{"use strict";Mt();Qn=class extends Pe{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 Ni(".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=qg(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{}try{let e=qg(Ni(".claude","settings.json"),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();S$(Ni(".github","hooks"),{recursive:!0}),v$(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=$$(e,"hooks",this.hookSubdir);for(let o of Object.values(this.hookModule.HOOK_SCRIPTS)){let s=Ni(n,o);try{b$(s,w$.R_OK),k$(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}}});function Bg(t,e){let r=zu[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/${r}"`:`context-mode hook vscode-copilot ${t.toLowerCase()}`}var vt,zu,oL,sL,Vg=v(()=>{"use strict";vt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},zu={[vt.PRE_TOOL_USE]:"pretooluse.mjs",[vt.POST_TOOL_USE]:"posttooluse.mjs",[vt.PRE_COMPACT]:"precompact.mjs",[vt.SESSION_START]:"sessionstart.mjs"},oL=[vt.PRE_TOOL_USE,vt.SESSION_START],sL=[vt.POST_TOOL_USE,vt.PRE_COMPACT]});var Wg={};je(Wg,{VSCodeCopilotAdapter:()=>Du});import{readFileSync as ju,mkdirSync as E$,accessSync as T$,existsSync as P$,constants as R$}from"node:fs";import{resolve as ss,join as zi}from"node:path";import{homedir as Mu}from"node:os";var Du,Gg=v(()=>{"use strict";Nu();Vg();Du=class extends Qn{constructor(){super([".vscode"])}name="VS Code Copilot";hookModule={HOOK_TYPES:vt,HOOK_SCRIPTS:zu,buildHookCommand:Bg};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=ss(".github","context-mode","sessions"),r=zi(Mu(),".vscode","context-mode","sessions"),n=P$(ss(".github"))?e:r;return E$(n,{recursive:!0}),n}validateHooks(e){let r=[],n=ss(".github","hooks");try{T$(n,R$.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=ss(n,"context-mode.json");try{let s=ju(o,"utf-8"),a=JSON.parse(s).hooks;a?.[vt.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?.[vt.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=ss(".vscode","mcp.json"),r=ju(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=[zi(Mu(),".vscode","extensions"),zi(Mu(),".vscode-insiders","extensions")];for(let r of e)try{let n=ju(zi(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 Kg(t,e){let r=Lu[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/jetbrains-copilot/${r}"`:`context-mode hook jetbrains-copilot ${t.toLowerCase()}`}var St,Lu,pL,mL,Jg=v(()=>{"use strict";St={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},Lu={[St.PRE_TOOL_USE]:"pretooluse.mjs",[St.POST_TOOL_USE]:"posttooluse.mjs",[St.PRE_COMPACT]:"precompact.mjs",[St.SESSION_START]:"sessionstart.mjs"},pL=[St.PRE_TOOL_USE,St.SESSION_START],mL=[St.POST_TOOL_USE,St.PRE_COMPACT]});var Yg={};je(Yg,{JetBrainsCopilotAdapter:()=>Fu});import{readFileSync as O$}from"node:fs";var Fu,Xg=v(()=>{"use strict";Nu();Jg();Fu=class extends Qn{constructor(){super([".config","JetBrains"])}name="JetBrains Copilot";hookModule={HOOK_TYPES:St,HOOK_SCRIPTS:Lu,buildHookCommand:Kg};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()}validateHooks(e){let r=[];try{let n=O$(this.getSettingsPath(),"utf-8"),s=JSON.parse(n).hooks;s?.[St.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?.[St.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 ji(t,e){let r=Zu[e],n=bt(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 bt(t){return`context-mode hook cursor ${t.toLowerCase()}`}var pe,Zu,C$,Uu,Qg,e_,t_=v(()=>{"use strict";pe={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart",STOP:"stop",AFTER_AGENT_RESPONSE:"afterAgentResponse"},Zu={[pe.PRE_TOOL_USE]:"pretooluse.mjs",[pe.POST_TOOL_USE]:"posttooluse.mjs",[pe.SESSION_START]:"sessionstart.mjs",[pe.STOP]:"stop.mjs"},C$=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],Uu=C$.join("|"),Qg=[pe.PRE_TOOL_USE],e_=[pe.POST_TOOL_USE]});var o_={};je(o_,{CursorAdapter:()=>Bu});import{readFileSync as Hu,writeFileSync as I$,mkdirSync as A$,accessSync as N$,chmodSync as z$,constants as j$,existsSync as r_}from"node:fs";import{execSync as M$}from"node:child_process";import{resolve as eo,join as Mi}from"node:path";import{homedir as qu}from"node:os";var n_,Bu,s_=v(()=>{"use strict";Mt();t_();n_="/Library/Application Support/Cursor/hooks.json",Bu=class extends Pe{constructor(){super([".cursor"])}name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}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 eo(".cursor","hooks.json")}generateHookConfig(e){return{[pe.PRE_TOOL_USE]:[{type:"command",command:bt(pe.PRE_TOOL_USE),matcher:Uu,loop_limit:null,failClosed:!1}],[pe.POST_TOOL_USE]:[{type:"command",command:bt(pe.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[pe.SESSION_START]:[{type:"command",command:bt(pe.SESSION_START),loop_limit:null,failClosed:!1}],[pe.STOP]:[{type:"command",command:bt(pe.STOP),loop_limit:null,failClosed:!1}],[pe.AFTER_AGENT_RESPONSE]:[{type:"command",command:bt(pe.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=Hu(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();A$(eo(".cursor"),{recursive:!0}),I$(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 Qg){let i=o[s],a=Array.isArray(i)&&i.some(c=>ji(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 e_){let i=o[s],a=Array.isArray(i)&&i.some(c=>ji(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 r_(n_)&&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=[eo(".cursor","mcp.json"),Mi(qu(),".cursor","mcp.json")];for(let r of e)try{let n=Hu(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 M$("cursor --version",{encoding:"utf-8",stdio:["ignore","pipe","ignore"]}).trim().split(/\r?\n/)[0]||"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=this.readSettings()??{version:1,hooks:{}},n=r.hooks??{},o=[];return this.upsertHookEntry(n,pe.PRE_TOOL_USE,{type:"command",command:bt(pe.PRE_TOOL_USE),matcher:Uu,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,pe.POST_TOOL_USE,{type:"command",command:bt(pe.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,pe.SESSION_START,{type:"command",command:bt(pe.SESSION_START),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,pe.STOP,{type:"command",command:bt(pe.STOP),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,pe.AFTER_AGENT_RESPONSE,{type:"command",command:bt(pe.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=Mi(e,"hooks","cursor");for(let o of Object.values(Zu)){let s=eo(n,o);try{N$(s,j$.R_OK),z$(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),Mi(qu(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(n_),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=Hu(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[eo(".claude","settings.json"),eo(".claude","settings.local.json"),Mi(qu(),".claude","settings.json")].some(r=>r_(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>ji(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 c_={};je(c_,{AntigravityAdapter:()=>Wu});import{readFileSync as Di,writeFileSync as D$,mkdirSync as L$}from"node:fs";import{resolve as Vu,dirname as i_}from"node:path";import{fileURLToPath as F$}from"node:url";import{homedir as a_}from"node:os";var Wu,u_=v(()=>{"use strict";Mt();Wu=class extends Pe{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 Vu(a_(),".gemini","antigravity","mcp_config.json")}generateHookConfig(e){return{}}readSettings(){try{let e=Di(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();L$(i_(r),{recursive:!0}),D$(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=Di(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=Vu(a_(),".gemini","extensions","context-mode","package.json");return JSON.parse(Di(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Vu(i_(F$(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return Di(e,"utf-8")}catch{return`# context-mode
15
14
 
16
- 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 ns(t,e){let r=p_[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function os(t,e){let r=p_[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var Oe,p_,QD,eL,m_=b(()=>{"use strict";Oe={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},p_={[Oe.PRE_TOOL_USE]:"pretooluse.mjs",[Oe.POST_TOOL_USE]:"posttooluse.mjs"},QD=[Oe.PRE_TOOL_USE],eL=[Oe.POST_TOOL_USE]});var __={};Le(__,{KiroAdapter:()=>Gu});import{createHash as f_}from"node:crypto";import{readFileSync as Yn,writeFileSync as h_,mkdirSync as Vu,copyFileSync as E$,accessSync as T$,constants as P$}from"node:fs";import{resolve as Xn,join as Wu,dirname as g_}from"node:path";import{fileURLToPath as R$}from"node:url";import{homedir as ss}from"node:os";var Gu,y_=b(()=>{"use strict";m_();Gu=class{name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e,n=r.tool_response;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:typeof n=="string"?n:JSON.stringify(n??""),sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePreCompactInput(e){throw new Error("Kiro does not support PreCompact hooks")}parseSessionStartInput(e){throw new Error("Kiro does not support SessionStart hooks (yet)")}formatPreToolUseResponse(e){switch(e.decision){case"deny":return{exitCode:2,stderr:e.reason??"Blocked by context-mode"};case"context":return{exitCode:0,stdout:e.additionalContext??""};default:return}}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Xn(ss(),".kiro","settings","mcp.json")}getSessionDir(){let e=Wu(ss(),".kiro","context-mode","sessions");return Vu(e,{recursive:!0}),e}getSessionDBPath(e){let r=f_("sha256").update(e).digest("hex").slice(0,16);return Wu(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=f_("sha256").update(e).digest("hex").slice(0,16);return Wu(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[Oe.PRE_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:os(Oe.PRE_TOOL_USE,e)}]}],[Oe.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:os(Oe.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=Yn(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Vu(g_(r),{recursive:!0}),h_(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=Xn(ss(),".kiro","agents","default.json");try{let s=JSON.parse(Yn(n,"utf-8")).hooks??{};for(let i of[Oe.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>ns(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[Oe.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>ns(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=Yn(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=Xn(ss(),".kiro","extensions","context-mode","package.json");return JSON.parse(Yn(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=Xn(ss(),".kiro","agents"),o=Xn(n,"default.json");try{Vu(n,{recursive:!0});let s={};try{s=JSON.parse(Yn(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[Oe.PRE_TOOL_USE]??[];a.some(u=>ns(u,Oe.PRE_TOOL_USE))||(a.push({matcher:"*",command:os(Oe.PRE_TOOL_USE,e)}),i[Oe.PRE_TOOL_USE]=a,r.push(`Added ${Oe.PRE_TOOL_USE} hook to ${o}`));let c=i[Oe.POST_TOOL_USE]??[];c.some(u=>ns(u,Oe.POST_TOOL_USE))||(c.push({matcher:"*",command:os(Oe.POST_TOOL_USE,e)}),i[Oe.POST_TOOL_USE]=c,r.push(`Added ${Oe.POST_TOOL_USE} 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}backupSettings(){let e=this.getSettingsPath();try{T$(e,P$.R_OK);let r=e+".bak";return E$(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Xn(g_(R$(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return Yn(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 is(t,e){let r=l_[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function as(t,e){let r=l_[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var Ce,l_,Z$,Gu,OL,CL,d_=v(()=>{"use strict";Ce={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},l_={[Ce.PRE_TOOL_USE]:"pretooluse.mjs",[Ce.POST_TOOL_USE]:"posttooluse.mjs"},Z$=["execute_bash","fs_read","@context-mode/ctx_execute","@context-mode/ctx_execute_file","@context-mode/ctx_batch_execute"],Gu=Z$.join("|"),OL=[Ce.PRE_TOOL_USE],CL=[Ce.POST_TOOL_USE]});var h_={};je(h_,{KiroAdapter:()=>Ku});import{readFileSync as to,writeFileSync as p_,mkdirSync as m_}from"node:fs";import{resolve as ro,dirname as f_}from"node:path";import{fileURLToPath as U$}from"node:url";import{homedir as Li}from"node:os";var Ku,g_=v(()=>{"use strict";Mt();d_();Ku=class extends Pe{constructor(){super([".kiro"])}name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e,n=r.tool_response;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:typeof n=="string"?n:JSON.stringify(n??""),sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePreCompactInput(e){throw new Error("Kiro does not support PreCompact hooks")}parseSessionStartInput(e){throw new Error("Kiro does not support SessionStart hooks (yet)")}formatPreToolUseResponse(e){switch(e.decision){case"deny":return{exitCode:2,stderr:e.reason??"Blocked by context-mode"};case"context":return{exitCode:0,stdout:e.additionalContext??""};default:return}}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return ro(Li(),".kiro","settings","mcp.json")}generateHookConfig(e){return{[Ce.PRE_TOOL_USE]:[{matcher:Gu,hooks:[{type:"command",command:as(Ce.PRE_TOOL_USE,e)}]}],[Ce.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:as(Ce.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=to(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();m_(f_(r),{recursive:!0}),p_(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=ro(Li(),".kiro","agents","default.json");try{let s=JSON.parse(to(n,"utf-8")).hooks??{};for(let i of[Ce.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>is(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[Ce.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>is(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=to(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=ro(Li(),".kiro","extensions","context-mode","package.json");return JSON.parse(to(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=ro(Li(),".kiro","agents"),o=ro(n,"default.json");try{m_(n,{recursive:!0});let s={};try{s=JSON.parse(to(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[Ce.PRE_TOOL_USE]??[];a.some(u=>is(u,Ce.PRE_TOOL_USE))||(a.push({matcher:Gu,command:as(Ce.PRE_TOOL_USE,e)}),i[Ce.PRE_TOOL_USE]=a,r.push(`Added ${Ce.PRE_TOOL_USE} hook to ${o}`));let c=i[Ce.POST_TOOL_USE]??[];c.some(u=>is(u,Ce.POST_TOOL_USE))||(c.push({matcher:"*",command:as(Ce.POST_TOOL_USE,e)}),i[Ce.POST_TOOL_USE]=c,r.push(`Added ${Ce.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,p_(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=ro(f_(U$(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return to(e,"utf-8")}catch{return`# context-mode
17
16
 
18
- 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 w_={};Le(w_,{ZedAdapter:()=>Yu});import{createHash as v_}from"node:crypto";import{readFileSync as Ku,writeFileSync as O$,mkdirSync as x_,copyFileSync as C$,accessSync as I$,constants as A$}from"node:fs";import{resolve as b_,join as Ju,dirname as S_}from"node:path";import{fileURLToPath as N$}from"node:url";import{homedir as k_}from"node:os";var Yu,$_=b(()=>{"use strict";Yu=class{name="Zed";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Zed does not support hooks")}parsePostToolUseInput(e){throw new Error("Zed does not support hooks")}parsePreCompactInput(e){throw new Error("Zed does not support hooks")}parseSessionStartInput(e){throw new Error("Zed does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return b_(k_(),".config","zed","settings.json")}getSessionDir(){let e=Ju(k_(),".config","zed","context-mode","sessions");return x_(e,{recursive:!0}),e}getSessionDBPath(e){let r=v_("sha256").update(e).digest("hex").slice(0,16);return Ju(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=v_("sha256").update(e).digest("hex").slice(0,16);return Ju(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=Ku(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();x_(S_(r),{recursive:!0}),O$(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=Ku(this.getSettingsPath(),"utf-8"),n=JSON.parse(e).context_servers!==void 0,o=e.includes("context-mode");return n&&o?{check:"MCP registration",status:"pass",message:"context-mode found in context_servers config"}:n?{check:"MCP registration",status:"fail",message:"context_servers section exists but context-mode not found",fix:"Add context-mode to context_servers in ~/.config/zed/settings.json"}:{check:"MCP registration",status:"fail",message:"No context_servers section in settings.json",fix:"Add context_servers.context-mode to ~/.config/zed/settings.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.config/zed/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{I$(e,A$.R_OK);let r=e+".bak";return C$(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=b_(S_(N$(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return Ku(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_={};je(x_,{ZedAdapter:()=>Yu});import{readFileSync as Ju,writeFileSync as H$,mkdirSync as q$}from"node:fs";import{resolve as __,dirname as y_}from"node:path";import{fileURLToPath as B$}from"node:url";import{homedir as V$}from"node:os";var Yu,v_=v(()=>{"use strict";Mt();Yu=class extends Pe{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 __(V$(),".config","zed","settings.json")}generateHookConfig(e){return{}}readSettings(){try{let e=Ju(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();q$(y_(r),{recursive:!0}),H$(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=Ju(this.getSettingsPath(),"utf-8"),n=JSON.parse(e).context_servers!==void 0,o=e.includes("context-mode");return n&&o?{check:"MCP registration",status:"pass",message:"context-mode found in context_servers config"}:n?{check:"MCP registration",status:"fail",message:"context_servers section exists but context-mode not found",fix:"Add context-mode to context_servers in ~/.config/zed/settings.json"}:{check:"MCP registration",status:"fail",message:"No context_servers section in settings.json",fix:"Add context_servers.context-mode to ~/.config/zed/settings.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.config/zed/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=__(y_(B$(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return Ju(e,"utf-8")}catch{return`# context-mode
19
18
 
20
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var E_={};Le(E_,{detectPlatform:()=>Qn,getAdapter:()=>Fi});import{existsSync as Vt}from"node:fs";import{resolve as Wt}from"node:path";import{homedir as z$}from"node:os";function Qn(t){if(t?.name){let n=mg[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","kilo","opencode","codex","vscode-copilot","cursor","antigravity","kiro","pi","zed"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};if(process.env.CLAUDE_PROJECT_DIR||process.env.CLAUDE_SESSION_ID)return{platform:"claude-code",confidence:"high",reason:"CLAUDE_PROJECT_DIR or CLAUDE_SESSION_ID env var set"};if(process.env.GEMINI_PROJECT_DIR||process.env.GEMINI_CLI)return{platform:"gemini-cli",confidence:"high",reason:"GEMINI_PROJECT_DIR or GEMINI_CLI env var set"};if(process.env.OPENCLAW_HOME||process.env.OPENCLAW_CLI)return{platform:"openclaw",confidence:"high",reason:"OPENCLAW_HOME or OPENCLAW_CLI env var set"};if(process.env.KILO||process.env.KILO_PID)return{platform:"kilo",confidence:"high",reason:"KILO or KILO_PID env var set"};if(process.env.OPENCODE||process.env.OPENCODE_PID)return{platform:"opencode",confidence:"high",reason:"OPENCODE or OPENCODE_PID env var set"};if(process.env.CODEX_CI||process.env.CODEX_THREAD_ID)return{platform:"codex",confidence:"high",reason:"CODEX_CI or CODEX_THREAD_ID env var set"};if(process.env.CURSOR_TRACE_ID||process.env.CURSOR_CLI)return{platform:"cursor",confidence:"high",reason:"CURSOR_TRACE_ID or CURSOR_CLI env var set"};if(process.env.VSCODE_PID||process.env.VSCODE_CWD)return{platform:"vscode-copilot",confidence:"high",reason:"VSCODE_PID or VSCODE_CWD env var set"};let r=z$();return Vt(Wt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Vt(Wt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Vt(Wt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Vt(Wt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Vt(Wt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Vt(Wt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Vt(Wt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Vt(Wt(r,".config","kilo"))?{platform:"kilo",confidence:"medium",reason:"~/.config/kilo/ directory exists"}:Vt(Wt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Vt(Wt(r,".config","zed"))?{platform:"zed",confidence:"medium",reason:"~/.config/zed/ directory exists"}:{platform:"claude-code",confidence:"low",reason:"No platform detected, defaulting to Claude Code"}}async function Fi(t){let e=t??Qn().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(ku(),Su));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(Og(),Rg));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(zg(),Ng));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(Lg(),Dg));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(qg(),Hg));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(Kg(),Gg));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(i_(),s_));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(d_(),l_));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(y_(),__));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>($_(),w_));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(ku(),Su));return new r}}}var Xu=b(()=>{"use strict";fg()});var Q,Qu,O,Gt,is=b(()=>{(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(Q||(Q={}));(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Qu||(Qu={}));O=Q.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Gt=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 k,j$,ot,Zi=b(()=>{is();k=Q.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"]),j$=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),ot=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,Q.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()}};ot.create=t=>new ot(t)});var M$,lr,el=b(()=>{Zi();is();M$=(t,e)=>{let r;switch(t.code){case k.invalid_type:t.received===O.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case k.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,Q.jsonStringifyReplacer)}`;break;case k.unrecognized_keys:r=`Unrecognized key(s) in object: ${Q.joinValues(t.keys,", ")}`;break;case k.invalid_union:r="Invalid input";break;case k.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Q.joinValues(t.options)}`;break;case k.invalid_enum_value:r=`Invalid enum value. Expected ${Q.joinValues(t.options)}, received '${t.received}'`;break;case k.invalid_arguments:r="Invalid function arguments";break;case k.invalid_return_type:r="Invalid function return type";break;case k.invalid_date:r="Invalid date";break;case k.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:Q.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case k.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case k.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case k.custom:r="Invalid input";break;case k.invalid_intersection_types:r="Intersection results could not be merged";break;case k.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case k.not_finite:r="Number must be finite";break;default:r=e.defaultError,Q.assertNever(t)}return{message:r}},lr=M$});function D$(t){T_=t}function eo(){return T_}var T_,Ui=b(()=>{el();T_=lr});function P(t,e){let r=eo(),n=as({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===lr?void 0:lr].filter(o=>!!o)});t.common.issues.push(n)}var as,L$,Ze,L,nn,Ge,Hi,qi,Tr,to,tl=b(()=>{Ui();el();as=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}},L$=[];Ze=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 L;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 L;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}}},L=Object.freeze({status:"aborted"}),nn=t=>({status:"dirty",value:t}),Ge=t=>({status:"valid",value:t}),Hi=t=>t.status==="aborted",qi=t=>t.status==="dirty",Tr=t=>t.status==="valid",to=t=>typeof Promise<"u"&&t instanceof Promise});var P_=b(()=>{});var A,R_=b(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(A||(A={}))});function V(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 A_(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 rE(t){return new RegExp(`^${A_(t)}$`)}function N_(t){let e=`${I_}T${A_(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 nE(t,e){return!!((e==="v4"||!e)&&K$.test(t)||(e==="v6"||!e)&&Y$.test(t))}function oE(t,e){if(!B$.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 sE(t,e){return!!((e==="v4"||!e)&&J$.test(t)||(e==="v6"||!e)&&X$.test(t))}function iE(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 ro(t){if(t instanceof it){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=st.create(ro(n))}return new it({...t._def,shape:()=>e})}else return t instanceof mr?new mr({...t._def,type:ro(t.element)}):t instanceof st?st.create(ro(t.unwrap())):t instanceof Jt?Jt.create(ro(t.unwrap())):t instanceof Kt?Kt.create(t.items.map(e=>ro(e))):t}function nl(t,e){let r=Gt(t),n=Gt(e);if(t===e)return{valid:!0,data:t};if(r===O.object&&n===O.object){let o=Q.objectKeys(e),s=Q.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=nl(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=nl(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 z_(t,e){return new hn({values:t,typeName:w.ZodEnum,...V(e)})}function C_(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function j_(t,e={},r){return t?Rr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=C_(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=C_(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Rr.create()}var xt,O_,G,F$,Z$,U$,H$,q$,B$,V$,W$,G$,rl,K$,J$,Y$,X$,Q$,eE,I_,tE,Pr,on,sn,an,cn,no,un,ln,Rr,pr,Nt,oo,mr,it,dn,dr,Bi,pn,Kt,Vi,so,io,Wi,mn,fn,hn,gn,Or,bt,st,Jt,_n,yn,ao,aE,cs,us,vn,cE,w,uE,M_,D_,lE,dE,L_,pE,mE,fE,hE,gE,_E,yE,vE,xE,ol,bE,SE,kE,wE,$E,EE,TE,PE,RE,OE,CE,IE,AE,NE,zE,jE,ME,DE,LE,FE,ZE,UE,HE,qE,F_=b(()=>{Zi();Ui();R_();tl();is();xt=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}},O_=(t,e)=>{if(Tr(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 ot(t.common.issues);return this._error=r,this._error}}};G=class{get description(){return this._def.description}_getType(e){return Gt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Gt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ze,ctx:{common:e.parent.common,data:e.data,parsedType:Gt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(to(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:Gt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return O_(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Gt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Tr(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=>Tr(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:Gt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(to(o)?o:Promise.resolve(o));return O_(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:k.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new bt({schema:this,typeName:w.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 st.create(this,this._def)}nullable(){return Jt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return mr.create(this)}promise(){return Or.create(this,this._def)}or(e){return dn.create([this,e],this._def)}and(e){return pn.create(this,e,this._def)}transform(e){return new bt({...V(this._def),schema:this,typeName:w.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new _n({...V(this._def),innerType:this,defaultValue:r,typeName:w.ZodDefault})}brand(){return new cs({typeName:w.ZodBranded,type:this,...V(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new yn({...V(this._def),innerType:this,catchValue:r,typeName:w.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return us.create(this,e)}readonly(){return vn.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},F$=/^c[^\s-]{8,}$/i,Z$=/^[0-9a-z]+$/,U$=/^[0-9A-HJKMNP-TV-Z]{26}$/i,H$=/^[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,q$=/^[a-z0-9_-]{21}$/i,B$=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,V$=/^[-+]?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)?)??$/,W$=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,G$="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",K$=/^(?:(?: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])$/,J$=/^(?:(?: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])$/,Y$=/^(([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]))$/,X$=/^(([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])$/,Q$=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,eE=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,I_="((\\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])))",tE=new RegExp(`^${I_}$`);Pr=class t extends G{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==O.string){let s=this._getOrReturnCtx(e);return P(s,{code:k.invalid_type,expected:O.string,received:s.parsedType}),L}let n=new Ze,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?P(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&P(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")W$.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"email",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")rl||(rl=new RegExp(G$,"u")),rl.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"emoji",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")H$.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"uuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")q$.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"nanoid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")F$.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")Z$.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cuid2",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")U$.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"ulid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),P(o,{validation:"url",code:k.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"regex",code:k.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),P(o,{code:k.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),P(o,{code:k.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),P(o,{code:k.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?N_(s).test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:k.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?tE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:k.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?rE(s).test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:k.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?V$.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"duration",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?nE(e.data,s.version)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"ip",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?oE(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"jwt",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?sE(e.data,s.version)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cidr",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?Q$.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?eE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64url",code:k.invalid_string,message:s.message}),n.dirty()):Q.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:k.invalid_string,...A.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...A.errToObj(e)})}url(e){return this._addCheck({kind:"url",...A.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...A.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...A.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...A.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...A.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...A.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...A.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...A.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...A.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...A.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...A.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...A.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,...A.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,...A.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...A.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...A.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...A.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...A.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...A.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...A.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...A.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...A.errToObj(r)})}nonempty(e){return this.min(1,A.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}};Pr.create=t=>new Pr({checks:[],typeName:w.ZodString,coerce:t?.coerce??!1,...V(t)});on=class t extends G{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 P(s,{code:k.invalid_type,expected:O.number,received:s.parsedType}),L}let n,o=new Ze;for(let s of this._def.checks)s.kind==="int"?Q.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{code:k.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),P(n,{code:k.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),P(n,{code:k.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?iE(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),P(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{code:k.not_finite,message:s.message}),o.dirty()):Q.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,A.toString(r))}gt(e,r){return this.setLimit("min",e,!1,A.toString(r))}lte(e,r){return this.setLimit("max",e,!0,A.toString(r))}lt(e,r){return this.setLimit("max",e,!1,A.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:A.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:A.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:A.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:A.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:A.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:A.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:A.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:A.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:A.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:A.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"&&Q.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};on.create=t=>new on({checks:[],typeName:w.ZodNumber,coerce:t?.coerce||!1,...V(t)});sn=class t extends G{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 Ze;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),P(n,{code:k.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),P(n,{code:k.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),P(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):Q.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return P(r,{code:k.invalid_type,expected:O.bigint,received:r.parsedType}),L}gte(e,r){return this.setLimit("min",e,!0,A.toString(r))}gt(e,r){return this.setLimit("min",e,!1,A.toString(r))}lte(e,r){return this.setLimit("max",e,!0,A.toString(r))}lt(e,r){return this.setLimit("max",e,!1,A.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:A.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:A.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:A.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:A.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:A.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:A.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};sn.create=t=>new sn({checks:[],typeName:w.ZodBigInt,coerce:t?.coerce??!1,...V(t)});an=class extends G{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==O.boolean){let n=this._getOrReturnCtx(e);return P(n,{code:k.invalid_type,expected:O.boolean,received:n.parsedType}),L}return Ge(e.data)}};an.create=t=>new an({typeName:w.ZodBoolean,coerce:t?.coerce||!1,...V(t)});cn=class t extends G{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==O.date){let s=this._getOrReturnCtx(e);return P(s,{code:k.invalid_type,expected:O.date,received:s.parsedType}),L}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return P(s,{code:k.invalid_date}),L}let n=new Ze,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:k.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:k.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):Q.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:A.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:A.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};cn.create=t=>new cn({checks:[],coerce:t?.coerce||!1,typeName:w.ZodDate,...V(t)});no=class extends G{_parse(e){if(this._getType(e)!==O.symbol){let n=this._getOrReturnCtx(e);return P(n,{code:k.invalid_type,expected:O.symbol,received:n.parsedType}),L}return Ge(e.data)}};no.create=t=>new no({typeName:w.ZodSymbol,...V(t)});un=class extends G{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return P(n,{code:k.invalid_type,expected:O.undefined,received:n.parsedType}),L}return Ge(e.data)}};un.create=t=>new un({typeName:w.ZodUndefined,...V(t)});ln=class extends G{_parse(e){if(this._getType(e)!==O.null){let n=this._getOrReturnCtx(e);return P(n,{code:k.invalid_type,expected:O.null,received:n.parsedType}),L}return Ge(e.data)}};ln.create=t=>new ln({typeName:w.ZodNull,...V(t)});Rr=class extends G{constructor(){super(...arguments),this._any=!0}_parse(e){return Ge(e.data)}};Rr.create=t=>new Rr({typeName:w.ZodAny,...V(t)});pr=class extends G{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ge(e.data)}};pr.create=t=>new pr({typeName:w.ZodUnknown,...V(t)});Nt=class extends G{_parse(e){let r=this._getOrReturnCtx(e);return P(r,{code:k.invalid_type,expected:O.never,received:r.parsedType}),L}};Nt.create=t=>new Nt({typeName:w.ZodNever,...V(t)});oo=class extends G{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return P(n,{code:k.invalid_type,expected:O.void,received:n.parsedType}),L}return Ge(e.data)}};oo.create=t=>new oo({typeName:w.ZodVoid,...V(t)});mr=class t extends G{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==O.array)return P(r,{code:k.invalid_type,expected:O.array,received:r.parsedType}),L;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(P(r,{code:i?k.too_big:k.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(P(r,{code:k.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(P(r,{code:k.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((i,a)=>o.type._parseAsync(new xt(r,i,r.path,a)))).then(i=>Ze.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new xt(r,i,r.path,a)));return Ze.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:A.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:A.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:A.toString(r)}})}nonempty(e){return this.min(1,e)}};mr.create=(t,e)=>new mr({type:t,minLength:null,maxLength:null,exactLength:null,typeName:w.ZodArray,...V(e)});it=class t extends G{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=Q.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 P(u,{code:k.invalid_type,expected:O.object,received:u.parsedType}),L}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Nt&&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 xt(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof Nt){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&&(P(o,{code:k.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new xt(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,m=await l.value;u.push({key:d,value:m,alwaysSet:l.alwaysSet})}return u}).then(u=>Ze.mergeObjectSync(n,u)):Ze.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return A.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:A.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:w.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 Q.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 Q.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return ro(this)}partial(e){let r={};for(let n of Q.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 Q.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof st;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return z_(Q.objectKeys(this.shape))}};it.create=(t,e)=>new it({shape:()=>t,unknownKeys:"strip",catchall:Nt.create(),typeName:w.ZodObject,...V(e)});it.strictCreate=(t,e)=>new it({shape:()=>t,unknownKeys:"strict",catchall:Nt.create(),typeName:w.ZodObject,...V(e)});it.lazycreate=(t,e)=>new it({shape:t,unknownKeys:"strip",catchall:Nt.create(),typeName:w.ZodObject,...V(e)});dn=class extends G{_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 ot(a.ctx.common.issues));return P(r,{code:k.invalid_union,unionErrors:i}),L}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 ot(c));return P(r,{code:k.invalid_union,unionErrors:a}),L}}get options(){return this._def.options}};dn.create=(t,e)=>new dn({options:t,typeName:w.ZodUnion,...V(e)});dr=t=>t instanceof mn?dr(t.schema):t instanceof bt?dr(t.innerType()):t instanceof fn?[t.value]:t instanceof hn?t.options:t instanceof gn?Q.objectValues(t.enum):t instanceof _n?dr(t._def.innerType):t instanceof un?[void 0]:t instanceof ln?[null]:t instanceof st?[void 0,...dr(t.unwrap())]:t instanceof Jt?[null,...dr(t.unwrap())]:t instanceof cs||t instanceof vn?dr(t.unwrap()):t instanceof yn?dr(t._def.innerType):[],Bi=class t extends G{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.object)return P(r,{code:k.invalid_type,expected:O.object,received:r.parsedType}),L;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}):(P(r,{code:k.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),L)}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=dr(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:w.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...V(n)})}};pn=class extends G{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Hi(s)||Hi(i))return L;let a=nl(s.value,i.value);return a.valid?((qi(s)||qi(i))&&r.dirty(),{status:r.value,value:a.data}):(P(n,{code:k.invalid_intersection_types}),L)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};pn.create=(t,e,r)=>new pn({left:t,right:e,typeName:w.ZodIntersection,...V(r)});Kt=class t extends G{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.array)return P(n,{code:k.invalid_type,expected:O.array,received:n.parsedType}),L;if(n.data.length<this._def.items.length)return P(n,{code:k.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),L;!this._def.rest&&n.data.length>this._def.items.length&&(P(n,{code:k.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new xt(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Ze.mergeArray(r,i)):Ze.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Kt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Kt({items:t,typeName:w.ZodTuple,rest:null,...V(e)})};Vi=class t extends G{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 P(n,{code:k.invalid_type,expected:O.object,received:n.parsedType}),L;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new xt(n,a,n.path,a)),value:i._parse(new xt(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Ze.mergeObjectAsync(r,o):Ze.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof G?new t({keyType:e,valueType:r,typeName:w.ZodRecord,...V(n)}):new t({keyType:Pr.create(),valueType:e,typeName:w.ZodRecord,...V(r)})}},so=class extends G{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 P(n,{code:k.invalid_type,expected:O.map,received:n.parsedType}),L;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new xt(n,a,n.path,[u,"key"])),value:s._parse(new xt(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 L;(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 L;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};so.create=(t,e,r)=>new so({valueType:e,keyType:t,typeName:w.ZodMap,...V(r)});io=class t extends G{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.set)return P(n,{code:k.invalid_type,expected:O.set,received:n.parsedType}),L;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(P(n,{code:k.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(P(n,{code:k.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function i(c){let u=new Set;for(let l of c){if(l.status==="aborted")return L;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 xt(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:A.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:A.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};io.create=(t,e)=>new io({valueType:t,minSize:null,maxSize:null,typeName:w.ZodSet,...V(e)});Wi=class t extends G{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.function)return P(r,{code:k.invalid_type,expected:O.function,received:r.parsedType}),L;function n(a,c){return as({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,eo(),lr].filter(u=>!!u),issueData:{code:k.invalid_arguments,argumentsError:c}})}function o(a,c){return as({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,eo(),lr].filter(u=>!!u),issueData:{code:k.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof Or){let a=this;return Ge(async function(...c){let u=new ot([]),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 Ge(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new ot([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new ot([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:Kt.create(e).rest(pr.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||Kt.create([]).rest(pr.create()),returns:r||pr.create(),typeName:w.ZodFunction,...V(n)})}},mn=class extends G{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})}};mn.create=(t,e)=>new mn({getter:t,typeName:w.ZodLazy,...V(e)});fn=class extends G{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return P(r,{received:r.data,code:k.invalid_literal,expected:this._def.value}),L}return{status:"valid",value:e.data}}get value(){return this._def.value}};fn.create=(t,e)=>new fn({value:t,typeName:w.ZodLiteral,...V(e)});hn=class t extends G{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return P(r,{expected:Q.joinValues(n),received:r.parsedType,code:k.invalid_type}),L}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 P(r,{received:r.data,code:k.invalid_enum_value,options:n}),L}return Ge(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};hn.create=z_;gn=class extends G{_parse(e){let r=Q.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==O.string&&n.parsedType!==O.number){let o=Q.objectValues(r);return P(n,{expected:Q.joinValues(o),received:n.parsedType,code:k.invalid_type}),L}if(this._cache||(this._cache=new Set(Q.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=Q.objectValues(r);return P(n,{received:n.data,code:k.invalid_enum_value,options:o}),L}return Ge(e.data)}get enum(){return this._def.values}};gn.create=(t,e)=>new gn({values:t,typeName:w.ZodNativeEnum,...V(e)});Or=class extends G{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.promise&&r.common.async===!1)return P(r,{code:k.invalid_type,expected:O.promise,received:r.parsedType}),L;let n=r.parsedType===O.promise?r.data:Promise.resolve(r.data);return Ge(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Or.create=(t,e)=>new Or({type:t,typeName:w.ZodPromise,...V(e)});bt=class extends G{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===w.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=>{P(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 L;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?L:c.status==="dirty"?nn(c.value):r.value==="dirty"?nn(c.value):c});{if(r.value==="aborted")return L;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?L:a.status==="dirty"?nn(a.value):r.value==="dirty"?nn(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?L:(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"?L:(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(!Tr(i))return L;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=>Tr(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):L);Q.assertNever(o)}};bt.create=(t,e,r)=>new bt({schema:t,typeName:w.ZodEffects,effect:e,...V(r)});bt.createWithPreprocess=(t,e,r)=>new bt({schema:e,effect:{type:"preprocess",transform:t},typeName:w.ZodEffects,...V(r)});st=class extends G{_parse(e){return this._getType(e)===O.undefined?Ge(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};st.create=(t,e)=>new st({innerType:t,typeName:w.ZodOptional,...V(e)});Jt=class extends G{_parse(e){return this._getType(e)===O.null?Ge(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Jt.create=(t,e)=>new Jt({innerType:t,typeName:w.ZodNullable,...V(e)});_n=class extends G{_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}};_n.create=(t,e)=>new _n({innerType:t,typeName:w.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...V(e)});yn=class extends G{_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 to(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new ot(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new ot(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};yn.create=(t,e)=>new yn({innerType:t,typeName:w.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...V(e)});ao=class extends G{_parse(e){if(this._getType(e)!==O.nan){let n=this._getOrReturnCtx(e);return P(n,{code:k.invalid_type,expected:O.nan,received:n.parsedType}),L}return{status:"valid",value:e.data}}};ao.create=t=>new ao({typeName:w.ZodNaN,...V(t)});aE=Symbol("zod_brand"),cs=class extends G{_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}},us=class t extends G{_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"?L:s.status==="dirty"?(r.dirty(),nn(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?L: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:w.ZodPipeline})}},vn=class extends G{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Tr(o)&&(o.value=Object.freeze(o.value)),o);return to(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};vn.create=(t,e)=>new vn({innerType:t,typeName:w.ZodReadonly,...V(e)});cE={object:it.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"})(w||(w={}));uE=(t,e={message:`Input not instance of ${t.name}`})=>j_(r=>r instanceof t,e),M_=Pr.create,D_=on.create,lE=ao.create,dE=sn.create,L_=an.create,pE=cn.create,mE=no.create,fE=un.create,hE=ln.create,gE=Rr.create,_E=pr.create,yE=Nt.create,vE=oo.create,xE=mr.create,ol=it.create,bE=it.strictCreate,SE=dn.create,kE=Bi.create,wE=pn.create,$E=Kt.create,EE=Vi.create,TE=so.create,PE=io.create,RE=Wi.create,OE=mn.create,CE=fn.create,IE=hn.create,AE=gn.create,NE=Or.create,zE=bt.create,jE=st.create,ME=Jt.create,DE=bt.createWithPreprocess,LE=us.create,FE=()=>M_().optional(),ZE=()=>D_().optional(),UE=()=>L_().optional(),HE={string:(t=>Pr.create({...t,coerce:!0})),number:(t=>on.create({...t,coerce:!0})),boolean:(t=>an.create({...t,coerce:!0})),bigint:(t=>sn.create({...t,coerce:!0})),date:(t=>cn.create({...t,coerce:!0}))},qE=L});var U={};Le(U,{BRAND:()=>aE,DIRTY:()=>nn,EMPTY_PATH:()=>L$,INVALID:()=>L,NEVER:()=>qE,OK:()=>Ge,ParseStatus:()=>Ze,Schema:()=>G,ZodAny:()=>Rr,ZodArray:()=>mr,ZodBigInt:()=>sn,ZodBoolean:()=>an,ZodBranded:()=>cs,ZodCatch:()=>yn,ZodDate:()=>cn,ZodDefault:()=>_n,ZodDiscriminatedUnion:()=>Bi,ZodEffects:()=>bt,ZodEnum:()=>hn,ZodError:()=>ot,ZodFirstPartyTypeKind:()=>w,ZodFunction:()=>Wi,ZodIntersection:()=>pn,ZodIssueCode:()=>k,ZodLazy:()=>mn,ZodLiteral:()=>fn,ZodMap:()=>so,ZodNaN:()=>ao,ZodNativeEnum:()=>gn,ZodNever:()=>Nt,ZodNull:()=>ln,ZodNullable:()=>Jt,ZodNumber:()=>on,ZodObject:()=>it,ZodOptional:()=>st,ZodParsedType:()=>O,ZodPipeline:()=>us,ZodPromise:()=>Or,ZodReadonly:()=>vn,ZodRecord:()=>Vi,ZodSchema:()=>G,ZodSet:()=>io,ZodString:()=>Pr,ZodSymbol:()=>no,ZodTransformer:()=>bt,ZodTuple:()=>Kt,ZodType:()=>G,ZodUndefined:()=>un,ZodUnion:()=>dn,ZodUnknown:()=>pr,ZodVoid:()=>oo,addIssueToContext:()=>P,any:()=>gE,array:()=>xE,bigint:()=>dE,boolean:()=>L_,coerce:()=>HE,custom:()=>j_,date:()=>pE,datetimeRegex:()=>N_,defaultErrorMap:()=>lr,discriminatedUnion:()=>kE,effect:()=>zE,enum:()=>IE,function:()=>RE,getErrorMap:()=>eo,getParsedType:()=>Gt,instanceof:()=>uE,intersection:()=>wE,isAborted:()=>Hi,isAsync:()=>to,isDirty:()=>qi,isValid:()=>Tr,late:()=>cE,lazy:()=>OE,literal:()=>CE,makeIssue:()=>as,map:()=>TE,nan:()=>lE,nativeEnum:()=>AE,never:()=>yE,null:()=>hE,nullable:()=>ME,number:()=>D_,object:()=>ol,objectUtil:()=>Qu,oboolean:()=>UE,onumber:()=>ZE,optional:()=>jE,ostring:()=>FE,pipeline:()=>LE,preprocess:()=>DE,promise:()=>NE,quotelessJson:()=>j$,record:()=>EE,set:()=>PE,setErrorMap:()=>D$,strictObject:()=>bE,string:()=>M_,symbol:()=>mE,transformer:()=>zE,tuple:()=>$E,undefined:()=>fE,union:()=>SE,unknown:()=>_E,util:()=>Q,void:()=>vE});var Gi=b(()=>{Ui();tl();P_();is();F_();Zi()});var ls=b(()=>{Gi()});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 mt(t){return t&&Object.assign(Ki,t),Ki}var VE,fr,Ki,co=b(()=>{VE=Object.freeze({status:"aborted"});fr=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Ki={}});var ee={};Le(ee,{BIGINT_FORMAT_RANGES:()=>U_,Class:()=>il,NUMBER_FORMAT_RANGES:()=>ml,aborted:()=>bn,allowsEval:()=>ll,assert:()=>YE,assertEqual:()=>WE,assertIs:()=>KE,assertNever:()=>JE,assertNotEqual:()=>GE,assignProp:()=>ul,cached:()=>ms,captureStackTrace:()=>Yi,cleanEnum:()=>lT,cleanRegex:()=>hs,clone:()=>ft,createTransparentProxy:()=>nT,defineLazy:()=>he,esc:()=>xn,escapeRegex:()=>Cr,extend:()=>iT,finalizeIssue:()=>zt,floatSafeRemainder:()=>cl,getElementAtPath:()=>XE,getEnumValues:()=>ps,getLengthableOrigin:()=>gs,getParsedType:()=>rT,getSizableOrigin:()=>H_,isObject:()=>uo,isPlainObject:()=>lo,issue:()=>fl,joinValues:()=>Ji,jsonStringifyReplacer:()=>al,merge:()=>aT,normalizeParams:()=>F,nullish:()=>fs,numKeys:()=>tT,omit:()=>sT,optionalKeys:()=>pl,partial:()=>cT,pick:()=>oT,prefixIssues:()=>Yt,primitiveTypes:()=>Z_,promiseAllObject:()=>QE,propertyKeyTypes:()=>dl,randomString:()=>eT,required:()=>uT,stringifyPrimitive:()=>Xi,unwrapMessage:()=>ds});function WE(t){return t}function GE(t){return t}function KE(t){}function JE(t){throw new Error}function YE(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 Ji(t,e="|"){return t.map(r=>Xi(r)).join(e)}function al(t,e){return typeof e=="bigint"?e.toString():e}function ms(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function fs(t){return t==null}function hs(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function cl(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 he(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 ul(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function XE(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function QE(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 eT(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function xn(t){return JSON.stringify(t)}function uo(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function lo(t){if(uo(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(uo(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function tT(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}function Cr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ft(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function F(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 nT(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 Xi(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function pl(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}function oT(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 ft(t,{...t._zod.def,shape:r,checks:[]})}function sT(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 ft(t,{...t._zod.def,shape:r,checks:[]})}function iT(t,e){if(!lo(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 ul(this,"shape",n),n},checks:[]};return ft(t,r)}function aT(t,e){return ft(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return ul(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function cT(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 ft(e,{...e._zod.def,shape:o,checks:[]})}function uT(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 ft(e,{...e._zod.def,shape:o,checks:[]})}function bn(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Yt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function ds(t){return typeof t=="string"?t:t?.message}function zt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=ds(t.inst?._zod.def?.error?.(t))??ds(e?.error?.(t))??ds(r.customError?.(t))??ds(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function H_(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function gs(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 lT(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Yi,ll,rT,dl,Z_,ml,U_,il,Xt=b(()=>{Yi=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};ll=ms(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});rT=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"]),Z_=new Set(["string","number","bigint","boolean","symbol","undefined"]);ml={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]},U_={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};il=class{constructor(...e){}}});function hl(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 gl(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 q_,Qi,_s,_l=b(()=>{co();Xt();q_=(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})},Qi=S("$ZodError",q_),_s=S("$ZodError",q_,{Parent:Error})});var yl,vl,xl,bl,Sl,Sn,kl,kn,wl=b(()=>{co();_l();Xt();yl=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 fr;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>zt(c,s,mt())));throw Yi(a,o?.callee),a}return i.value},vl=yl(_s),xl=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>zt(c,s,mt())));throw Yi(a,o?.callee),a}return i.value},bl=xl(_s),Sl=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 fr;return s.issues.length?{success:!1,error:new(t??Qi)(s.issues.map(i=>zt(i,o,mt())))}:{success:!0,data:s.value}},Sn=Sl(_s),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=>zt(i,o,mt())))}:{success:!0,data:s.value}},kn=kl(_s)});function ey(){return new RegExp(pT,"u")}function ly(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 dy(t){return new RegExp(`^${ly(t)}$`)}function py(t){let e=ly({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(`^${cy}T(?:${n})$`)}var B_,V_,W_,G_,K_,J_,Y_,X_,$l,Q_,pT,ty,ry,ny,oy,sy,El,iy,ay,cy,uy,my,fy,hy,gy,_y,yy,vy,ta=b(()=>{B_=/^[cC][^\s-]{8,}$/,V_=/^[0-9a-z]+$/,W_=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,G_=/^[0-9a-vA-V]{20}$/,K_=/^[A-Za-z0-9]{27}$/,J_=/^[a-zA-Z0-9_-]{21}$/,Y_=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,X_=/^([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})$/,$l=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)$/,Q_=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,pT="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";ty=/^(?:(?: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])$/,ry=/^(([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})$/,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])\/([0-9]|[1-2][0-9]|3[0-2])$/,oy=/^(([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])$/,sy=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,El=/^[A-Za-z0-9_-]*$/,iy=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,ay=/^\+(?:[0-9]){6,14}[0-9]$/,cy="(?:(?:\\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])))",uy=new RegExp(`^${cy}$`);my=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},fy=/^\d+$/,hy=/^-?\d+(?:\.\d+)?/i,gy=/true|false/i,_y=/null/i,yy=/^[^A-Z]*$/,vy=/^[^a-z]*$/});var Ue,xy,Tl,Pl,by,Sy,ky,wy,$y,ys,Ey,Ty,Py,Ry,Oy,Cy,Iy,ra=b(()=>{co();ta();Xt();Ue=S("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),xy={number:"number",bigint:"bigint",object:"date"},Tl=S("$ZodCheckLessThan",(t,e)=>{Ue.init(t,e);let r=xy[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})}}),Pl=S("$ZodCheckGreaterThan",(t,e)=>{Ue.init(t,e);let r=xy[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})}}),by=S("$ZodCheckMultipleOf",(t,e)=>{Ue.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):cl(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})}}),Sy=S("$ZodCheckNumberFormat",(t,e)=>{Ue.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=ml[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=fy)}),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})}}),ky=S("$ZodCheckMaxLength",(t,e)=>{var r;Ue.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!fs(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=gs(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),wy=S("$ZodCheckMinLength",(t,e)=>{var r;Ue.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!fs(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=gs(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),$y=S("$ZodCheckLengthEquals",(t,e)=>{var r;Ue.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!fs(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=gs(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})}}),ys=S("$ZodCheckStringFormat",(t,e)=>{var r,n;Ue.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=()=>{})}),Ey=S("$ZodCheckRegex",(t,e)=>{ys.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})}}),Ty=S("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=yy),ys.init(t,e)}),Py=S("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=vy),ys.init(t,e)}),Ry=S("$ZodCheckIncludes",(t,e)=>{Ue.init(t,e);let r=Cr(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})}}),Oy=S("$ZodCheckStartsWith",(t,e)=>{Ue.init(t,e);let r=new RegExp(`^${Cr(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})}}),Cy=S("$ZodCheckEndsWith",(t,e)=>{Ue.init(t,e);let r=new RegExp(`.*${Cr(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})}}),Iy=S("$ZodCheckOverwrite",(t,e)=>{Ue.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}})});var na,Rl=b(()=>{na=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 k_={};je(k_,{QwenCodeAdapter:()=>Xu});import{readFileSync as W$}from"node:fs";import{resolve as S_,join as G$}from"node:path";import{homedir as b_}from"node:os";var Xu,w_=v(()=>{"use strict";yu();Xu=class extends Yn{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 S_(b_(),".qwen","settings.json")}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:`node ${e}/hooks/pretooluse.mjs`}]}],PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}]}}readSettings(){try{let e=W$(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let{writeFileSync:r}=tw("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(){return"not installed"}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{instructionsPath:S_(G$(b_(),".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 E_={};je(E_,{PLATFORM_ENV_VARS:()=>$_,detectPlatform:()=>cn,getAdapter:()=>cs});import{existsSync as kt}from"node:fs";import{resolve as wt}from"node:path";import{homedir as K$}from"node:os";function cn(t){if(t?.name){let n=Sg[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 $_)if(o.some(s=>process.env[s]))return{platform:n,confidence:"high",reason:`${o.join(" or ")} env var set`};let r=K$();return kt(wt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:kt(wt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:kt(wt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:kt(wt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:kt(wt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:kt(wt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:kt(wt(r,".qwen"))?{platform:"qwen-code",confidence:"medium",reason:"~/.qwen/ directory exists"}:kt(wt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:kt(wt(r,".config","kilo"))?{platform:"kilo",confidence:"medium",reason:"~/.config/kilo/ directory exists"}:kt(wt(r,".config","JetBrains"))?{platform:"jetbrains-copilot",confidence:"medium",reason:"~/.config/JetBrains/ directory exists"}:kt(wt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:kt(wt(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 cs(t){let e=t??cn().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(wu(),ku));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(Ig(),Cg));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(jg(),zg));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(Fg(),Lg));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(Hg(),Ug));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(Gg(),Wg));return new r}case"jetbrains-copilot":{let{JetBrainsCopilotAdapter:r}=await Promise.resolve().then(()=>(Xg(),Yg));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(s_(),o_));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(u_(),c_));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(g_(),h_));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(v_(),x_));return new r}case"qwen-code":{let{QwenCodeAdapter:r}=await Promise.resolve().then(()=>(w_(),k_));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(wu(),ku));return new r}}}var $_,Qu=v(()=>{"use strict";bg();$_=[["claude-code",["CLAUDE_PROJECT_DIR","CLAUDE_SESSION_ID"]],["gemini-cli",["GEMINI_PROJECT_DIR","GEMINI_CLI"]],["openclaw",["OPENCLAW_HOME","OPENCLAW_CLI"]],["kilo",["KILO","KILO_PID"]],["opencode",["OPENCODE","OPENCODE_PID"]],["codex",["CODEX_CI","CODEX_THREAD_ID"]],["cursor",["CURSOR_TRACE_ID","CURSOR_CLI"]],["vscode-copilot",["VSCODE_PID","VSCODE_CWD"]],["jetbrains-copilot",["IDEA_INITIAL_DIRECTORY","IDEA_HOME","JETBRAINS_CLIENT_ID"]],["qwen-code",["QWEN_PROJECT_DIR","QWEN_SESSION_ID"]]]});var Q,el,O,Yt,us=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})(Q||(Q={}));(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(el||(el={}));O=Q.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Yt=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,J$,st,Fi=v(()=>{us();w=Q.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"]),J$=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),st=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,Q.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()}};st.create=t=>new st(t)});var Y$,pr,tl=v(()=>{Fi();us();Y$=(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,Q.jsonStringifyReplacer)}`;break;case w.unrecognized_keys:r=`Unrecognized key(s) in object: ${Q.joinValues(t.keys,", ")}`;break;case w.invalid_union:r="Invalid input";break;case w.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Q.joinValues(t.options)}`;break;case w.invalid_enum_value:r=`Invalid enum value. Expected ${Q.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}"`:Q.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,Q.assertNever(t)}return{message:r}},pr=Y$});function X$(t){T_=t}function no(){return T_}var T_,Zi=v(()=>{tl();T_=pr});function P(t,e){let r=no(),n=ls({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===pr?void 0:pr].filter(o=>!!o)});t.common.issues.push(n)}var ls,Q$,Fe,L,un,Ge,Ui,Hi,Or,oo,rl=v(()=>{Zi();tl();ls=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}},Q$=[];Fe=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return L;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 L;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}}},L=Object.freeze({status:"aborted"}),un=t=>({status:"dirty",value:t}),Ge=t=>({status:"valid",value:t}),Ui=t=>t.status==="aborted",Hi=t=>t.status==="dirty",Or=t=>t.status==="valid",oo=t=>typeof Promise<"u"&&t instanceof Promise});var P_=v(()=>{});var A,R_=v(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(A||(A={}))});function W(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 A_(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 gE(t){return new RegExp(`^${A_(t)}$`)}function N_(t){let e=`${I_}T${A_(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 _E(t,e){return!!((e==="v4"||!e)&&uE.test(t)||(e==="v6"||!e)&&dE.test(t))}function yE(t,e){if(!sE.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 xE(t,e){return!!((e==="v4"||!e)&&lE.test(t)||(e==="v6"||!e)&&pE.test(t))}function vE(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 so(t){if(t instanceof at){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=it.create(so(n))}return new at({...t._def,shape:()=>e})}else return t instanceof hr?new hr({...t._def,type:so(t.element)}):t instanceof it?it.create(so(t.unwrap())):t instanceof Qt?Qt.create(so(t.unwrap())):t instanceof Xt?Xt.create(t.items.map(e=>so(e))):t}function ol(t,e){let r=Yt(t),n=Yt(e);if(t===e)return{valid:!0,data:t};if(r===O.object&&n===O.object){let o=Q.objectKeys(e),s=Q.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=ol(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=ol(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 z_(t,e){return new vn({values:t,typeName:$.ZodEnum,...W(e)})}function C_(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function j_(t,e={},r){return t?Ir.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=C_(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=C_(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Ir.create()}var $t,O_,K,eE,tE,rE,nE,oE,sE,iE,aE,cE,nl,uE,lE,dE,pE,mE,fE,I_,hE,Cr,ln,dn,pn,mn,io,fn,hn,Ir,fr,Lt,ao,hr,at,gn,mr,qi,_n,Xt,Bi,co,uo,Vi,yn,xn,vn,Sn,Ar,Et,it,Qt,bn,kn,lo,SE,ds,ps,wn,bE,$,kE,M_,D_,wE,$E,L_,EE,TE,PE,RE,OE,CE,IE,AE,NE,sl,zE,jE,ME,DE,LE,FE,ZE,UE,HE,qE,BE,VE,WE,GE,KE,JE,YE,XE,QE,eT,tT,rT,nT,oT,F_=v(()=>{Fi();Zi();R_();rl();us();$t=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}},O_=(t,e)=>{if(Or(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 st(t.common.issues);return this._error=r,this._error}}};K=class{get description(){return this._def.description}_getType(e){return Yt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Yt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Fe,ctx:{common:e.parent.common,data:e.data,parsedType:Yt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(oo(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:Yt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return O_(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Yt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Or(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=>Or(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:Yt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(oo(o)?o:Promise.resolve(o));return O_(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 Et({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 it.create(this,this._def)}nullable(){return Qt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return hr.create(this)}promise(){return Ar.create(this,this._def)}or(e){return gn.create([this,e],this._def)}and(e){return _n.create(this,e,this._def)}transform(e){return new Et({...W(this._def),schema:this,typeName:$.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new bn({...W(this._def),innerType:this,defaultValue:r,typeName:$.ZodDefault})}brand(){return new ds({typeName:$.ZodBranded,type:this,...W(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new kn({...W(this._def),innerType:this,catchValue:r,typeName:$.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return ps.create(this,e)}readonly(){return wn.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},eE=/^c[^\s-]{8,}$/i,tE=/^[0-9a-z]+$/,rE=/^[0-9A-HJKMNP-TV-Z]{26}$/i,nE=/^[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,oE=/^[a-z0-9_-]{21}$/i,sE=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,iE=/^[-+]?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)?)??$/,aE=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,cE="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",uE=/^(?:(?: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])$/,lE=/^(?:(?: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])$/,dE=/^(([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]))$/,pE=/^(([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])$/,mE=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,fE=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,I_="((\\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])))",hE=new RegExp(`^${I_}$`);Cr=class t extends K{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==O.string){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_type,expected:O.string,received:s.parsedType}),L}let n=new Fe,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),P(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),P(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?P(o,{code:w.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&P(o,{code:w.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")aE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"email",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")nl||(nl=new RegExp(cE,"u")),nl.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"emoji",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")nE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"uuid",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")oE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"nanoid",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")eE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cuid",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")tE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cuid2",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")rE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(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),P(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),P(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),P(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),P(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),P(o,{code:w.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?N_(s).test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?hE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?gE(s).test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?iE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"duration",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?_E(e.data,s.version)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"ip",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?yE(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"jwt",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?xE(e.data,s.version)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cidr",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?mE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?fE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64url",code:w.invalid_string,message:s.message}),n.dirty()):Q.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,...A.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...A.errToObj(e)})}url(e){return this._addCheck({kind:"url",...A.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...A.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...A.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...A.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...A.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...A.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...A.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...A.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...A.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...A.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...A.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...A.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,...A.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,...A.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...A.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...A.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...A.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...A.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...A.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...A.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...A.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...A.errToObj(r)})}nonempty(e){return this.min(1,A.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}};Cr.create=t=>new Cr({checks:[],typeName:$.ZodString,coerce:t?.coerce??!1,...W(t)});ln=class t extends K{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 P(s,{code:w.invalid_type,expected:O.number,received:s.parsedType}),L}let n,o=new Fe;for(let s of this._def.checks)s.kind==="int"?Q.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),P(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),P(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),P(n,{code:w.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?vE(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),P(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),P(n,{code:w.not_finite,message:s.message}),o.dirty()):Q.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,A.toString(r))}gt(e,r){return this.setLimit("min",e,!1,A.toString(r))}lte(e,r){return this.setLimit("max",e,!0,A.toString(r))}lt(e,r){return this.setLimit("max",e,!1,A.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:A.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:A.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:A.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:A.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:A.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:A.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:A.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:A.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:A.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:A.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"&&Q.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)}};ln.create=t=>new ln({checks:[],typeName:$.ZodNumber,coerce:t?.coerce||!1,...W(t)});dn=class t extends K{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 Fe;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),P(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),P(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),P(n,{code:w.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):Q.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return P(r,{code:w.invalid_type,expected:O.bigint,received:r.parsedType}),L}gte(e,r){return this.setLimit("min",e,!0,A.toString(r))}gt(e,r){return this.setLimit("min",e,!1,A.toString(r))}lte(e,r){return this.setLimit("max",e,!0,A.toString(r))}lt(e,r){return this.setLimit("max",e,!1,A.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:A.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:A.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:A.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:A.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:A.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:A.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}};dn.create=t=>new dn({checks:[],typeName:$.ZodBigInt,coerce:t?.coerce??!1,...W(t)});pn=class extends K{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==O.boolean){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.boolean,received:n.parsedType}),L}return Ge(e.data)}};pn.create=t=>new pn({typeName:$.ZodBoolean,coerce:t?.coerce||!1,...W(t)});mn=class t extends K{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==O.date){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_type,expected:O.date,received:s.parsedType}),L}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_date}),L}let n=new Fe,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),P(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),P(o,{code:w.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):Q.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:A.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:A.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}};mn.create=t=>new mn({checks:[],coerce:t?.coerce||!1,typeName:$.ZodDate,...W(t)});io=class extends K{_parse(e){if(this._getType(e)!==O.symbol){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.symbol,received:n.parsedType}),L}return Ge(e.data)}};io.create=t=>new io({typeName:$.ZodSymbol,...W(t)});fn=class extends K{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.undefined,received:n.parsedType}),L}return Ge(e.data)}};fn.create=t=>new fn({typeName:$.ZodUndefined,...W(t)});hn=class extends K{_parse(e){if(this._getType(e)!==O.null){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.null,received:n.parsedType}),L}return Ge(e.data)}};hn.create=t=>new hn({typeName:$.ZodNull,...W(t)});Ir=class extends K{constructor(){super(...arguments),this._any=!0}_parse(e){return Ge(e.data)}};Ir.create=t=>new Ir({typeName:$.ZodAny,...W(t)});fr=class extends K{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ge(e.data)}};fr.create=t=>new fr({typeName:$.ZodUnknown,...W(t)});Lt=class extends K{_parse(e){let r=this._getOrReturnCtx(e);return P(r,{code:w.invalid_type,expected:O.never,received:r.parsedType}),L}};Lt.create=t=>new Lt({typeName:$.ZodNever,...W(t)});ao=class extends K{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.void,received:n.parsedType}),L}return Ge(e.data)}};ao.create=t=>new ao({typeName:$.ZodVoid,...W(t)});hr=class t extends K{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==O.array)return P(r,{code:w.invalid_type,expected:O.array,received:r.parsedType}),L;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(P(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&&(P(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&&(P(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 $t(r,i,r.path,a)))).then(i=>Fe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new $t(r,i,r.path,a)));return Fe.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:A.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:A.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:A.toString(r)}})}nonempty(e){return this.min(1,e)}};hr.create=(t,e)=>new hr({type:t,minLength:null,maxLength:null,exactLength:null,typeName:$.ZodArray,...W(e)});at=class t extends K{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=Q.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 P(u,{code:w.invalid_type,expected:O.object,received:u.parsedType}),L}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Lt&&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 $t(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof Lt){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&&(P(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 $t(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,m=await l.value;u.push({key:d,value:m,alwaysSet:l.alwaysSet})}return u}).then(u=>Fe.mergeObjectSync(n,u)):Fe.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return A.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:A.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 Q.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 Q.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return so(this)}partial(e){let r={};for(let n of Q.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 Q.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof it;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return z_(Q.objectKeys(this.shape))}};at.create=(t,e)=>new at({shape:()=>t,unknownKeys:"strip",catchall:Lt.create(),typeName:$.ZodObject,...W(e)});at.strictCreate=(t,e)=>new at({shape:()=>t,unknownKeys:"strict",catchall:Lt.create(),typeName:$.ZodObject,...W(e)});at.lazycreate=(t,e)=>new at({shape:t,unknownKeys:"strip",catchall:Lt.create(),typeName:$.ZodObject,...W(e)});gn=class extends K{_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 st(a.ctx.common.issues));return P(r,{code:w.invalid_union,unionErrors:i}),L}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 st(c));return P(r,{code:w.invalid_union,unionErrors:a}),L}}get options(){return this._def.options}};gn.create=(t,e)=>new gn({options:t,typeName:$.ZodUnion,...W(e)});mr=t=>t instanceof yn?mr(t.schema):t instanceof Et?mr(t.innerType()):t instanceof xn?[t.value]:t instanceof vn?t.options:t instanceof Sn?Q.objectValues(t.enum):t instanceof bn?mr(t._def.innerType):t instanceof fn?[void 0]:t instanceof hn?[null]:t instanceof it?[void 0,...mr(t.unwrap())]:t instanceof Qt?[null,...mr(t.unwrap())]:t instanceof ds||t instanceof wn?mr(t.unwrap()):t instanceof kn?mr(t._def.innerType):[],qi=class t extends K{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.object)return P(r,{code:w.invalid_type,expected:O.object,received:r.parsedType}),L;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}):(P(r,{code:w.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),L)}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=mr(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,...W(n)})}};_n=class extends K{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Ui(s)||Ui(i))return L;let a=ol(s.value,i.value);return a.valid?((Hi(s)||Hi(i))&&r.dirty(),{status:r.value,value:a.data}):(P(n,{code:w.invalid_intersection_types}),L)};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}))}};_n.create=(t,e,r)=>new _n({left:t,right:e,typeName:$.ZodIntersection,...W(r)});Xt=class t extends K{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.array)return P(n,{code:w.invalid_type,expected:O.array,received:n.parsedType}),L;if(n.data.length<this._def.items.length)return P(n,{code:w.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),L;!this._def.rest&&n.data.length>this._def.items.length&&(P(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 $t(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Fe.mergeArray(r,i)):Fe.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Xt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Xt({items:t,typeName:$.ZodTuple,rest:null,...W(e)})};Bi=class t extends K{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 P(n,{code:w.invalid_type,expected:O.object,received:n.parsedType}),L;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new $t(n,a,n.path,a)),value:i._parse(new $t(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Fe.mergeObjectAsync(r,o):Fe.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof K?new t({keyType:e,valueType:r,typeName:$.ZodRecord,...W(n)}):new t({keyType:Cr.create(),valueType:e,typeName:$.ZodRecord,...W(r)})}},co=class extends K{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 P(n,{code:w.invalid_type,expected:O.map,received:n.parsedType}),L;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new $t(n,a,n.path,[u,"key"])),value:s._parse(new $t(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 L;(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 L;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};co.create=(t,e,r)=>new co({valueType:e,keyType:t,typeName:$.ZodMap,...W(r)});uo=class t extends K{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.set)return P(n,{code:w.invalid_type,expected:O.set,received:n.parsedType}),L;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(P(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&&(P(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 L;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 $t(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:A.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:A.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};uo.create=(t,e)=>new uo({valueType:t,minSize:null,maxSize:null,typeName:$.ZodSet,...W(e)});Vi=class t extends K{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.function)return P(r,{code:w.invalid_type,expected:O.function,received:r.parsedType}),L;function n(a,c){return ls({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,no(),pr].filter(u=>!!u),issueData:{code:w.invalid_arguments,argumentsError:c}})}function o(a,c){return ls({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,no(),pr].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 Ar){let a=this;return Ge(async function(...c){let u=new st([]),l=await a._def.args.parseAsync(c,s).catch(h=>{throw u.addIssue(n(c,h)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(h=>{throw u.addIssue(o(d,h)),u})})}else{let a=this;return Ge(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new st([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new st([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:Xt.create(e).rest(fr.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||Xt.create([]).rest(fr.create()),returns:r||fr.create(),typeName:$.ZodFunction,...W(n)})}},yn=class extends K{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})}};yn.create=(t,e)=>new yn({getter:t,typeName:$.ZodLazy,...W(e)});xn=class extends K{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return P(r,{received:r.data,code:w.invalid_literal,expected:this._def.value}),L}return{status:"valid",value:e.data}}get value(){return this._def.value}};xn.create=(t,e)=>new xn({value:t,typeName:$.ZodLiteral,...W(e)});vn=class t extends K{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return P(r,{expected:Q.joinValues(n),received:r.parsedType,code:w.invalid_type}),L}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 P(r,{received:r.data,code:w.invalid_enum_value,options:n}),L}return Ge(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})}};vn.create=z_;Sn=class extends K{_parse(e){let r=Q.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==O.string&&n.parsedType!==O.number){let o=Q.objectValues(r);return P(n,{expected:Q.joinValues(o),received:n.parsedType,code:w.invalid_type}),L}if(this._cache||(this._cache=new Set(Q.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=Q.objectValues(r);return P(n,{received:n.data,code:w.invalid_enum_value,options:o}),L}return Ge(e.data)}get enum(){return this._def.values}};Sn.create=(t,e)=>new Sn({values:t,typeName:$.ZodNativeEnum,...W(e)});Ar=class extends K{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.promise&&r.common.async===!1)return P(r,{code:w.invalid_type,expected:O.promise,received:r.parsedType}),L;let n=r.parsedType===O.promise?r.data:Promise.resolve(r.data);return Ge(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Ar.create=(t,e)=>new Ar({type:t,typeName:$.ZodPromise,...W(e)});Et=class extends K{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=>{P(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 L;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?L:c.status==="dirty"?un(c.value):r.value==="dirty"?un(c.value):c});{if(r.value==="aborted")return L;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?L:a.status==="dirty"?un(a.value):r.value==="dirty"?un(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"?L:(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"?L:(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(!Or(i))return L;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=>Or(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):L);Q.assertNever(o)}};Et.create=(t,e,r)=>new Et({schema:t,typeName:$.ZodEffects,effect:e,...W(r)});Et.createWithPreprocess=(t,e,r)=>new Et({schema:e,effect:{type:"preprocess",transform:t},typeName:$.ZodEffects,...W(r)});it=class extends K{_parse(e){return this._getType(e)===O.undefined?Ge(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};it.create=(t,e)=>new it({innerType:t,typeName:$.ZodOptional,...W(e)});Qt=class extends K{_parse(e){return this._getType(e)===O.null?Ge(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Qt.create=(t,e)=>new Qt({innerType:t,typeName:$.ZodNullable,...W(e)});bn=class extends K{_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}};bn.create=(t,e)=>new bn({innerType:t,typeName:$.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...W(e)});kn=class extends K{_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 oo(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new st(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new st(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};kn.create=(t,e)=>new kn({innerType:t,typeName:$.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...W(e)});lo=class extends K{_parse(e){if(this._getType(e)!==O.nan){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.nan,received:n.parsedType}),L}return{status:"valid",value:e.data}}};lo.create=t=>new lo({typeName:$.ZodNaN,...W(t)});SE=Symbol("zod_brand"),ds=class extends K{_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}},ps=class t extends K{_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"?L:s.status==="dirty"?(r.dirty(),un(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"?L: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})}},wn=class extends K{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Or(o)&&(o.value=Object.freeze(o.value)),o);return oo(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};wn.create=(t,e)=>new wn({innerType:t,typeName:$.ZodReadonly,...W(e)});bE={object:at.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"})($||($={}));kE=(t,e={message:`Input not instance of ${t.name}`})=>j_(r=>r instanceof t,e),M_=Cr.create,D_=ln.create,wE=lo.create,$E=dn.create,L_=pn.create,EE=mn.create,TE=io.create,PE=fn.create,RE=hn.create,OE=Ir.create,CE=fr.create,IE=Lt.create,AE=ao.create,NE=hr.create,sl=at.create,zE=at.strictCreate,jE=gn.create,ME=qi.create,DE=_n.create,LE=Xt.create,FE=Bi.create,ZE=co.create,UE=uo.create,HE=Vi.create,qE=yn.create,BE=xn.create,VE=vn.create,WE=Sn.create,GE=Ar.create,KE=Et.create,JE=it.create,YE=Qt.create,XE=Et.createWithPreprocess,QE=ps.create,eT=()=>M_().optional(),tT=()=>D_().optional(),rT=()=>L_().optional(),nT={string:(t=>Cr.create({...t,coerce:!0})),number:(t=>ln.create({...t,coerce:!0})),boolean:(t=>pn.create({...t,coerce:!0})),bigint:(t=>dn.create({...t,coerce:!0})),date:(t=>mn.create({...t,coerce:!0}))},oT=L});var q={};je(q,{BRAND:()=>SE,DIRTY:()=>un,EMPTY_PATH:()=>Q$,INVALID:()=>L,NEVER:()=>oT,OK:()=>Ge,ParseStatus:()=>Fe,Schema:()=>K,ZodAny:()=>Ir,ZodArray:()=>hr,ZodBigInt:()=>dn,ZodBoolean:()=>pn,ZodBranded:()=>ds,ZodCatch:()=>kn,ZodDate:()=>mn,ZodDefault:()=>bn,ZodDiscriminatedUnion:()=>qi,ZodEffects:()=>Et,ZodEnum:()=>vn,ZodError:()=>st,ZodFirstPartyTypeKind:()=>$,ZodFunction:()=>Vi,ZodIntersection:()=>_n,ZodIssueCode:()=>w,ZodLazy:()=>yn,ZodLiteral:()=>xn,ZodMap:()=>co,ZodNaN:()=>lo,ZodNativeEnum:()=>Sn,ZodNever:()=>Lt,ZodNull:()=>hn,ZodNullable:()=>Qt,ZodNumber:()=>ln,ZodObject:()=>at,ZodOptional:()=>it,ZodParsedType:()=>O,ZodPipeline:()=>ps,ZodPromise:()=>Ar,ZodReadonly:()=>wn,ZodRecord:()=>Bi,ZodSchema:()=>K,ZodSet:()=>uo,ZodString:()=>Cr,ZodSymbol:()=>io,ZodTransformer:()=>Et,ZodTuple:()=>Xt,ZodType:()=>K,ZodUndefined:()=>fn,ZodUnion:()=>gn,ZodUnknown:()=>fr,ZodVoid:()=>ao,addIssueToContext:()=>P,any:()=>OE,array:()=>NE,bigint:()=>$E,boolean:()=>L_,coerce:()=>nT,custom:()=>j_,date:()=>EE,datetimeRegex:()=>N_,defaultErrorMap:()=>pr,discriminatedUnion:()=>ME,effect:()=>KE,enum:()=>VE,function:()=>HE,getErrorMap:()=>no,getParsedType:()=>Yt,instanceof:()=>kE,intersection:()=>DE,isAborted:()=>Ui,isAsync:()=>oo,isDirty:()=>Hi,isValid:()=>Or,late:()=>bE,lazy:()=>qE,literal:()=>BE,makeIssue:()=>ls,map:()=>ZE,nan:()=>wE,nativeEnum:()=>WE,never:()=>IE,null:()=>RE,nullable:()=>YE,number:()=>D_,object:()=>sl,objectUtil:()=>el,oboolean:()=>rT,onumber:()=>tT,optional:()=>JE,ostring:()=>eT,pipeline:()=>QE,preprocess:()=>XE,promise:()=>GE,quotelessJson:()=>J$,record:()=>FE,set:()=>UE,setErrorMap:()=>X$,strictObject:()=>zE,string:()=>M_,symbol:()=>TE,transformer:()=>KE,tuple:()=>LE,undefined:()=>PE,union:()=>jE,unknown:()=>CE,util:()=>Q,void:()=>AE});var Wi=v(()=>{Zi();rl();P_();us();F_();Fi()});var ms=v(()=>{Wi()});function b(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let 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 ht(t){return t&&Object.assign(Gi,t),Gi}var iT,gr,Gi,po=v(()=>{iT=Object.freeze({status:"aborted"});gr=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Gi={}});var ee={};je(ee,{BIGINT_FORMAT_RANGES:()=>U_,Class:()=>al,NUMBER_FORMAT_RANGES:()=>fl,aborted:()=>En,allowsEval:()=>dl,assert:()=>dT,assertEqual:()=>aT,assertIs:()=>uT,assertNever:()=>lT,assertNotEqual:()=>cT,assignProp:()=>ll,cached:()=>gs,captureStackTrace:()=>Ji,cleanEnum:()=>wT,cleanRegex:()=>ys,clone:()=>gt,createTransparentProxy:()=>_T,defineLazy:()=>fe,esc:()=>$n,escapeRegex:()=>Nr,extend:()=>vT,finalizeIssue:()=>Ft,floatSafeRemainder:()=>ul,getElementAtPath:()=>pT,getEnumValues:()=>hs,getLengthableOrigin:()=>xs,getParsedType:()=>gT,getSizableOrigin:()=>H_,isObject:()=>mo,isPlainObject:()=>fo,issue:()=>hl,joinValues:()=>Ki,jsonStringifyReplacer:()=>cl,merge:()=>ST,normalizeParams:()=>F,nullish:()=>_s,numKeys:()=>hT,omit:()=>xT,optionalKeys:()=>ml,partial:()=>bT,pick:()=>yT,prefixIssues:()=>er,primitiveTypes:()=>Z_,promiseAllObject:()=>mT,propertyKeyTypes:()=>pl,randomString:()=>fT,required:()=>kT,stringifyPrimitive:()=>Yi,unwrapMessage:()=>fs});function aT(t){return t}function cT(t){return t}function uT(t){}function lT(t){throw new Error}function dT(t){}function hs(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 Ki(t,e="|"){return t.map(r=>Yi(r)).join(e)}function cl(t,e){return typeof e=="bigint"?e.toString():e}function gs(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function _s(t){return t==null}function ys(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function ul(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 fe(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 ll(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function pT(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function mT(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 fT(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function $n(t){return JSON.stringify(t)}function mo(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function fo(t){if(mo(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(mo(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function hT(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}function Nr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function gt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function F(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 _T(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 Yi(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 yT(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 gt(t,{...t._zod.def,shape:r,checks:[]})}function xT(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 gt(t,{...t._zod.def,shape:r,checks:[]})}function vT(t,e){if(!fo(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 ll(this,"shape",n),n},checks:[]};return gt(t,r)}function ST(t,e){return gt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return ll(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function bT(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 gt(e,{...e._zod.def,shape:o,checks:[]})}function kT(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 gt(e,{...e._zod.def,shape:o,checks:[]})}function En(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function er(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function fs(t){return typeof t=="string"?t:t?.message}function Ft(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=fs(t.inst?._zod.def?.error?.(t))??fs(e?.error?.(t))??fs(r.customError?.(t))??fs(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function H_(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function xs(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function hl(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function wT(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Ji,dl,gT,pl,Z_,fl,U_,al,tr=v(()=>{Ji=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};dl=gs(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});gT=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}`)}},pl=new Set(["string","number","symbol"]),Z_=new Set(["string","number","bigint","boolean","symbol","undefined"]);fl={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]},U_={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};al=class{constructor(...e){}}});function gl(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 _l(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 q_,Xi,vs,yl=v(()=>{po();tr();q_=(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})},Xi=b("$ZodError",q_),vs=b("$ZodError",q_,{Parent:Error})});var xl,vl,Sl,bl,kl,Tn,wl,Pn,$l=v(()=>{po();yl();tr();xl=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 gr;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Ft(c,s,ht())));throw Ji(a,o?.callee),a}return i.value},vl=xl(vs),Sl=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=>Ft(c,s,ht())));throw Ji(a,o?.callee),a}return i.value},bl=Sl(vs),kl=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 gr;return s.issues.length?{success:!1,error:new(t??Xi)(s.issues.map(i=>Ft(i,o,ht())))}:{success:!0,data:s.value}},Tn=kl(vs),wl=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=>Ft(i,o,ht())))}:{success:!0,data:s.value}},Pn=wl(vs)});function ey(){return new RegExp(ET,"u")}function ly(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 dy(t){return new RegExp(`^${ly(t)}$`)}function py(t){let e=ly({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(`^${cy}T(?:${n})$`)}var B_,V_,W_,G_,K_,J_,Y_,X_,El,Q_,ET,ty,ry,ny,oy,sy,Tl,iy,ay,cy,uy,my,fy,hy,gy,_y,yy,xy,ea=v(()=>{B_=/^[cC][^\s-]{8,}$/,V_=/^[0-9a-z]+$/,W_=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,G_=/^[0-9a-vA-V]{20}$/,K_=/^[A-Za-z0-9]{27}$/,J_=/^[a-zA-Z0-9_-]{21}$/,Y_=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,X_=/^([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})$/,El=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)$/,Q_=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,ET="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";ty=/^(?:(?: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])$/,ry=/^(([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})$/,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])\/([0-9]|[1-2][0-9]|3[0-2])$/,oy=/^(([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])$/,sy=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Tl=/^[A-Za-z0-9_-]*$/,iy=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,ay=/^\+(?:[0-9]){6,14}[0-9]$/,cy="(?:(?:\\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])))",uy=new RegExp(`^${cy}$`);my=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},fy=/^\d+$/,hy=/^-?\d+(?:\.\d+)?/i,gy=/true|false/i,_y=/null/i,yy=/^[^A-Z]*$/,xy=/^[^a-z]*$/});var Ze,vy,Pl,Rl,Sy,by,ky,wy,$y,Ss,Ey,Ty,Py,Ry,Oy,Cy,Iy,ta=v(()=>{po();ea();tr();Ze=b("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),vy={number:"number",bigint:"bigint",object:"date"},Pl=b("$ZodCheckLessThan",(t,e)=>{Ze.init(t,e);let r=vy[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})}}),Rl=b("$ZodCheckGreaterThan",(t,e)=>{Ze.init(t,e);let r=vy[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})}}),Sy=b("$ZodCheckMultipleOf",(t,e)=>{Ze.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):ul(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})}}),by=b("$ZodCheckNumberFormat",(t,e)=>{Ze.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=fl[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=fy)}),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})}}),ky=b("$ZodCheckMaxLength",(t,e)=>{var r;Ze.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!_s(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=xs(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),wy=b("$ZodCheckMinLength",(t,e)=>{var r;Ze.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!_s(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=xs(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),$y=b("$ZodCheckLengthEquals",(t,e)=>{var r;Ze.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!_s(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=xs(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})}}),Ss=b("$ZodCheckStringFormat",(t,e)=>{var r,n;Ze.init(t,e),t._zod.onattach.push(o=>{let s=o._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=o=>{e.pattern.lastIndex=0,!e.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:e.format,input:o.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),Ey=b("$ZodCheckRegex",(t,e)=>{Ss.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})}}),Ty=b("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=yy),Ss.init(t,e)}),Py=b("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=xy),Ss.init(t,e)}),Ry=b("$ZodCheckIncludes",(t,e)=>{Ze.init(t,e);let r=Nr(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(o=>{let s=o._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=o=>{o.value.includes(e.includes,e.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:o.value,inst:t,continue:!e.abort})}}),Oy=b("$ZodCheckStartsWith",(t,e)=>{Ze.init(t,e);let r=new RegExp(`^${Nr(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),Cy=b("$ZodCheckEndsWith",(t,e)=>{Ze.init(t,e);let r=new RegExp(`.*${Nr(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}}),Iy=b("$ZodCheckOverwrite",(t,e)=>{Ze.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}})});var ra,Ol=v(()=>{ra=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(`
21
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(`
22
- `))}}});var Ny,Ol=b(()=>{Ny={major:4,minor:0,patch:0}});function Gy(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}function mT(t){if(!El.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Gy(r)}function fT(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 zy(t,e,r){t.issues.length&&e.issues.push(...Yt(r,t.issues)),e.value[r]=t.value}function oa(t,e,r){t.issues.length&&e.issues.push(...Yt(r,t.issues)),e.value[r]=t.value}function jy(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(...Yt(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}function My(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>zt(s,n,mt())))}),e}function Cl(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(lo(t)&&lo(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=Cl(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=Cl(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 Dy(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),bn(t))return t;let n=Cl(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 Ly(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}function Fy(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 Zy(t,e,r){return bn(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}function Uy(t){return t.value=Object.freeze(t.value),t}function Hy(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 ue,vs,ge,Il,Al,Nl,zl,jl,Ml,Dl,Ll,Fl,Zl,Ul,qy,By,Vy,Wy,Hl,ql,Bl,Vl,Wl,Gl,Kl,Jl,sa,Yl,Xl,Ql,ed,td,rd,ia,aa,nd,od,sd,id,ad,cd,ud,ld,dd,pd,md,fd,hd,gd,_d,Ky=b(()=>{ra();co();Rl();wl();ta();Xt();Ol();Xt();ue=S("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Ny;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let o of n)for(let s of o._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let o=(s,i,a)=>{let c=bn(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,m=l._zod.check(s);if(m instanceof Promise&&a?.async===!1)throw new fr;if(u||m instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await m,s.issues.length!==d&&(c||(c=bn(s,d)))});else{if(s.issues.length===d)continue;c||(c=bn(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 fr;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=Sn(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return kn(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),vs=S("$ZodString",(t,e)=>{ue.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??my(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}}),ge=S("$ZodStringFormat",(t,e)=>{ys.init(t,e),vs.init(t,e)}),Il=S("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=X_),ge.init(t,e)}),Al=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=$l(n))}else e.pattern??(e.pattern=$l());ge.init(t,e)}),Nl=S("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Q_),ge.init(t,e)}),zl=S("$ZodURL",(t,e)=>{ge.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:iy.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})}}}),jl=S("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=ey()),ge.init(t,e)}),Ml=S("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=J_),ge.init(t,e)}),Dl=S("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=B_),ge.init(t,e)}),Ll=S("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=V_),ge.init(t,e)}),Fl=S("$ZodULID",(t,e)=>{e.pattern??(e.pattern=W_),ge.init(t,e)}),Zl=S("$ZodXID",(t,e)=>{e.pattern??(e.pattern=G_),ge.init(t,e)}),Ul=S("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=K_),ge.init(t,e)}),qy=S("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=py(e)),ge.init(t,e)}),By=S("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=uy),ge.init(t,e)}),Vy=S("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=dy(e)),ge.init(t,e)}),Wy=S("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Y_),ge.init(t,e)}),Hl=S("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=ty),ge.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),ql=S("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=ry),ge.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})}}}),Bl=S("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=ny),ge.init(t,e)}),Vl=S("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=oy),ge.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})}}});Wl=S("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=sy),ge.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Gy(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});Gl=S("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=El),ge.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{mT(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),Kl=S("$ZodE164",(t,e)=>{e.pattern??(e.pattern=ay),ge.init(t,e)});Jl=S("$ZodJWT",(t,e)=>{ge.init(t,e),t._zod.check=r=>{fT(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),sa=S("$ZodNumber",(t,e)=>{ue.init(t,e),t._zod.pattern=t._zod.bag.pattern??hy,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}}),Yl=S("$ZodNumber",(t,e)=>{Sy.init(t,e),sa.init(t,e)}),Xl=S("$ZodBoolean",(t,e)=>{ue.init(t,e),t._zod.pattern=gy,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}}),Ql=S("$ZodNull",(t,e)=>{ue.init(t,e),t._zod.pattern=_y,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)=>{ue.init(t,e),t._zod.parse=r=>r}),td=S("$ZodNever",(t,e)=>{ue.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});rd=S("$ZodArray",(t,e)=>{ue.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=>zy(u,r,i))):zy(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});ia=S("$ZodObject",(t,e)=>{ue.init(t,e);let r=ms(()=>{let d=Object.keys(e.shape);for(let f of d)if(!(e.shape[f]instanceof ue))throw new Error(`Invalid element at key "${f}": expected a Zod schema`);let m=pl(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(m)}});he(t._zod,"propValues",()=>{let d=e.shape,m={};for(let f in d){let p=d[f]._zod;if(p.values){m[f]??(m[f]=new Set);for(let h of p.values)m[f].add(h)}}return m});let n=d=>{let m=new na(["shape","payload","ctx"]),f=r.value,p=y=>{let v=xn(y);return`shape[${v}]._zod.run({ value: input[${v}], issues: [] }, ctx)`};m.write("const input = payload.value;");let h=Object.create(null),g=0;for(let y of f.keys)h[y]=`key_${g++}`;m.write("const newResult = {}");for(let y of f.keys)if(f.optionalKeys.has(y)){let v=h[y];m.write(`const ${v} = ${p(y)};`);let $=xn(y);m.write(`
23
- if (${v}.issues.length) {
24
- if (input[${$}] === undefined) {
25
- if (${$} in input) {
26
- newResult[${$}] = undefined;
21
+ `))}}});var Ny,Cl=v(()=>{Ny={major:4,minor:0,patch:0}});function Gy(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}function TT(t){if(!Tl.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Gy(r)}function PT(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 zy(t,e,r){t.issues.length&&e.issues.push(...er(r,t.issues)),e.value[r]=t.value}function na(t,e,r){t.issues.length&&e.issues.push(...er(r,t.issues)),e.value[r]=t.value}function jy(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(...er(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}function My(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=>Ft(s,n,ht())))}),e}function Il(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(fo(t)&&fo(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=Il(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=Il(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 Dy(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),En(t))return t;let n=Il(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 Ly(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}function Fy(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 Zy(t,e,r){return En(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}function Uy(t){return t.value=Object.freeze(t.value),t}function Hy(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(hl(o))}}var ue,bs,he,Al,Nl,zl,jl,Ml,Dl,Ll,Fl,Zl,Ul,Hl,qy,By,Vy,Wy,ql,Bl,Vl,Wl,Gl,Kl,Jl,Yl,oa,Xl,Ql,ed,td,rd,nd,sa,ia,od,sd,id,ad,cd,ud,ld,dd,pd,md,fd,hd,gd,_d,yd,Ky=v(()=>{ta();po();Ol();$l();ea();tr();Cl();tr();ue=b("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Ny;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=En(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,m=l._zod.check(s);if(m instanceof Promise&&a?.async===!1)throw new gr;if(u||m instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await m,s.issues.length!==d&&(c||(c=En(s,d)))});else{if(s.issues.length===d)continue;c||(c=En(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 gr;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=Tn(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Pn(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),bs=b("$ZodString",(t,e)=>{ue.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??my(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}}),he=b("$ZodStringFormat",(t,e)=>{Ss.init(t,e),bs.init(t,e)}),Al=b("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=X_),he.init(t,e)}),Nl=b("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=El(n))}else e.pattern??(e.pattern=El());he.init(t,e)}),zl=b("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Q_),he.init(t,e)}),jl=b("$ZodURL",(t,e)=>{he.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:iy.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})}}}),Ml=b("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=ey()),he.init(t,e)}),Dl=b("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=J_),he.init(t,e)}),Ll=b("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=B_),he.init(t,e)}),Fl=b("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=V_),he.init(t,e)}),Zl=b("$ZodULID",(t,e)=>{e.pattern??(e.pattern=W_),he.init(t,e)}),Ul=b("$ZodXID",(t,e)=>{e.pattern??(e.pattern=G_),he.init(t,e)}),Hl=b("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=K_),he.init(t,e)}),qy=b("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=py(e)),he.init(t,e)}),By=b("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=uy),he.init(t,e)}),Vy=b("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=dy(e)),he.init(t,e)}),Wy=b("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Y_),he.init(t,e)}),ql=b("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=ty),he.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),Bl=b("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=ry),he.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})}}}),Vl=b("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=ny),he.init(t,e)}),Wl=b("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=oy),he.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})}}});Gl=b("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=sy),he.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Gy(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});Kl=b("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Tl),he.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{TT(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),Jl=b("$ZodE164",(t,e)=>{e.pattern??(e.pattern=ay),he.init(t,e)});Yl=b("$ZodJWT",(t,e)=>{he.init(t,e),t._zod.check=r=>{PT(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),oa=b("$ZodNumber",(t,e)=>{ue.init(t,e),t._zod.pattern=t._zod.bag.pattern??hy,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}}),Xl=b("$ZodNumber",(t,e)=>{by.init(t,e),oa.init(t,e)}),Ql=b("$ZodBoolean",(t,e)=>{ue.init(t,e),t._zod.pattern=gy,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}}),ed=b("$ZodNull",(t,e)=>{ue.init(t,e),t._zod.pattern=_y,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}}),td=b("$ZodUnknown",(t,e)=>{ue.init(t,e),t._zod.parse=r=>r}),rd=b("$ZodNever",(t,e)=>{ue.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});nd=b("$ZodArray",(t,e)=>{ue.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=>zy(u,r,i))):zy(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});sa=b("$ZodObject",(t,e)=>{ue.init(t,e);let r=gs(()=>{let d=Object.keys(e.shape);for(let h of d)if(!(e.shape[h]instanceof ue))throw new Error(`Invalid element at key "${h}": expected a Zod schema`);let m=ml(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(m)}});fe(t._zod,"propValues",()=>{let d=e.shape,m={};for(let h in d){let p=d[h]._zod;if(p.values){m[h]??(m[h]=new Set);for(let f of p.values)m[h].add(f)}}return m});let n=d=>{let m=new ra(["shape","payload","ctx"]),h=r.value,p=y=>{let x=$n(y);return`shape[${x}]._zod.run({ value: input[${x}], issues: [] }, ctx)`};m.write("const input = payload.value;");let f=Object.create(null),g=0;for(let y of h.keys)f[y]=`key_${g++}`;m.write("const newResult = {}");for(let y of h.keys)if(h.optionalKeys.has(y)){let x=f[y];m.write(`const ${x} = ${p(y)};`);let k=$n(y);m.write(`
22
+ if (${x}.issues.length) {
23
+ if (input[${k}] === undefined) {
24
+ if (${k} in input) {
25
+ newResult[${k}] = undefined;
27
26
  }
28
27
  } else {
29
28
  payload.issues = payload.issues.concat(
30
- ${v}.issues.map((iss) => ({
29
+ ${x}.issues.map((iss) => ({
31
30
  ...iss,
32
- path: iss.path ? [${$}, ...iss.path] : [${$}],
31
+ path: iss.path ? [${k}, ...iss.path] : [${k}],
33
32
  }))
34
33
  );
35
34
  }
36
- } else if (${v}.value === undefined) {
37
- if (${$} in input) newResult[${$}] = undefined;
35
+ } else if (${x}.value === undefined) {
36
+ if (${k} in input) newResult[${k}] = undefined;
38
37
  } else {
39
- newResult[${$}] = ${v}.value;
38
+ newResult[${k}] = ${x}.value;
40
39
  }
41
- `)}else{let v=h[y];m.write(`const ${v} = ${p(y)};`),m.write(`
42
- if (${v}.issues.length) payload.issues = payload.issues.concat(${v}.issues.map(iss => ({
40
+ `)}else{let x=f[y];m.write(`const ${x} = ${p(y)};`),m.write(`
41
+ if (${x}.issues.length) payload.issues = payload.issues.concat(${x}.issues.map(iss => ({
43
42
  ...iss,
44
- path: iss.path ? [${xn(y)}, ...iss.path] : [${xn(y)}]
45
- })));`),m.write(`newResult[${xn(y)}] = ${v}.value`)}m.write("payload.value = newResult;"),m.write("return payload;");let _=m.compile();return(y,v)=>_(d,y,v)},o,s=uo,i=!Ki.jitless,c=i&&ll.value,u=e.catchall,l;t._zod.parse=(d,m)=>{l??(l=r.value);let f=d.value;if(!s(f))return d.issues.push({expected:"object",code:"invalid_type",input:f,inst:t}),d;let p=[];if(i&&c&&m?.async===!1&&m.jitless!==!0)o||(o=n(e.shape)),d=o(d,m);else{d.value={};let v=l.shape;for(let $ of l.keys){let T=v[$],J=T._zod.run({value:f[$],issues:[]},m),B=T._zod.optin==="optional"&&T._zod.optout==="optional";J instanceof Promise?p.push(J.then(N=>B?jy(N,d,$,f):oa(N,d,$))):B?jy(J,d,$,f):oa(J,d,$)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,_=u._zod,y=_.def.type;for(let v of Object.keys(f)){if(g.has(v))continue;if(y==="never"){h.push(v);continue}let $=_.run({value:f[v],issues:[]},m);$ instanceof Promise?p.push($.then(T=>oa(T,d,v))):oa($,d,v)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:f,inst:t}),p.length?Promise.all(p).then(()=>d):d}});aa=S("$ZodUnion",(t,e)=>{ue.init(t,e),he(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),he(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),he(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),he(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=>hs(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=>My(i,r,t,n)):My(s,r,t,n)}}),nd=S("$ZodDiscriminatedUnion",(t,e)=>{aa.init(t,e);let r=t._zod.parse;he(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=ms(()=>{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(!uo(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)}}),od=S("$ZodIntersection",(t,e)=>{ue.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])=>Dy(r,c,u)):Dy(r,s,i)}});sd=S("$ZodRecord",(t,e)=>{ue.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!lo(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(...Yt(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Yt(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>zt(u,n,mt())),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(...Yt(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Yt(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}}),id=S("$ZodEnum",(t,e)=>{ue.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"?Cr(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)=>{ue.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Cr(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}}),cd=S("$ZodTransform",(t,e)=>{ue.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 fr;return r.value=o,r}}),ud=S("$ZodOptional",(t,e)=>{ue.init(t,e),t._zod.optin="optional",t._zod.optout="optional",he(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),he(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${hs(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)}),ld=S("$ZodNullable",(t,e)=>{ue.init(t,e),he(t._zod,"optin",()=>e.innerType._zod.optin),he(t._zod,"optout",()=>e.innerType._zod.optout),he(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${hs(r.source)}|null)$`):void 0}),he(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)=>{ue.init(t,e),t._zod.optin="optional",he(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=>Ly(s,e)):Ly(o,e)}});pd=S("$ZodPrefault",(t,e)=>{ue.init(t,e),t._zod.optin="optional",he(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))}),md=S("$ZodNonOptional",(t,e)=>{ue.init(t,e),he(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=>Fy(s,t)):Fy(o,t)}});fd=S("$ZodCatch",(t,e)=>{ue.init(t,e),t._zod.optin="optional",he(t._zod,"optout",()=>e.innerType._zod.optout),he(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>zt(i,n,mt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>zt(s,n,mt()))},input:r.value}),r.issues=[]),r)}}),hd=S("$ZodPipe",(t,e)=>{ue.init(t,e),he(t._zod,"values",()=>e.in._zod.values),he(t._zod,"optin",()=>e.in._zod.optin),he(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=>Zy(s,e,n)):Zy(o,e,n)}});gd=S("$ZodReadonly",(t,e)=>{ue.init(t,e),he(t._zod,"propValues",()=>e.innerType._zod.propValues),he(t._zod,"values",()=>e.innerType._zod.values),he(t._zod,"optin",()=>e.innerType._zod.optin),he(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(Uy):Uy(o)}});_d=S("$ZodCustom",(t,e)=>{Ue.init(t,e),ue.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=>Hy(s,r,n,t));Hy(o,r,n,t)}})});function Jy(){return{localeError:gT()}}var hT,gT,Yy=b(()=>{Xt();hT=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},gT=()=>{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 ${hT(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Xi(n.values[0])}`:`Invalid option: expected one of ${Ji(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":""}: ${Ji(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}}});var ca=b(()=>{});function Xy(){return new xs}var xs,Ir,vd=b(()=>{xs=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)}};Ir=Xy()});function xd(t,e){return new t({type:"string",...F(e)})}function bd(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...F(e)})}function ua(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...F(e)})}function Sd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...F(e)})}function kd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...F(e)})}function wd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...F(e)})}function $d(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...F(e)})}function Ed(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...F(e)})}function Td(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...F(e)})}function Pd(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...F(e)})}function Rd(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...F(e)})}function Od(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...F(e)})}function Cd(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...F(e)})}function Id(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...F(e)})}function Ad(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...F(e)})}function Nd(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...F(e)})}function zd(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...F(e)})}function jd(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...F(e)})}function Md(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...F(e)})}function Dd(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...F(e)})}function Ld(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...F(e)})}function Fd(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...F(e)})}function Zd(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...F(e)})}function Qy(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...F(e)})}function ev(t,e){return new t({type:"string",format:"date",check:"string_format",...F(e)})}function tv(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...F(e)})}function rv(t,e){return new t({type:"string",format:"duration",check:"string_format",...F(e)})}function Ud(t,e){return new t({type:"number",checks:[],...F(e)})}function Hd(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...F(e)})}function qd(t,e){return new t({type:"boolean",...F(e)})}function Bd(t,e){return new t({type:"null",...F(e)})}function Vd(t){return new t({type:"unknown"})}function Wd(t,e){return new t({type:"never",...F(e)})}function la(t,e){return new Tl({check:"less_than",...F(e),value:t,inclusive:!1})}function bs(t,e){return new Tl({check:"less_than",...F(e),value:t,inclusive:!0})}function da(t,e){return new Pl({check:"greater_than",...F(e),value:t,inclusive:!1})}function Ss(t,e){return new Pl({check:"greater_than",...F(e),value:t,inclusive:!0})}function pa(t,e){return new by({check:"multiple_of",...F(e),value:t})}function ma(t,e){return new ky({check:"max_length",...F(e),maximum:t})}function po(t,e){return new wy({check:"min_length",...F(e),minimum:t})}function fa(t,e){return new $y({check:"length_equals",...F(e),length:t})}function Gd(t,e){return new Ey({check:"string_format",format:"regex",...F(e),pattern:t})}function Kd(t){return new Ty({check:"string_format",format:"lowercase",...F(t)})}function Jd(t){return new Py({check:"string_format",format:"uppercase",...F(t)})}function Yd(t,e){return new Ry({check:"string_format",format:"includes",...F(e),includes:t})}function Xd(t,e){return new Oy({check:"string_format",format:"starts_with",...F(e),prefix:t})}function Qd(t,e){return new Cy({check:"string_format",format:"ends_with",...F(e),suffix:t})}function wn(t){return new Iy({check:"overwrite",tx:t})}function ep(t){return wn(e=>e.normalize(t))}function tp(){return wn(t=>t.trim())}function rp(){return wn(t=>t.toLowerCase())}function np(){return wn(t=>t.toUpperCase())}function nv(t,e,r){return new t({type:"array",element:e,...F(r)})}function op(t,e,r){let n=F(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function sp(t,e,r){return new t({type:"custom",check:"custom",fn:e,...F(r)})}var ov=b(()=>{ra();Xt()});var sv=b(()=>{});function ip(t,e){if(t instanceof xs){let n=new ha(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 ha(e);return r.process(t),r.emit(t,e)}function je(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 je(o.element,r);case"object":{for(let s in o.shape)if(je(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(je(s,r))return!0;return!1}case"intersection":return je(o.left,r)||je(o.right,r);case"tuple":{for(let s of o.items)if(je(s,r))return!0;return!!(o.rest&&je(o.rest,r))}case"record":return je(o.keyType,r)||je(o.valueType,r);case"map":return je(o.keyType,r)||je(o.valueType,r);case"set":return je(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return je(o.innerType,r);case"lazy":return je(o.getter(),r);case"default":return je(o.innerType,r);case"prefault":return je(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return je(o.in,r)||je(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var ha,iv=b(()=>{vd();Xt();ha=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Ir,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},m=e._zod.parent;if(m)a.ref=m,this.process(m,d),this.seen.get(m).isParent=!0;else{let f=a.schema;switch(o.type){case"string":{let p=f;p.type="string";let{minimum:h,maximum:g,format:_,patterns:y,contentEncoding:v}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),_&&(p.format=s[_]??_,p.format===""&&delete p.format),v&&(p.contentEncoding=v),y&&y.size>0){let $=[...y];$.length===1?p.pattern=$[0].source:$.length>1&&(a.schema.allOf=[...$.map(T=>({...this.target==="draft-7"?{type:"string"}:{},pattern:T.source}))])}break}case"number":{let p=f,{minimum:h,maximum:g,format:_,multipleOf:y,exclusiveMaximum:v,exclusiveMinimum:$}=e._zod.bag;typeof _=="string"&&_.includes("int")?p.type="integer":p.type="number",typeof $=="number"&&(p.exclusiveMinimum=$),typeof h=="number"&&(p.minimum=h,typeof $=="number"&&($>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof v=="number"&&(p.exclusiveMaximum=v),typeof g=="number"&&(p.maximum=g,typeof v=="number"&&(v<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof y=="number"&&(p.multipleOf=y);break}case"boolean":{let p=f;p.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{f.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{f.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=f,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(p.minItems=h),typeof g=="number"&&(p.maxItems=g),p.type="array",p.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let p=f;p.type="object",p.properties={};let h=o.shape;for(let y in h)p.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 v=o.shape[y]._zod;return this.io==="input"?v.optin===void 0:v.optout===void 0}));_.size>0&&(p.required=Array.from(_)),o.catchall?._zod.def.type==="never"?p.additionalProperties=!1:o.catchall?o.catchall&&(p.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=f;p.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=f,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),_=v=>"allOf"in v&&Object.keys(v).length===1,y=[..._(h)?h.allOf:[h],..._(g)?g.allOf:[g]];p.allOf=y;break}case"tuple":{let p=f;p.type="array";let h=o.items.map((y,v)=>this.process(y,{...d,path:[...d.path,"prefixItems",v]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let y=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=y:p.additionalItems=y}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:_}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof _=="number"&&(p.maxItems=_);break}case"record":{let p=f;p.type="object",p.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let p=f,h=ps(o.entries);h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),p.enum=h;break}case"literal":{let p=f,h=[];for(let g of o.values)if(g===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof g=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(g))}else h.push(g);if(h.length!==0)if(h.length===1){let g=h[0];p.type=g===null?"null":typeof g,p.const=g}else h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),h.every(g=>typeof g=="boolean")&&(p.type="string"),h.every(g=>g===null)&&(p.type="null"),p.enum=h;break}case"file":{let p=f,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:_,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(p,h)):p.anyOf=y.map(v=>({...h,contentMediaType:v})):Object.assign(p,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);f.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=f;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,f.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(f._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}f.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let p=f,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=h.source;break}case"pipe":{let p=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,f.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,d),a.ref=p;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&je(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}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:f+p}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:m,defId:f}=s(l);d.def={...d.schema},f&&(d.defId=f);let p=d.schema;for(let h in p)delete p[h];p.$ref=m};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
43
+ path: iss.path ? [${$n(y)}, ...iss.path] : [${$n(y)}]
44
+ })));`),m.write(`newResult[${$n(y)}] = ${x}.value`)}m.write("payload.value = newResult;"),m.write("return payload;");let _=m.compile();return(y,x)=>_(d,y,x)},o,s=mo,i=!Gi.jitless,c=i&&dl.value,u=e.catchall,l;t._zod.parse=(d,m)=>{l??(l=r.value);let h=d.value;if(!s(h))return d.issues.push({expected:"object",code:"invalid_type",input:h,inst:t}),d;let p=[];if(i&&c&&m?.async===!1&&m.jitless!==!0)o||(o=n(e.shape)),d=o(d,m);else{d.value={};let x=l.shape;for(let k of l.keys){let T=x[k],Z=T._zod.run({value:h[k],issues:[]},m),V=T._zod.optin==="optional"&&T._zod.optout==="optional";Z instanceof Promise?p.push(Z.then(N=>V?jy(N,d,k,h):na(N,d,k))):V?jy(Z,d,k,h):na(Z,d,k)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let f=[],g=l.keySet,_=u._zod,y=_.def.type;for(let x of Object.keys(h)){if(g.has(x))continue;if(y==="never"){f.push(x);continue}let k=_.run({value:h[x],issues:[]},m);k instanceof Promise?p.push(k.then(T=>na(T,d,x))):na(k,d,x)}return f.length&&d.issues.push({code:"unrecognized_keys",keys:f,input:h,inst:t}),p.length?Promise.all(p).then(()=>d):d}});ia=b("$ZodUnion",(t,e)=>{ue.init(t,e),fe(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),fe(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),fe(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),fe(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=>ys(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=>My(i,r,t,n)):My(s,r,t,n)}}),od=b("$ZodDiscriminatedUnion",(t,e)=>{ia.init(t,e);let r=t._zod.parse;fe(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=gs(()=>{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(!mo(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)}}),sd=b("$ZodIntersection",(t,e)=>{ue.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])=>Dy(r,c,u)):Dy(r,s,i)}});id=b("$ZodRecord",(t,e)=>{ue.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!fo(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(...er(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...er(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=>Ft(u,n,ht())),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(...er(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...er(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}}),ad=b("$ZodEnum",(t,e)=>{ue.init(t,e);let r=hs(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>pl.has(typeof n)).map(n=>typeof n=="string"?Nr(n):n.toString()).join("|")})$`),t._zod.parse=(n,o)=>{let s=n.value;return t._zod.values.has(s)||n.issues.push({code:"invalid_value",values:r,input:s,inst:t}),n}}),cd=b("$ZodLiteral",(t,e)=>{ue.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Nr(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let o=r.value;return t._zod.values.has(o)||r.issues.push({code:"invalid_value",values:e.values,input:o,inst:t}),r}}),ud=b("$ZodTransform",(t,e)=>{ue.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 gr;return r.value=o,r}}),ld=b("$ZodOptional",(t,e)=>{ue.init(t,e),t._zod.optin="optional",t._zod.optout="optional",fe(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),fe(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${ys(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)}),dd=b("$ZodNullable",(t,e)=>{ue.init(t,e),fe(t._zod,"optin",()=>e.innerType._zod.optin),fe(t._zod,"optout",()=>e.innerType._zod.optout),fe(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${ys(r.source)}|null)$`):void 0}),fe(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)}),pd=b("$ZodDefault",(t,e)=>{ue.init(t,e),t._zod.optin="optional",fe(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=>Ly(s,e)):Ly(o,e)}});md=b("$ZodPrefault",(t,e)=>{ue.init(t,e),t._zod.optin="optional",fe(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))}),fd=b("$ZodNonOptional",(t,e)=>{ue.init(t,e),fe(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=>Fy(s,t)):Fy(o,t)}});hd=b("$ZodCatch",(t,e)=>{ue.init(t,e),t._zod.optin="optional",fe(t._zod,"optout",()=>e.innerType._zod.optout),fe(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=>Ft(i,n,ht()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>Ft(s,n,ht()))},input:r.value}),r.issues=[]),r)}}),gd=b("$ZodPipe",(t,e)=>{ue.init(t,e),fe(t._zod,"values",()=>e.in._zod.values),fe(t._zod,"optin",()=>e.in._zod.optin),fe(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=>Zy(s,e,n)):Zy(o,e,n)}});_d=b("$ZodReadonly",(t,e)=>{ue.init(t,e),fe(t._zod,"propValues",()=>e.innerType._zod.propValues),fe(t._zod,"values",()=>e.innerType._zod.values),fe(t._zod,"optin",()=>e.innerType._zod.optin),fe(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(Uy):Uy(o)}});yd=b("$ZodCustom",(t,e)=>{Ze.init(t,e),ue.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=>Hy(s,r,n,t));Hy(o,r,n,t)}})});function Jy(){return{localeError:OT()}}var RT,OT,Yy=v(()=>{tr();RT=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},OT=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function e(n){return t[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${RT(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Yi(n.values[0])}`:`Invalid option: expected one of ${Ki(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":""}: ${Ki(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 aa=v(()=>{});function Xy(){return new ks}var ks,zr,vd=v(()=>{ks=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)}};zr=Xy()});function Sd(t,e){return new t({type:"string",...F(e)})}function bd(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...F(e)})}function ca(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...F(e)})}function kd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...F(e)})}function wd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...F(e)})}function $d(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...F(e)})}function Ed(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...F(e)})}function Td(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...F(e)})}function Pd(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...F(e)})}function Rd(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...F(e)})}function Od(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...F(e)})}function Cd(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...F(e)})}function Id(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...F(e)})}function Ad(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...F(e)})}function Nd(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...F(e)})}function zd(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...F(e)})}function jd(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...F(e)})}function Md(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...F(e)})}function Dd(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...F(e)})}function Ld(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...F(e)})}function Fd(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...F(e)})}function Zd(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...F(e)})}function Ud(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...F(e)})}function Qy(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...F(e)})}function ex(t,e){return new t({type:"string",format:"date",check:"string_format",...F(e)})}function tx(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...F(e)})}function rx(t,e){return new t({type:"string",format:"duration",check:"string_format",...F(e)})}function Hd(t,e){return new t({type:"number",checks:[],...F(e)})}function qd(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...F(e)})}function Bd(t,e){return new t({type:"boolean",...F(e)})}function Vd(t,e){return new t({type:"null",...F(e)})}function Wd(t){return new t({type:"unknown"})}function Gd(t,e){return new t({type:"never",...F(e)})}function ua(t,e){return new Pl({check:"less_than",...F(e),value:t,inclusive:!1})}function ws(t,e){return new Pl({check:"less_than",...F(e),value:t,inclusive:!0})}function la(t,e){return new Rl({check:"greater_than",...F(e),value:t,inclusive:!1})}function $s(t,e){return new Rl({check:"greater_than",...F(e),value:t,inclusive:!0})}function da(t,e){return new Sy({check:"multiple_of",...F(e),value:t})}function pa(t,e){return new ky({check:"max_length",...F(e),maximum:t})}function ho(t,e){return new wy({check:"min_length",...F(e),minimum:t})}function ma(t,e){return new $y({check:"length_equals",...F(e),length:t})}function Kd(t,e){return new Ey({check:"string_format",format:"regex",...F(e),pattern:t})}function Jd(t){return new Ty({check:"string_format",format:"lowercase",...F(t)})}function Yd(t){return new Py({check:"string_format",format:"uppercase",...F(t)})}function Xd(t,e){return new Ry({check:"string_format",format:"includes",...F(e),includes:t})}function Qd(t,e){return new Oy({check:"string_format",format:"starts_with",...F(e),prefix:t})}function ep(t,e){return new Cy({check:"string_format",format:"ends_with",...F(e),suffix:t})}function Rn(t){return new Iy({check:"overwrite",tx:t})}function tp(t){return Rn(e=>e.normalize(t))}function rp(){return Rn(t=>t.trim())}function np(){return Rn(t=>t.toLowerCase())}function op(){return Rn(t=>t.toUpperCase())}function nx(t,e,r){return new t({type:"array",element:e,...F(r)})}function sp(t,e,r){let n=F(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function ip(t,e,r){return new t({type:"custom",check:"custom",fn:e,...F(r)})}var ox=v(()=>{ta();tr()});var sx=v(()=>{});function ap(t,e){if(t instanceof ks){let n=new fa(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 fa(e);return r.process(t),r.emit(t,e)}function Me(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 Me(o.element,r);case"object":{for(let s in o.shape)if(Me(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Me(s,r))return!0;return!1}case"intersection":return Me(o.left,r)||Me(o.right,r);case"tuple":{for(let s of o.items)if(Me(s,r))return!0;return!!(o.rest&&Me(o.rest,r))}case"record":return Me(o.keyType,r)||Me(o.valueType,r);case"map":return Me(o.keyType,r)||Me(o.valueType,r);case"set":return Me(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Me(o.innerType,r);case"lazy":return Me(o.getter(),r);case"default":return Me(o.innerType,r);case"prefault":return Me(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Me(o.in,r)||Me(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var fa,ix=v(()=>{vd();tr();fa=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??zr,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},m=e._zod.parent;if(m)a.ref=m,this.process(m,d),this.seen.get(m).isParent=!0;else{let h=a.schema;switch(o.type){case"string":{let p=h;p.type="string";let{minimum:f,maximum:g,format:_,patterns:y,contentEncoding:x}=e._zod.bag;if(typeof f=="number"&&(p.minLength=f),typeof g=="number"&&(p.maxLength=g),_&&(p.format=s[_]??_,p.format===""&&delete p.format),x&&(p.contentEncoding=x),y&&y.size>0){let k=[...y];k.length===1?p.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 p=h,{minimum:f,maximum:g,format:_,multipleOf:y,exclusiveMaximum:x,exclusiveMinimum:k}=e._zod.bag;typeof _=="string"&&_.includes("int")?p.type="integer":p.type="number",typeof k=="number"&&(p.exclusiveMinimum=k),typeof f=="number"&&(p.minimum=f,typeof k=="number"&&(k>=f?delete p.minimum:delete p.exclusiveMinimum)),typeof x=="number"&&(p.exclusiveMaximum=x),typeof g=="number"&&(p.maximum=g,typeof x=="number"&&(x<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof y=="number"&&(p.multipleOf=y);break}case"boolean":{let p=h;p.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{h.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":{h.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=h,{minimum:f,maximum:g}=e._zod.bag;typeof f=="number"&&(p.minItems=f),typeof g=="number"&&(p.maxItems=g),p.type="array",p.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let p=h;p.type="object",p.properties={};let f=o.shape;for(let y in f)p.properties[y]=this.process(f[y],{...d,path:[...d.path,"properties",y]});let g=new Set(Object.keys(f)),_=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&&(p.required=Array.from(_)),o.catchall?._zod.def.type==="never"?p.additionalProperties=!1:o.catchall?o.catchall&&(p.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=h;p.anyOf=o.options.map((f,g)=>this.process(f,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=h,f=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=[..._(f)?f.allOf:[f],..._(g)?g.allOf:[g]];p.allOf=y;break}case"tuple":{let p=h;p.type="array";let f=o.items.map((y,x)=>this.process(y,{...d,path:[...d.path,"prefixItems",x]}));if(this.target==="draft-2020-12"?p.prefixItems=f:p.items=f,o.rest){let y=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=y:p.additionalItems=y}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:_}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof _=="number"&&(p.maxItems=_);break}case"record":{let p=h;p.type="object",p.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let p=h,f=hs(o.entries);f.every(g=>typeof g=="number")&&(p.type="number"),f.every(g=>typeof g=="string")&&(p.type="string"),p.enum=f;break}case"literal":{let p=h,f=[];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");f.push(Number(g))}else f.push(g);if(f.length!==0)if(f.length===1){let g=f[0];p.type=g===null?"null":typeof g,p.const=g}else f.every(g=>typeof g=="number")&&(p.type="number"),f.every(g=>typeof g=="string")&&(p.type="string"),f.every(g=>typeof g=="boolean")&&(p.type="string"),f.every(g=>g===null)&&(p.type="null"),p.enum=f;break}case"file":{let p=h,f={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:_,mime:y}=e._zod.bag;g!==void 0&&(f.minLength=g),_!==void 0&&(f.maxLength=_),y?y.length===1?(f.contentMediaType=y[0],Object.assign(p,f)):p.anyOf=y.map(x=>({...f,contentMediaType:x})):Object.assign(p,f);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);h.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=h;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,h.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(h._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}h.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let p=h,f=e._zod.pattern;if(!f)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=f.source;break}case"pipe":{let p=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,h.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,d),a.ref=p;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&Me(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 f=n.external.registry.get(l[0])?.id,g=n.external.uri??(y=>y);if(f)return{ref:g(f)};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 h=`#/${d}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:h+p}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:m,defId:h}=s(l);d.def={...d.schema},h&&(d.defId=h);let p=d.schema;for(let f in p)delete p[f];p.$ref=m};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
46
45
 
47
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let f=n.external.registry.get(l[0])?.id;if(e!==l[0]&&f){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let m=this.seen.get(l),f=m.def??m.schema,p={...f};if(m.ref===null)return;let h=m.ref;if(m.ref=null,h){a(h,d);let g=this.seen.get(h).schema;g.$ref&&d.target==="draft-7"?(f.allOf=f.allOf??[],f.allOf.push(g)):(Object.assign(f,g),Object.assign(f,p))}m.isParent||this.override({zodSchema:l,jsonSchema:f,path:m.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}}});var av=b(()=>{});var Qe=b(()=>{co();wl();_l();Ky();ra();Ol();Xt();ta();ca();vd();Rl();sv();ov();iv();av()});var ap=b(()=>{Qe()});function cp(t,e){let r={type:"object",get shape(){return ee.assignProp(this,"shape",{...t}),this.shape},...ee.normalizeParams(e)};return new XT(r)}var YT,XT,cv=b(()=>{Qe();Qe();ap();YT=S("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ue.init(t,e),t.def=e,t.parse=(r,n)=>vl(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Sn(t,r,n),t.parseAsync=async(r,n)=>bl(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>kn(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>ft(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))}),XT=S("ZodMiniObject",(t,e)=>{ia.init(t,e),YT.init(t,e),ee.defineLazy(t,"shape",()=>e.shape)})});var uv=b(()=>{});var lv=b(()=>{});var dv=b(()=>{});var pv=b(()=>{Qe();ap();cv();uv();Qe();ca();lv();dv()});var mv=b(()=>{pv()});var up=b(()=>{mv()});function St(t){return!!t._zod}function En(t){let e=Object.values(t);if(e.length===0)return cp({});let r=e.every(St),n=e.every(o=>!St(o));if(r)return cp(t);if(n)return ol(t);throw new Error("Mixed Zod versions detected in object shape.")}function Ar(t,e){return St(t)?Sn(t,e):t.safeParse(e)}async function ga(t,e){return St(t)?await kn(t,e):await t.safeParseAsync(e)}function Nr(t){if(!t)return;let e;if(St(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function mo(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 En(t)}}if(St(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 _a(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 hv(t){return t.description}function gv(t){if(St(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function ya(t){if(St(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 ks=b(()=>{ls();up()});var lp=b(()=>{Qe()});var ws={};Le(ws,{ZodISODate:()=>yv,ZodISODateTime:()=>_v,ZodISODuration:()=>xv,ZodISOTime:()=>vv,date:()=>pp,datetime:()=>dp,duration:()=>fp,time:()=>mp});function dp(t){return Qy(_v,t)}function pp(t){return ev(yv,t)}function mp(t){return tv(vv,t)}function fp(t){return rv(xv,t)}var _v,yv,vv,xv,hp=b(()=>{Qe();gp();_v=S("ZodISODateTime",(t,e)=>{qy.init(t,e),ke.init(t,e)});yv=S("ZodISODate",(t,e)=>{By.init(t,e),ke.init(t,e)});vv=S("ZodISOTime",(t,e)=>{Vy.init(t,e),ke.init(t,e)});xv=S("ZodISODuration",(t,e)=>{Wy.init(t,e),ke.init(t,e)})});var bv,Y2,$s,_p=b(()=>{Qe();Qe();bv=(t,e)=>{Qi.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>gl(t,r)},flatten:{value:r=>hl(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},Y2=S("ZodError",bv),$s=S("ZodError",bv,{Parent:Error})});var Sv,kv,wv,$v,yp=b(()=>{Qe();_p();Sv=yl($s),kv=xl($s),wv=Sl($s),$v=kl($s)});function x(t){return xd(cP,t)}function ae(t){return Ud(Ov,t)}function Tv(t){return Hd(EP,t)}function De(t){return qd(TP,t)}function Cv(t){return Bd(PP,t)}function we(){return Vd(RP)}function CP(t){return Wd(OP,t)}function te(t,e){return nv(IP,t,e)}function C(t,e){let r={type:"object",get shape(){return ee.assignProp(this,"shape",{...t}),this.shape},...ee.normalizeParams(e)};return new Iv(r)}function et(t,e){return new Iv({type:"object",get shape(){return ee.assignProp(this,"shape",{...t}),this.shape},catchall:we(),...ee.normalizeParams(e)})}function ye(t,e){return new Av({type:"union",options:t,...ee.normalizeParams(e)})}function bp(t,e,r){return new AP({type:"union",options:e,discriminator:t,...ee.normalizeParams(r)})}function xa(t,e){return new NP({type:"intersection",left:t,right:e})}function _e(t,e,r){return new zP({type:"record",keyType:t,valueType:e,...ee.normalizeParams(r)})}function at(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new vp({type:"enum",entries:r,...ee.normalizeParams(e)})}function j(t,e){return new jP({type:"literal",values:Array.isArray(t)?t:[t],...ee.normalizeParams(e)})}function Nv(t){return new MP({type:"transform",transform:t})}function $e(t){return new zv({type:"optional",innerType:t})}function Pv(t){return new DP({type:"nullable",innerType:t})}function FP(t,e){return new LP({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function UP(t,e){return new ZP({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function HP(t,e){return new jv({type:"nonoptional",innerType:t,...ee.normalizeParams(e)})}function BP(t,e){return new qP({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}function xp(t,e){return new VP({type:"pipe",in:t,out:e})}function GP(t){return new WP({type:"readonly",innerType:t})}function KP(t){let e=new Ue({check:"custom"});return e._zod.check=t,e}function Dv(t,e){return op(Mv,t??(()=>!0),e)}function JP(t,e={}){return sp(Mv,t,e)}function YP(t){let e=KP(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(ee.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(ee.issue(o))}},t(r.value,r)));return e}function Sp(t,e){return xp(Nv(t),e)}var Te,Rv,cP,ke,uP,Ev,va,lP,dP,pP,mP,fP,hP,gP,_P,yP,vP,xP,bP,SP,kP,wP,$P,Ov,EP,TP,PP,RP,OP,IP,Iv,Av,AP,NP,zP,vp,jP,MP,zv,DP,LP,ZP,jv,qP,VP,WP,Mv,gp=b(()=>{Qe();Qe();lp();hp();yp();Te=S("ZodType",(t,e)=>(ue.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)=>ft(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>Sv(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>wv(t,r,n),t.parseAsync=async(r,n)=>kv(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>$v(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(JP(r,n)),t.superRefine=r=>t.check(YP(r)),t.overwrite=r=>t.check(wn(r)),t.optional=()=>$e(t),t.nullable=()=>Pv(t),t.nullish=()=>$e(Pv(t)),t.nonoptional=r=>HP(t,r),t.array=()=>te(t),t.or=r=>ye([t,r]),t.and=r=>xa(t,r),t.transform=r=>xp(t,Nv(r)),t.default=r=>FP(t,r),t.prefault=r=>UP(t,r),t.catch=r=>BP(t,r),t.pipe=r=>xp(t,r),t.readonly=()=>GP(t),t.describe=r=>{let n=t.clone();return Ir.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Ir.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Ir.get(t);let n=t.clone();return Ir.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),Rv=S("_ZodString",(t,e)=>{vs.init(t,e),Te.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(Gd(...n)),t.includes=(...n)=>t.check(Yd(...n)),t.startsWith=(...n)=>t.check(Xd(...n)),t.endsWith=(...n)=>t.check(Qd(...n)),t.min=(...n)=>t.check(po(...n)),t.max=(...n)=>t.check(ma(...n)),t.length=(...n)=>t.check(fa(...n)),t.nonempty=(...n)=>t.check(po(1,...n)),t.lowercase=n=>t.check(Kd(n)),t.uppercase=n=>t.check(Jd(n)),t.trim=()=>t.check(tp()),t.normalize=(...n)=>t.check(ep(...n)),t.toLowerCase=()=>t.check(rp()),t.toUpperCase=()=>t.check(np())}),cP=S("ZodString",(t,e)=>{vs.init(t,e),Rv.init(t,e),t.email=r=>t.check(bd(uP,r)),t.url=r=>t.check(Ed(lP,r)),t.jwt=r=>t.check(Zd($P,r)),t.emoji=r=>t.check(Td(dP,r)),t.guid=r=>t.check(ua(Ev,r)),t.uuid=r=>t.check(Sd(va,r)),t.uuidv4=r=>t.check(kd(va,r)),t.uuidv6=r=>t.check(wd(va,r)),t.uuidv7=r=>t.check($d(va,r)),t.nanoid=r=>t.check(Pd(pP,r)),t.guid=r=>t.check(ua(Ev,r)),t.cuid=r=>t.check(Rd(mP,r)),t.cuid2=r=>t.check(Od(fP,r)),t.ulid=r=>t.check(Cd(hP,r)),t.base64=r=>t.check(Dd(SP,r)),t.base64url=r=>t.check(Ld(kP,r)),t.xid=r=>t.check(Id(gP,r)),t.ksuid=r=>t.check(Ad(_P,r)),t.ipv4=r=>t.check(Nd(yP,r)),t.ipv6=r=>t.check(zd(vP,r)),t.cidrv4=r=>t.check(jd(xP,r)),t.cidrv6=r=>t.check(Md(bP,r)),t.e164=r=>t.check(Fd(wP,r)),t.datetime=r=>t.check(dp(r)),t.date=r=>t.check(pp(r)),t.time=r=>t.check(mp(r)),t.duration=r=>t.check(fp(r))});ke=S("ZodStringFormat",(t,e)=>{ge.init(t,e),Rv.init(t,e)}),uP=S("ZodEmail",(t,e)=>{Nl.init(t,e),ke.init(t,e)}),Ev=S("ZodGUID",(t,e)=>{Il.init(t,e),ke.init(t,e)}),va=S("ZodUUID",(t,e)=>{Al.init(t,e),ke.init(t,e)}),lP=S("ZodURL",(t,e)=>{zl.init(t,e),ke.init(t,e)}),dP=S("ZodEmoji",(t,e)=>{jl.init(t,e),ke.init(t,e)}),pP=S("ZodNanoID",(t,e)=>{Ml.init(t,e),ke.init(t,e)}),mP=S("ZodCUID",(t,e)=>{Dl.init(t,e),ke.init(t,e)}),fP=S("ZodCUID2",(t,e)=>{Ll.init(t,e),ke.init(t,e)}),hP=S("ZodULID",(t,e)=>{Fl.init(t,e),ke.init(t,e)}),gP=S("ZodXID",(t,e)=>{Zl.init(t,e),ke.init(t,e)}),_P=S("ZodKSUID",(t,e)=>{Ul.init(t,e),ke.init(t,e)}),yP=S("ZodIPv4",(t,e)=>{Hl.init(t,e),ke.init(t,e)}),vP=S("ZodIPv6",(t,e)=>{ql.init(t,e),ke.init(t,e)}),xP=S("ZodCIDRv4",(t,e)=>{Bl.init(t,e),ke.init(t,e)}),bP=S("ZodCIDRv6",(t,e)=>{Vl.init(t,e),ke.init(t,e)}),SP=S("ZodBase64",(t,e)=>{Wl.init(t,e),ke.init(t,e)}),kP=S("ZodBase64URL",(t,e)=>{Gl.init(t,e),ke.init(t,e)}),wP=S("ZodE164",(t,e)=>{Kl.init(t,e),ke.init(t,e)}),$P=S("ZodJWT",(t,e)=>{Jl.init(t,e),ke.init(t,e)}),Ov=S("ZodNumber",(t,e)=>{sa.init(t,e),Te.init(t,e),t.gt=(n,o)=>t.check(da(n,o)),t.gte=(n,o)=>t.check(Ss(n,o)),t.min=(n,o)=>t.check(Ss(n,o)),t.lt=(n,o)=>t.check(la(n,o)),t.lte=(n,o)=>t.check(bs(n,o)),t.max=(n,o)=>t.check(bs(n,o)),t.int=n=>t.check(Tv(n)),t.safe=n=>t.check(Tv(n)),t.positive=n=>t.check(da(0,n)),t.nonnegative=n=>t.check(Ss(0,n)),t.negative=n=>t.check(la(0,n)),t.nonpositive=n=>t.check(bs(0,n)),t.multipleOf=(n,o)=>t.check(pa(n,o)),t.step=(n,o)=>t.check(pa(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});EP=S("ZodNumberFormat",(t,e)=>{Yl.init(t,e),Ov.init(t,e)});TP=S("ZodBoolean",(t,e)=>{Xl.init(t,e),Te.init(t,e)});PP=S("ZodNull",(t,e)=>{Ql.init(t,e),Te.init(t,e)});RP=S("ZodUnknown",(t,e)=>{ed.init(t,e),Te.init(t,e)});OP=S("ZodNever",(t,e)=>{td.init(t,e),Te.init(t,e)});IP=S("ZodArray",(t,e)=>{rd.init(t,e),Te.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(po(r,n)),t.nonempty=r=>t.check(po(1,r)),t.max=(r,n)=>t.check(ma(r,n)),t.length=(r,n)=>t.check(fa(r,n)),t.unwrap=()=>t.element});Iv=S("ZodObject",(t,e)=>{ia.init(t,e),Te.init(t,e),ee.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>at(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:we()}),t.loose=()=>t.clone({...t._zod.def,catchall:we()}),t.strict=()=>t.clone({...t._zod.def,catchall:CP()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>ee.extend(t,r),t.merge=r=>ee.merge(t,r),t.pick=r=>ee.pick(t,r),t.omit=r=>ee.omit(t,r),t.partial=(...r)=>ee.partial(zv,t,r[0]),t.required=(...r)=>ee.required(jv,t,r[0])});Av=S("ZodUnion",(t,e)=>{aa.init(t,e),Te.init(t,e),t.options=e.options});AP=S("ZodDiscriminatedUnion",(t,e)=>{Av.init(t,e),nd.init(t,e)});NP=S("ZodIntersection",(t,e)=>{od.init(t,e),Te.init(t,e)});zP=S("ZodRecord",(t,e)=>{sd.init(t,e),Te.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});vp=S("ZodEnum",(t,e)=>{id.init(t,e),Te.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 vp({...e,checks:[],...ee.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 vp({...e,checks:[],...ee.normalizeParams(o),entries:s})}});jP=S("ZodLiteral",(t,e)=>{ad.init(t,e),Te.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]}})});MP=S("ZodTransform",(t,e)=>{cd.init(t,e),Te.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(ee.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(ee.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});zv=S("ZodOptional",(t,e)=>{ud.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});DP=S("ZodNullable",(t,e)=>{ld.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});LP=S("ZodDefault",(t,e)=>{dd.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});ZP=S("ZodPrefault",(t,e)=>{pd.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});jv=S("ZodNonOptional",(t,e)=>{md.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});qP=S("ZodCatch",(t,e)=>{fd.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});VP=S("ZodPipe",(t,e)=>{hd.init(t,e),Te.init(t,e),t.in=e.in,t.out=e.out});WP=S("ZodReadonly",(t,e)=>{gd.init(t,e),Te.init(t,e)});Mv=S("ZodCustom",(t,e)=>{_d.init(t,e),Te.init(t,e)})});var Lv=b(()=>{});var Fv=b(()=>{});var Zv=b(()=>{Qe();gp();lp();_p();yp();Lv();Qe();Yy();ca();hp();Fv();mt(Jy())});var Uv=b(()=>{Zv()});var Hv=b(()=>{Uv()});function ix(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function ax(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var wp,qv,zr,Sa,Me,Bv,Vv,mF,eR,tR,$p,ht,Es,Wv,He,kt,wt,qe,ka,Gv,Ep,Kv,Jv,Tp,Ts,D,Pp,Yv,Xv,fF,wa,rR,$a,nR,Ps,fo,Qv,oR,sR,iR,aR,cR,uR,Rp,lR,dR,Op,Ea,pR,mR,Ta,fR,Rs,Os,hR,Cs,ho,gR,Is,Pa,Ra,Oa,hF,Ca,Ia,Aa,ex,tx,rx,Cp,nx,As,go,ox,_R,_o,yR,yo,vR,Ip,xR,Na,bR,SR,kR,wR,$R,ER,TR,PR,RR,OR,vo,CR,IR,za,Ap,Np,zp,AR,NR,zR,jp,jR,MR,DR,LR,FR,sx,ja,ZR,Ma,gF,UR,xo,HR,_F,Ns,qR,Mp,BR,VR,WR,GR,KR,JR,YR,ba,XR,QR,eO,zs,Dp,tO,rO,nO,oO,sO,iO,aO,cO,uO,lO,dO,pO,mO,fO,hO,gO,_O,yO,bo,vO,xO,bO,Da,SO,kO,wO,Lp,$O,yF,vF,xF,bF,SF,kF,z,kp,Tn=b(()=>{Hv();wp="2025-11-25",qv=[wp,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],zr="io.modelcontextprotocol/related-task",Sa="2.0",Me=Dv(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Bv=ye([x(),ae().int()]),Vv=x(),mF=et({ttl:ae().optional(),pollInterval:ae().optional()}),eR=C({ttl:ae().optional()}),tR=C({taskId:x()}),$p=et({progressToken:Bv.optional(),[zr]:tR.optional()}),ht=C({_meta:$p.optional()}),Es=ht.extend({task:eR.optional()}),Wv=t=>Es.safeParse(t).success,He=C({method:x(),params:ht.loose().optional()}),kt=C({_meta:$p.optional()}),wt=C({method:x(),params:kt.loose().optional()}),qe=et({_meta:$p.optional()}),ka=ye([x(),ae().int()]),Gv=C({jsonrpc:j(Sa),id:ka,...He.shape}).strict(),Ep=t=>Gv.safeParse(t).success,Kv=C({jsonrpc:j(Sa),...wt.shape}).strict(),Jv=t=>Kv.safeParse(t).success,Tp=C({jsonrpc:j(Sa),id:ka,result:qe}).strict(),Ts=t=>Tp.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"})(D||(D={}));Pp=C({jsonrpc:j(Sa),id:ka.optional(),error:C({code:ae().int(),message:x(),data:we().optional()})}).strict(),Yv=t=>Pp.safeParse(t).success,Xv=ye([Gv,Kv,Tp,Pp]),fF=ye([Tp,Pp]),wa=qe.strict(),rR=kt.extend({requestId:ka.optional(),reason:x().optional()}),$a=wt.extend({method:j("notifications/cancelled"),params:rR}),nR=C({src:x(),mimeType:x().optional(),sizes:te(x()).optional(),theme:at(["light","dark"]).optional()}),Ps=C({icons:te(nR).optional()}),fo=C({name:x(),title:x().optional()}),Qv=fo.extend({...fo.shape,...Ps.shape,version:x(),websiteUrl:x().optional(),description:x().optional()}),oR=xa(C({applyDefaults:De().optional()}),_e(x(),we())),sR=Sp(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,xa(C({form:oR.optional(),url:Me.optional()}),_e(x(),we()).optional())),iR=et({list:Me.optional(),cancel:Me.optional(),requests:et({sampling:et({createMessage:Me.optional()}).optional(),elicitation:et({create:Me.optional()}).optional()}).optional()}),aR=et({list:Me.optional(),cancel:Me.optional(),requests:et({tools:et({call:Me.optional()}).optional()}).optional()}),cR=C({experimental:_e(x(),Me).optional(),sampling:C({context:Me.optional(),tools:Me.optional()}).optional(),elicitation:sR.optional(),roots:C({listChanged:De().optional()}).optional(),tasks:iR.optional(),extensions:_e(x(),Me).optional()}),uR=ht.extend({protocolVersion:x(),capabilities:cR,clientInfo:Qv}),Rp=He.extend({method:j("initialize"),params:uR}),lR=C({experimental:_e(x(),Me).optional(),logging:Me.optional(),completions:Me.optional(),prompts:C({listChanged:De().optional()}).optional(),resources:C({subscribe:De().optional(),listChanged:De().optional()}).optional(),tools:C({listChanged:De().optional()}).optional(),tasks:aR.optional(),extensions:_e(x(),Me).optional()}),dR=qe.extend({protocolVersion:x(),capabilities:lR,serverInfo:Qv,instructions:x().optional()}),Op=wt.extend({method:j("notifications/initialized"),params:kt.optional()}),Ea=He.extend({method:j("ping"),params:ht.optional()}),pR=C({progress:ae(),total:$e(ae()),message:$e(x())}),mR=C({...kt.shape,...pR.shape,progressToken:Bv}),Ta=wt.extend({method:j("notifications/progress"),params:mR}),fR=ht.extend({cursor:Vv.optional()}),Rs=He.extend({params:fR.optional()}),Os=qe.extend({nextCursor:Vv.optional()}),hR=at(["working","input_required","completed","failed","cancelled"]),Cs=C({taskId:x(),status:hR,ttl:ye([ae(),Cv()]),createdAt:x(),lastUpdatedAt:x(),pollInterval:$e(ae()),statusMessage:$e(x())}),ho=qe.extend({task:Cs}),gR=kt.merge(Cs),Is=wt.extend({method:j("notifications/tasks/status"),params:gR}),Pa=He.extend({method:j("tasks/get"),params:ht.extend({taskId:x()})}),Ra=qe.merge(Cs),Oa=He.extend({method:j("tasks/result"),params:ht.extend({taskId:x()})}),hF=qe.loose(),Ca=Rs.extend({method:j("tasks/list")}),Ia=Os.extend({tasks:te(Cs)}),Aa=He.extend({method:j("tasks/cancel"),params:ht.extend({taskId:x()})}),ex=qe.merge(Cs),tx=C({uri:x(),mimeType:$e(x()),_meta:_e(x(),we()).optional()}),rx=tx.extend({text:x()}),Cp=x().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),nx=tx.extend({blob:Cp}),As=at(["user","assistant"]),go=C({audience:te(As).optional(),priority:ae().min(0).max(1).optional(),lastModified:ws.datetime({offset:!0}).optional()}),ox=C({...fo.shape,...Ps.shape,uri:x(),description:$e(x()),mimeType:$e(x()),size:$e(ae()),annotations:go.optional(),_meta:$e(et({}))}),_R=C({...fo.shape,...Ps.shape,uriTemplate:x(),description:$e(x()),mimeType:$e(x()),annotations:go.optional(),_meta:$e(et({}))}),_o=Rs.extend({method:j("resources/list")}),yR=Os.extend({resources:te(ox)}),yo=Rs.extend({method:j("resources/templates/list")}),vR=Os.extend({resourceTemplates:te(_R)}),Ip=ht.extend({uri:x()}),xR=Ip,Na=He.extend({method:j("resources/read"),params:xR}),bR=qe.extend({contents:te(ye([rx,nx]))}),SR=wt.extend({method:j("notifications/resources/list_changed"),params:kt.optional()}),kR=Ip,wR=He.extend({method:j("resources/subscribe"),params:kR}),$R=Ip,ER=He.extend({method:j("resources/unsubscribe"),params:$R}),TR=kt.extend({uri:x()}),PR=wt.extend({method:j("notifications/resources/updated"),params:TR}),RR=C({name:x(),description:$e(x()),required:$e(De())}),OR=C({...fo.shape,...Ps.shape,description:$e(x()),arguments:$e(te(RR)),_meta:$e(et({}))}),vo=Rs.extend({method:j("prompts/list")}),CR=Os.extend({prompts:te(OR)}),IR=ht.extend({name:x(),arguments:_e(x(),x()).optional()}),za=He.extend({method:j("prompts/get"),params:IR}),Ap=C({type:j("text"),text:x(),annotations:go.optional(),_meta:_e(x(),we()).optional()}),Np=C({type:j("image"),data:Cp,mimeType:x(),annotations:go.optional(),_meta:_e(x(),we()).optional()}),zp=C({type:j("audio"),data:Cp,mimeType:x(),annotations:go.optional(),_meta:_e(x(),we()).optional()}),AR=C({type:j("tool_use"),name:x(),id:x(),input:_e(x(),we()),_meta:_e(x(),we()).optional()}),NR=C({type:j("resource"),resource:ye([rx,nx]),annotations:go.optional(),_meta:_e(x(),we()).optional()}),zR=ox.extend({type:j("resource_link")}),jp=ye([Ap,Np,zp,zR,NR]),jR=C({role:As,content:jp}),MR=qe.extend({description:x().optional(),messages:te(jR)}),DR=wt.extend({method:j("notifications/prompts/list_changed"),params:kt.optional()}),LR=C({title:x().optional(),readOnlyHint:De().optional(),destructiveHint:De().optional(),idempotentHint:De().optional(),openWorldHint:De().optional()}),FR=C({taskSupport:at(["required","optional","forbidden"]).optional()}),sx=C({...fo.shape,...Ps.shape,description:x().optional(),inputSchema:C({type:j("object"),properties:_e(x(),Me).optional(),required:te(x()).optional()}).catchall(we()),outputSchema:C({type:j("object"),properties:_e(x(),Me).optional(),required:te(x()).optional()}).catchall(we()).optional(),annotations:LR.optional(),execution:FR.optional(),_meta:_e(x(),we()).optional()}),ja=Rs.extend({method:j("tools/list")}),ZR=Os.extend({tools:te(sx)}),Ma=qe.extend({content:te(jp).default([]),structuredContent:_e(x(),we()).optional(),isError:De().optional()}),gF=Ma.or(qe.extend({toolResult:we()})),UR=Es.extend({name:x(),arguments:_e(x(),we()).optional()}),xo=He.extend({method:j("tools/call"),params:UR}),HR=wt.extend({method:j("notifications/tools/list_changed"),params:kt.optional()}),_F=C({autoRefresh:De().default(!0),debounceMs:ae().int().nonnegative().default(300)}),Ns=at(["debug","info","notice","warning","error","critical","alert","emergency"]),qR=ht.extend({level:Ns}),Mp=He.extend({method:j("logging/setLevel"),params:qR}),BR=kt.extend({level:Ns,logger:x().optional(),data:we()}),VR=wt.extend({method:j("notifications/message"),params:BR}),WR=C({name:x().optional()}),GR=C({hints:te(WR).optional(),costPriority:ae().min(0).max(1).optional(),speedPriority:ae().min(0).max(1).optional(),intelligencePriority:ae().min(0).max(1).optional()}),KR=C({mode:at(["auto","required","none"]).optional()}),JR=C({type:j("tool_result"),toolUseId:x().describe("The unique identifier for the corresponding tool call."),content:te(jp).default([]),structuredContent:C({}).loose().optional(),isError:De().optional(),_meta:_e(x(),we()).optional()}),YR=bp("type",[Ap,Np,zp]),ba=bp("type",[Ap,Np,zp,AR,JR]),XR=C({role:As,content:ye([ba,te(ba)]),_meta:_e(x(),we()).optional()}),QR=Es.extend({messages:te(XR),modelPreferences:GR.optional(),systemPrompt:x().optional(),includeContext:at(["none","thisServer","allServers"]).optional(),temperature:ae().optional(),maxTokens:ae().int(),stopSequences:te(x()).optional(),metadata:Me.optional(),tools:te(sx).optional(),toolChoice:KR.optional()}),eO=He.extend({method:j("sampling/createMessage"),params:QR}),zs=qe.extend({model:x(),stopReason:$e(at(["endTurn","stopSequence","maxTokens"]).or(x())),role:As,content:YR}),Dp=qe.extend({model:x(),stopReason:$e(at(["endTurn","stopSequence","maxTokens","toolUse"]).or(x())),role:As,content:ye([ba,te(ba)])}),tO=C({type:j("boolean"),title:x().optional(),description:x().optional(),default:De().optional()}),rO=C({type:j("string"),title:x().optional(),description:x().optional(),minLength:ae().optional(),maxLength:ae().optional(),format:at(["email","uri","date","date-time"]).optional(),default:x().optional()}),nO=C({type:at(["number","integer"]),title:x().optional(),description:x().optional(),minimum:ae().optional(),maximum:ae().optional(),default:ae().optional()}),oO=C({type:j("string"),title:x().optional(),description:x().optional(),enum:te(x()),default:x().optional()}),sO=C({type:j("string"),title:x().optional(),description:x().optional(),oneOf:te(C({const:x(),title:x()})),default:x().optional()}),iO=C({type:j("string"),title:x().optional(),description:x().optional(),enum:te(x()),enumNames:te(x()).optional(),default:x().optional()}),aO=ye([oO,sO]),cO=C({type:j("array"),title:x().optional(),description:x().optional(),minItems:ae().optional(),maxItems:ae().optional(),items:C({type:j("string"),enum:te(x())}),default:te(x()).optional()}),uO=C({type:j("array"),title:x().optional(),description:x().optional(),minItems:ae().optional(),maxItems:ae().optional(),items:C({anyOf:te(C({const:x(),title:x()}))}),default:te(x()).optional()}),lO=ye([cO,uO]),dO=ye([iO,aO,lO]),pO=ye([dO,tO,rO,nO]),mO=Es.extend({mode:j("form").optional(),message:x(),requestedSchema:C({type:j("object"),properties:_e(x(),pO),required:te(x()).optional()})}),fO=Es.extend({mode:j("url"),message:x(),elicitationId:x(),url:x().url()}),hO=ye([mO,fO]),gO=He.extend({method:j("elicitation/create"),params:hO}),_O=kt.extend({elicitationId:x()}),yO=wt.extend({method:j("notifications/elicitation/complete"),params:_O}),bo=qe.extend({action:at(["accept","decline","cancel"]),content:Sp(t=>t===null?void 0:t,_e(x(),ye([x(),ae(),De(),te(x())])).optional())}),vO=C({type:j("ref/resource"),uri:x()}),xO=C({type:j("ref/prompt"),name:x()}),bO=ht.extend({ref:ye([xO,vO]),argument:C({name:x(),value:x()}),context:C({arguments:_e(x(),x()).optional()}).optional()}),Da=He.extend({method:j("completion/complete"),params:bO});SO=qe.extend({completion:et({values:te(x()).max(100),total:$e(ae().int()),hasMore:$e(De())})}),kO=C({uri:x().startsWith("file://"),name:x().optional(),_meta:_e(x(),we()).optional()}),wO=He.extend({method:j("roots/list"),params:ht.optional()}),Lp=qe.extend({roots:te(kO)}),$O=wt.extend({method:j("notifications/roots/list_changed"),params:kt.optional()}),yF=ye([Ea,Rp,Da,Mp,za,vo,_o,yo,Na,wR,ER,xo,ja,Pa,Oa,Ca,Aa]),vF=ye([$a,Ta,Op,$O,Is]),xF=ye([wa,zs,Dp,bo,Lp,Ra,Ia,ho]),bF=ye([Ea,eO,gO,wO,Pa,Oa,Ca,Aa]),SF=ye([$a,Ta,VR,PR,SR,HR,DR,Is,yO]),kF=ye([wa,dR,SO,MR,CR,yR,vR,bR,Ma,ZR,Ra,Ia,ho]),z=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===D.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new kp(o.elicitations,r)}return new t(e,r,n)}},kp=class extends z{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(D.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}}});function jr(t){return t==="completed"||t==="failed"||t==="cancelled"}var cx=b(()=>{});var lx,ux,dx,La=b(()=>{lx=Symbol("Let zodToJsonSchema decide on which parser to use"),ux={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"},dx=t=>typeof t=="string"?{...ux,name:t}:{...ux,...t}});var px,Fp=b(()=>{La();px=t=>{let e=dx(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 Zp(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function re(t,e,r,n,o){t[e]=r,Zp(t,e,n,o)}var Mr=b(()=>{});var Fa,Za=b(()=>{Fa=(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 Ee(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?Fa(e,t.currentPath):e.join("/")}}var $t=b(()=>{Za()});function mx(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==w.ZodAny&&(r.items=Z(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&re(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&re(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(re(r,"minItems",t.exactLength.value,t.exactLength.message,e),re(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}var Up=b(()=>{ls();Mr();Ae()});function fx(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?re(r,"minimum",n.value,n.message,e):re(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),re(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?re(r,"maximum",n.value,n.message,e):re(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),re(r,"maximum",n.value,n.message,e));break;case"multipleOf":re(r,"multipleOf",n.value,n.message,e);break}return r}var Hp=b(()=>{Mr()});function hx(){return{type:"boolean"}}var qp=b(()=>{});function Ua(t,e){return Z(t.type._def,e)}var Ha=b(()=>{Ae()});var gx,Bp=b(()=>{Ae();gx=(t,e)=>Z(t.innerType._def,e)});function Vp(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Vp(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 EO(t,e)}}var EO,Wp=b(()=>{Mr();EO=(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":re(r,"minimum",n.value,n.message,e);break;case"max":re(r,"maximum",n.value,n.message,e);break}return r}});function _x(t,e){return{...Z(t.innerType._def,e),default:t.defaultValue()}}var Gp=b(()=>{Ae()});function yx(t,e){return e.effectStrategy==="input"?Z(t.schema._def,e):Ee(e)}var Kp=b(()=>{Ae();$t()});function vx(t){return{type:"string",enum:Array.from(t.values)}}var Jp=b(()=>{});function xx(t,e){let r=[Z(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),Z(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(TO(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 TO,Yp=b(()=>{Ae();TO=t=>"type"in t&&t.type==="string"?!1:"allOf"in t});function bx(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 Xp=b(()=>{});function qa(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":re(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":re(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":Mt(r,"email",n.message,e);break;case"format:idn-email":Mt(r,"idn-email",n.message,e);break;case"pattern:zod":tt(r,jt.email,n.message,e);break}break;case"url":Mt(r,"uri",n.message,e);break;case"uuid":Mt(r,"uuid",n.message,e);break;case"regex":tt(r,n.regex,n.message,e);break;case"cuid":tt(r,jt.cuid,n.message,e);break;case"cuid2":tt(r,jt.cuid2,n.message,e);break;case"startsWith":tt(r,RegExp(`^${em(n.value,e)}`),n.message,e);break;case"endsWith":tt(r,RegExp(`${em(n.value,e)}$`),n.message,e);break;case"datetime":Mt(r,"date-time",n.message,e);break;case"date":Mt(r,"date",n.message,e);break;case"time":Mt(r,"time",n.message,e);break;case"duration":Mt(r,"duration",n.message,e);break;case"length":re(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),re(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{tt(r,RegExp(em(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&Mt(r,"ipv4",n.message,e),n.version!=="v4"&&Mt(r,"ipv6",n.message,e);break}case"base64url":tt(r,jt.base64url,n.message,e);break;case"jwt":tt(r,jt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&tt(r,jt.ipv4Cidr,n.message,e),n.version!=="v4"&&tt(r,jt.ipv6Cidr,n.message,e);break}case"emoji":tt(r,jt.emoji(),n.message,e);break;case"ulid":{tt(r,jt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{Mt(r,"binary",n.message,e);break}case"contentEncoding:base64":{re(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{tt(r,jt.base64,n.message,e);break}}break}case"nanoid":tt(r,jt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function em(t,e){return e.patternStrategy==="escape"?RO(t):t}function RO(t){let e="";for(let r=0;r<t.length;r++)PO.has(t[r])||(e+="\\"),e+=t[r];return e}function Mt(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}}})):re(t,"format",e,r,n)}function tt(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:Sx(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):re(t,"pattern",Sx(e,n),r,n)}function Sx(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 h=n.external.registry.get(l[0])?.id;if(e!==l[0]&&h){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let m=this.seen.get(l),h=m.def??m.schema,p={...h};if(m.ref===null)return;let f=m.ref;if(m.ref=null,f){a(f,d);let g=this.seen.get(f).schema;g.$ref&&d.target==="draft-7"?(h.allOf=h.allOf??[],h.allOf.push(g)):(Object.assign(h,g),Object.assign(h,p))}m.isParent||this.override({zodSchema:l,jsonSchema:h,path:m.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}}});var ax=v(()=>{});var Qe=v(()=>{po();$l();yl();Ky();ta();Cl();tr();ea();aa();vd();Ol();sx();ox();ix();ax()});var cp=v(()=>{Qe()});function up(t,e){let r={type:"object",get shape(){return ee.assignProp(this,"shape",{...t}),this.shape},...ee.normalizeParams(e)};return new pP(r)}var dP,pP,cx=v(()=>{Qe();Qe();cp();dP=b("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ue.init(t,e),t.def=e,t.parse=(r,n)=>vl(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Tn(t,r,n),t.parseAsync=async(r,n)=>bl(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Pn(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)=>gt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))}),pP=b("ZodMiniObject",(t,e)=>{sa.init(t,e),dP.init(t,e),ee.defineLazy(t,"shape",()=>e.shape)})});var ux=v(()=>{});var lx=v(()=>{});var dx=v(()=>{});var px=v(()=>{Qe();cp();cx();ux();Qe();aa();lx();dx()});var mx=v(()=>{px()});var lp=v(()=>{mx()});function Tt(t){return!!t._zod}function Cn(t){let e=Object.values(t);if(e.length===0)return up({});let r=e.every(Tt),n=e.every(o=>!Tt(o));if(r)return up(t);if(n)return sl(t);throw new Error("Mixed Zod versions detected in object shape.")}function jr(t,e){return Tt(t)?Tn(t,e):t.safeParse(e)}async function ha(t,e){return Tt(t)?await Pn(t,e):await t.safeParseAsync(e)}function Mr(t){if(!t)return;let e;if(Tt(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function go(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 Cn(t)}}if(Tt(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function ga(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 hx(t){return t.description}function gx(t){if(Tt(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function _a(t){if(Tt(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var Es=v(()=>{ms();lp()});var dp=v(()=>{Qe()});var Ts={};je(Ts,{ZodISODate:()=>yx,ZodISODateTime:()=>_x,ZodISODuration:()=>vx,ZodISOTime:()=>xx,date:()=>mp,datetime:()=>pp,duration:()=>hp,time:()=>fp});function pp(t){return Qy(_x,t)}function mp(t){return ex(yx,t)}function fp(t){return tx(xx,t)}function hp(t){return rx(vx,t)}var _x,yx,xx,vx,gp=v(()=>{Qe();_p();_x=b("ZodISODateTime",(t,e)=>{qy.init(t,e),be.init(t,e)});yx=b("ZodISODate",(t,e)=>{By.init(t,e),be.init(t,e)});xx=b("ZodISOTime",(t,e)=>{Vy.init(t,e),be.init(t,e)});vx=b("ZodISODuration",(t,e)=>{Wy.init(t,e),be.init(t,e)})});var Sx,zF,Ps,yp=v(()=>{Qe();Qe();Sx=(t,e)=>{Xi.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>_l(t,r)},flatten:{value:r=>gl(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},zF=b("ZodError",Sx),Ps=b("ZodError",Sx,{Parent:Error})});var bx,kx,wx,$x,xp=v(()=>{Qe();yp();bx=xl(Ps),kx=Sl(Ps),wx=kl(Ps),$x=wl(Ps)});function S(t){return Sd(bP,t)}function ae(t){return Hd(Ox,t)}function Tx(t){return qd(FP,t)}function De(t){return Bd(ZP,t)}function bp(t){return Vd(UP,t)}function ke(){return Wd(HP)}function BP(t){return Gd(qP,t)}function te(t,e){return nx(VP,t,e)}function C(t,e){let r={type:"object",get shape(){return ee.assignProp(this,"shape",{...t}),this.shape},...ee.normalizeParams(e)};return new Cx(r)}function et(t,e){return new Cx({type:"object",get shape(){return ee.assignProp(this,"shape",{...t}),this.shape},catchall:ke(),...ee.normalizeParams(e)})}function ge(t,e){return new Ix({type:"union",options:t,...ee.normalizeParams(e)})}function kp(t,e,r){return new WP({type:"union",options:e,discriminator:t,...ee.normalizeParams(r)})}function xa(t,e){return new GP({type:"intersection",left:t,right:e})}function we(t,e,r){return new KP({type:"record",keyType:t,valueType:e,...ee.normalizeParams(r)})}function ct(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new vp({type:"enum",entries:r,...ee.normalizeParams(e)})}function j(t,e){return new JP({type:"literal",values:Array.isArray(t)?t:[t],...ee.normalizeParams(e)})}function Ax(t){return new YP({type:"transform",transform:t})}function Ee(t){return new Nx({type:"optional",innerType:t})}function Px(t){return new XP({type:"nullable",innerType:t})}function eR(t,e){return new QP({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function rR(t,e){return new tR({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function nR(t,e){return new zx({type:"nonoptional",innerType:t,...ee.normalizeParams(e)})}function sR(t,e){return new oR({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}function Sp(t,e){return new iR({type:"pipe",in:t,out:e})}function cR(t){return new aR({type:"readonly",innerType:t})}function uR(t){let e=new Ze({check:"custom"});return e._zod.check=t,e}function Mx(t,e){return sp(jx,t??(()=>!0),e)}function lR(t,e={}){return ip(jx,t,e)}function dR(t){let e=uR(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(ee.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(ee.issue(o))}},t(r.value,r)));return e}function wp(t,e){return Sp(Ax(t),e)}var Te,Rx,bP,be,kP,Ex,ya,wP,$P,EP,TP,PP,RP,OP,CP,IP,AP,NP,zP,jP,MP,DP,LP,Ox,FP,ZP,UP,HP,qP,VP,Cx,Ix,WP,GP,KP,vp,JP,YP,Nx,XP,QP,tR,zx,oR,iR,aR,jx,_p=v(()=>{Qe();Qe();dp();gp();xp();Te=b("ZodType",(t,e)=>(ue.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)=>gt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>bx(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>wx(t,r,n),t.parseAsync=async(r,n)=>kx(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>$x(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(lR(r,n)),t.superRefine=r=>t.check(dR(r)),t.overwrite=r=>t.check(Rn(r)),t.optional=()=>Ee(t),t.nullable=()=>Px(t),t.nullish=()=>Ee(Px(t)),t.nonoptional=r=>nR(t,r),t.array=()=>te(t),t.or=r=>ge([t,r]),t.and=r=>xa(t,r),t.transform=r=>Sp(t,Ax(r)),t.default=r=>eR(t,r),t.prefault=r=>rR(t,r),t.catch=r=>sR(t,r),t.pipe=r=>Sp(t,r),t.readonly=()=>cR(t),t.describe=r=>{let n=t.clone();return zr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return zr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return zr.get(t);let n=t.clone();return zr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),Rx=b("_ZodString",(t,e)=>{bs.init(t,e),Te.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(Kd(...n)),t.includes=(...n)=>t.check(Xd(...n)),t.startsWith=(...n)=>t.check(Qd(...n)),t.endsWith=(...n)=>t.check(ep(...n)),t.min=(...n)=>t.check(ho(...n)),t.max=(...n)=>t.check(pa(...n)),t.length=(...n)=>t.check(ma(...n)),t.nonempty=(...n)=>t.check(ho(1,...n)),t.lowercase=n=>t.check(Jd(n)),t.uppercase=n=>t.check(Yd(n)),t.trim=()=>t.check(rp()),t.normalize=(...n)=>t.check(tp(...n)),t.toLowerCase=()=>t.check(np()),t.toUpperCase=()=>t.check(op())}),bP=b("ZodString",(t,e)=>{bs.init(t,e),Rx.init(t,e),t.email=r=>t.check(bd(kP,r)),t.url=r=>t.check(Td(wP,r)),t.jwt=r=>t.check(Ud(LP,r)),t.emoji=r=>t.check(Pd($P,r)),t.guid=r=>t.check(ca(Ex,r)),t.uuid=r=>t.check(kd(ya,r)),t.uuidv4=r=>t.check(wd(ya,r)),t.uuidv6=r=>t.check($d(ya,r)),t.uuidv7=r=>t.check(Ed(ya,r)),t.nanoid=r=>t.check(Rd(EP,r)),t.guid=r=>t.check(ca(Ex,r)),t.cuid=r=>t.check(Od(TP,r)),t.cuid2=r=>t.check(Cd(PP,r)),t.ulid=r=>t.check(Id(RP,r)),t.base64=r=>t.check(Ld(jP,r)),t.base64url=r=>t.check(Fd(MP,r)),t.xid=r=>t.check(Ad(OP,r)),t.ksuid=r=>t.check(Nd(CP,r)),t.ipv4=r=>t.check(zd(IP,r)),t.ipv6=r=>t.check(jd(AP,r)),t.cidrv4=r=>t.check(Md(NP,r)),t.cidrv6=r=>t.check(Dd(zP,r)),t.e164=r=>t.check(Zd(DP,r)),t.datetime=r=>t.check(pp(r)),t.date=r=>t.check(mp(r)),t.time=r=>t.check(fp(r)),t.duration=r=>t.check(hp(r))});be=b("ZodStringFormat",(t,e)=>{he.init(t,e),Rx.init(t,e)}),kP=b("ZodEmail",(t,e)=>{zl.init(t,e),be.init(t,e)}),Ex=b("ZodGUID",(t,e)=>{Al.init(t,e),be.init(t,e)}),ya=b("ZodUUID",(t,e)=>{Nl.init(t,e),be.init(t,e)}),wP=b("ZodURL",(t,e)=>{jl.init(t,e),be.init(t,e)}),$P=b("ZodEmoji",(t,e)=>{Ml.init(t,e),be.init(t,e)}),EP=b("ZodNanoID",(t,e)=>{Dl.init(t,e),be.init(t,e)}),TP=b("ZodCUID",(t,e)=>{Ll.init(t,e),be.init(t,e)}),PP=b("ZodCUID2",(t,e)=>{Fl.init(t,e),be.init(t,e)}),RP=b("ZodULID",(t,e)=>{Zl.init(t,e),be.init(t,e)}),OP=b("ZodXID",(t,e)=>{Ul.init(t,e),be.init(t,e)}),CP=b("ZodKSUID",(t,e)=>{Hl.init(t,e),be.init(t,e)}),IP=b("ZodIPv4",(t,e)=>{ql.init(t,e),be.init(t,e)}),AP=b("ZodIPv6",(t,e)=>{Bl.init(t,e),be.init(t,e)}),NP=b("ZodCIDRv4",(t,e)=>{Vl.init(t,e),be.init(t,e)}),zP=b("ZodCIDRv6",(t,e)=>{Wl.init(t,e),be.init(t,e)}),jP=b("ZodBase64",(t,e)=>{Gl.init(t,e),be.init(t,e)}),MP=b("ZodBase64URL",(t,e)=>{Kl.init(t,e),be.init(t,e)}),DP=b("ZodE164",(t,e)=>{Jl.init(t,e),be.init(t,e)}),LP=b("ZodJWT",(t,e)=>{Yl.init(t,e),be.init(t,e)}),Ox=b("ZodNumber",(t,e)=>{oa.init(t,e),Te.init(t,e),t.gt=(n,o)=>t.check(la(n,o)),t.gte=(n,o)=>t.check($s(n,o)),t.min=(n,o)=>t.check($s(n,o)),t.lt=(n,o)=>t.check(ua(n,o)),t.lte=(n,o)=>t.check(ws(n,o)),t.max=(n,o)=>t.check(ws(n,o)),t.int=n=>t.check(Tx(n)),t.safe=n=>t.check(Tx(n)),t.positive=n=>t.check(la(0,n)),t.nonnegative=n=>t.check($s(0,n)),t.negative=n=>t.check(ua(0,n)),t.nonpositive=n=>t.check(ws(0,n)),t.multipleOf=(n,o)=>t.check(da(n,o)),t.step=(n,o)=>t.check(da(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});FP=b("ZodNumberFormat",(t,e)=>{Xl.init(t,e),Ox.init(t,e)});ZP=b("ZodBoolean",(t,e)=>{Ql.init(t,e),Te.init(t,e)});UP=b("ZodNull",(t,e)=>{ed.init(t,e),Te.init(t,e)});HP=b("ZodUnknown",(t,e)=>{td.init(t,e),Te.init(t,e)});qP=b("ZodNever",(t,e)=>{rd.init(t,e),Te.init(t,e)});VP=b("ZodArray",(t,e)=>{nd.init(t,e),Te.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(ho(r,n)),t.nonempty=r=>t.check(ho(1,r)),t.max=(r,n)=>t.check(pa(r,n)),t.length=(r,n)=>t.check(ma(r,n)),t.unwrap=()=>t.element});Cx=b("ZodObject",(t,e)=>{sa.init(t,e),Te.init(t,e),ee.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>ct(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:ke()}),t.loose=()=>t.clone({...t._zod.def,catchall:ke()}),t.strict=()=>t.clone({...t._zod.def,catchall:BP()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>ee.extend(t,r),t.merge=r=>ee.merge(t,r),t.pick=r=>ee.pick(t,r),t.omit=r=>ee.omit(t,r),t.partial=(...r)=>ee.partial(Nx,t,r[0]),t.required=(...r)=>ee.required(zx,t,r[0])});Ix=b("ZodUnion",(t,e)=>{ia.init(t,e),Te.init(t,e),t.options=e.options});WP=b("ZodDiscriminatedUnion",(t,e)=>{Ix.init(t,e),od.init(t,e)});GP=b("ZodIntersection",(t,e)=>{sd.init(t,e),Te.init(t,e)});KP=b("ZodRecord",(t,e)=>{id.init(t,e),Te.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});vp=b("ZodEnum",(t,e)=>{ad.init(t,e),Te.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 vp({...e,checks:[],...ee.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 vp({...e,checks:[],...ee.normalizeParams(o),entries:s})}});JP=b("ZodLiteral",(t,e)=>{cd.init(t,e),Te.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]}})});YP=b("ZodTransform",(t,e)=>{ud.init(t,e),Te.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(ee.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(ee.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});Nx=b("ZodOptional",(t,e)=>{ld.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});XP=b("ZodNullable",(t,e)=>{dd.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});QP=b("ZodDefault",(t,e)=>{pd.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});tR=b("ZodPrefault",(t,e)=>{md.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});zx=b("ZodNonOptional",(t,e)=>{fd.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});oR=b("ZodCatch",(t,e)=>{hd.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});iR=b("ZodPipe",(t,e)=>{gd.init(t,e),Te.init(t,e),t.in=e.in,t.out=e.out});aR=b("ZodReadonly",(t,e)=>{_d.init(t,e),Te.init(t,e)});jx=b("ZodCustom",(t,e)=>{yd.init(t,e),Te.init(t,e)})});var Dx=v(()=>{});var Lx=v(()=>{});var Fx=v(()=>{Qe();_p();dp();yp();xp();Dx();Qe();Yy();aa();gp();Lx();ht(Jy())});var Zx=v(()=>{Fx()});var Ux=v(()=>{Zx()});function sv(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function iv(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var Ep,Hx,Dr,Sa,Ue,qx,Bx,YF,fR,hR,Tp,_t,Rs,Vx,He,Pt,Rt,qe,ba,Wx,Pp,Gx,Kx,Rp,Os,D,Op,Jx,Yx,XF,ka,gR,wa,_R,Cs,_o,Xx,yR,xR,vR,SR,bR,kR,Cp,wR,$R,Ip,$a,ER,TR,Ea,PR,Is,As,RR,Ns,yo,OR,zs,Ta,Pa,Ra,QF,Oa,Ca,Ia,Qx,ev,tv,Ap,rv,js,xo,nv,CR,vo,IR,So,AR,Np,NR,Aa,zR,jR,MR,DR,LR,FR,ZR,UR,HR,qR,bo,BR,VR,Na,zp,jp,Mp,WR,GR,KR,Dp,JR,YR,XR,QR,eO,ov,za,tO,ja,eZ,rO,ko,nO,tZ,Ms,oO,Lp,sO,iO,aO,cO,uO,lO,dO,va,pO,mO,fO,Fp,Zp,hO,gO,_O,yO,xO,vO,SO,bO,kO,wO,$O,EO,TO,PO,RO,OO,CO,IO,Ma,AO,NO,zO,Da,jO,MO,DO,Up,LO,rZ,nZ,oZ,sZ,iZ,aZ,z,$p,wo=v(()=>{Ux();Ep="2025-11-25",Hx=[Ep,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Dr="io.modelcontextprotocol/related-task",Sa="2.0",Ue=Mx(t=>t!==null&&(typeof t=="object"||typeof t=="function")),qx=ge([S(),ae().int()]),Bx=S(),YF=et({ttl:ge([ae(),bp()]).optional(),pollInterval:ae().optional()}),fR=C({ttl:ae().optional()}),hR=C({taskId:S()}),Tp=et({progressToken:qx.optional(),[Dr]:hR.optional()}),_t=C({_meta:Tp.optional()}),Rs=_t.extend({task:fR.optional()}),Vx=t=>Rs.safeParse(t).success,He=C({method:S(),params:_t.loose().optional()}),Pt=C({_meta:Tp.optional()}),Rt=C({method:S(),params:Pt.loose().optional()}),qe=et({_meta:Tp.optional()}),ba=ge([S(),ae().int()]),Wx=C({jsonrpc:j(Sa),id:ba,...He.shape}).strict(),Pp=t=>Wx.safeParse(t).success,Gx=C({jsonrpc:j(Sa),...Rt.shape}).strict(),Kx=t=>Gx.safeParse(t).success,Rp=C({jsonrpc:j(Sa),id:ba,result:qe}).strict(),Os=t=>Rp.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"})(D||(D={}));Op=C({jsonrpc:j(Sa),id:ba.optional(),error:C({code:ae().int(),message:S(),data:ke().optional()})}).strict(),Jx=t=>Op.safeParse(t).success,Yx=ge([Wx,Gx,Rp,Op]),XF=ge([Rp,Op]),ka=qe.strict(),gR=Pt.extend({requestId:ba.optional(),reason:S().optional()}),wa=Rt.extend({method:j("notifications/cancelled"),params:gR}),_R=C({src:S(),mimeType:S().optional(),sizes:te(S()).optional(),theme:ct(["light","dark"]).optional()}),Cs=C({icons:te(_R).optional()}),_o=C({name:S(),title:S().optional()}),Xx=_o.extend({..._o.shape,...Cs.shape,version:S(),websiteUrl:S().optional(),description:S().optional()}),yR=xa(C({applyDefaults:De().optional()}),we(S(),ke())),xR=wp(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,xa(C({form:yR.optional(),url:Ue.optional()}),we(S(),ke()).optional())),vR=et({list:Ue.optional(),cancel:Ue.optional(),requests:et({sampling:et({createMessage:Ue.optional()}).optional(),elicitation:et({create:Ue.optional()}).optional()}).optional()}),SR=et({list:Ue.optional(),cancel:Ue.optional(),requests:et({tools:et({call:Ue.optional()}).optional()}).optional()}),bR=C({experimental:we(S(),Ue).optional(),sampling:C({context:Ue.optional(),tools:Ue.optional()}).optional(),elicitation:xR.optional(),roots:C({listChanged:De().optional()}).optional(),tasks:vR.optional()}),kR=_t.extend({protocolVersion:S(),capabilities:bR,clientInfo:Xx}),Cp=He.extend({method:j("initialize"),params:kR}),wR=C({experimental:we(S(),Ue).optional(),logging:Ue.optional(),completions:Ue.optional(),prompts:C({listChanged:De().optional()}).optional(),resources:C({subscribe:De().optional(),listChanged:De().optional()}).optional(),tools:C({listChanged:De().optional()}).optional(),tasks:SR.optional()}),$R=qe.extend({protocolVersion:S(),capabilities:wR,serverInfo:Xx,instructions:S().optional()}),Ip=Rt.extend({method:j("notifications/initialized"),params:Pt.optional()}),$a=He.extend({method:j("ping"),params:_t.optional()}),ER=C({progress:ae(),total:Ee(ae()),message:Ee(S())}),TR=C({...Pt.shape,...ER.shape,progressToken:qx}),Ea=Rt.extend({method:j("notifications/progress"),params:TR}),PR=_t.extend({cursor:Bx.optional()}),Is=He.extend({params:PR.optional()}),As=qe.extend({nextCursor:Bx.optional()}),RR=ct(["working","input_required","completed","failed","cancelled"]),Ns=C({taskId:S(),status:RR,ttl:ge([ae(),bp()]),createdAt:S(),lastUpdatedAt:S(),pollInterval:Ee(ae()),statusMessage:Ee(S())}),yo=qe.extend({task:Ns}),OR=Pt.merge(Ns),zs=Rt.extend({method:j("notifications/tasks/status"),params:OR}),Ta=He.extend({method:j("tasks/get"),params:_t.extend({taskId:S()})}),Pa=qe.merge(Ns),Ra=He.extend({method:j("tasks/result"),params:_t.extend({taskId:S()})}),QF=qe.loose(),Oa=Is.extend({method:j("tasks/list")}),Ca=As.extend({tasks:te(Ns)}),Ia=He.extend({method:j("tasks/cancel"),params:_t.extend({taskId:S()})}),Qx=qe.merge(Ns),ev=C({uri:S(),mimeType:Ee(S()),_meta:we(S(),ke()).optional()}),tv=ev.extend({text:S()}),Ap=S().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),rv=ev.extend({blob:Ap}),js=ct(["user","assistant"]),xo=C({audience:te(js).optional(),priority:ae().min(0).max(1).optional(),lastModified:Ts.datetime({offset:!0}).optional()}),nv=C({..._o.shape,...Cs.shape,uri:S(),description:Ee(S()),mimeType:Ee(S()),annotations:xo.optional(),_meta:Ee(et({}))}),CR=C({..._o.shape,...Cs.shape,uriTemplate:S(),description:Ee(S()),mimeType:Ee(S()),annotations:xo.optional(),_meta:Ee(et({}))}),vo=Is.extend({method:j("resources/list")}),IR=As.extend({resources:te(nv)}),So=Is.extend({method:j("resources/templates/list")}),AR=As.extend({resourceTemplates:te(CR)}),Np=_t.extend({uri:S()}),NR=Np,Aa=He.extend({method:j("resources/read"),params:NR}),zR=qe.extend({contents:te(ge([tv,rv]))}),jR=Rt.extend({method:j("notifications/resources/list_changed"),params:Pt.optional()}),MR=Np,DR=He.extend({method:j("resources/subscribe"),params:MR}),LR=Np,FR=He.extend({method:j("resources/unsubscribe"),params:LR}),ZR=Pt.extend({uri:S()}),UR=Rt.extend({method:j("notifications/resources/updated"),params:ZR}),HR=C({name:S(),description:Ee(S()),required:Ee(De())}),qR=C({..._o.shape,...Cs.shape,description:Ee(S()),arguments:Ee(te(HR)),_meta:Ee(et({}))}),bo=Is.extend({method:j("prompts/list")}),BR=As.extend({prompts:te(qR)}),VR=_t.extend({name:S(),arguments:we(S(),S()).optional()}),Na=He.extend({method:j("prompts/get"),params:VR}),zp=C({type:j("text"),text:S(),annotations:xo.optional(),_meta:we(S(),ke()).optional()}),jp=C({type:j("image"),data:Ap,mimeType:S(),annotations:xo.optional(),_meta:we(S(),ke()).optional()}),Mp=C({type:j("audio"),data:Ap,mimeType:S(),annotations:xo.optional(),_meta:we(S(),ke()).optional()}),WR=C({type:j("tool_use"),name:S(),id:S(),input:we(S(),ke()),_meta:we(S(),ke()).optional()}),GR=C({type:j("resource"),resource:ge([tv,rv]),annotations:xo.optional(),_meta:we(S(),ke()).optional()}),KR=nv.extend({type:j("resource_link")}),Dp=ge([zp,jp,Mp,KR,GR]),JR=C({role:js,content:Dp}),YR=qe.extend({description:S().optional(),messages:te(JR)}),XR=Rt.extend({method:j("notifications/prompts/list_changed"),params:Pt.optional()}),QR=C({title:S().optional(),readOnlyHint:De().optional(),destructiveHint:De().optional(),idempotentHint:De().optional(),openWorldHint:De().optional()}),eO=C({taskSupport:ct(["required","optional","forbidden"]).optional()}),ov=C({..._o.shape,...Cs.shape,description:S().optional(),inputSchema:C({type:j("object"),properties:we(S(),Ue).optional(),required:te(S()).optional()}).catchall(ke()),outputSchema:C({type:j("object"),properties:we(S(),Ue).optional(),required:te(S()).optional()}).catchall(ke()).optional(),annotations:QR.optional(),execution:eO.optional(),_meta:we(S(),ke()).optional()}),za=Is.extend({method:j("tools/list")}),tO=As.extend({tools:te(ov)}),ja=qe.extend({content:te(Dp).default([]),structuredContent:we(S(),ke()).optional(),isError:De().optional()}),eZ=ja.or(qe.extend({toolResult:ke()})),rO=Rs.extend({name:S(),arguments:we(S(),ke()).optional()}),ko=He.extend({method:j("tools/call"),params:rO}),nO=Rt.extend({method:j("notifications/tools/list_changed"),params:Pt.optional()}),tZ=C({autoRefresh:De().default(!0),debounceMs:ae().int().nonnegative().default(300)}),Ms=ct(["debug","info","notice","warning","error","critical","alert","emergency"]),oO=_t.extend({level:Ms}),Lp=He.extend({method:j("logging/setLevel"),params:oO}),sO=Pt.extend({level:Ms,logger:S().optional(),data:ke()}),iO=Rt.extend({method:j("notifications/message"),params:sO}),aO=C({name:S().optional()}),cO=C({hints:te(aO).optional(),costPriority:ae().min(0).max(1).optional(),speedPriority:ae().min(0).max(1).optional(),intelligencePriority:ae().min(0).max(1).optional()}),uO=C({mode:ct(["auto","required","none"]).optional()}),lO=C({type:j("tool_result"),toolUseId:S().describe("The unique identifier for the corresponding tool call."),content:te(Dp).default([]),structuredContent:C({}).loose().optional(),isError:De().optional(),_meta:we(S(),ke()).optional()}),dO=kp("type",[zp,jp,Mp]),va=kp("type",[zp,jp,Mp,WR,lO]),pO=C({role:js,content:ge([va,te(va)]),_meta:we(S(),ke()).optional()}),mO=Rs.extend({messages:te(pO),modelPreferences:cO.optional(),systemPrompt:S().optional(),includeContext:ct(["none","thisServer","allServers"]).optional(),temperature:ae().optional(),maxTokens:ae().int(),stopSequences:te(S()).optional(),metadata:Ue.optional(),tools:te(ov).optional(),toolChoice:uO.optional()}),fO=He.extend({method:j("sampling/createMessage"),params:mO}),Fp=qe.extend({model:S(),stopReason:Ee(ct(["endTurn","stopSequence","maxTokens"]).or(S())),role:js,content:dO}),Zp=qe.extend({model:S(),stopReason:Ee(ct(["endTurn","stopSequence","maxTokens","toolUse"]).or(S())),role:js,content:ge([va,te(va)])}),hO=C({type:j("boolean"),title:S().optional(),description:S().optional(),default:De().optional()}),gO=C({type:j("string"),title:S().optional(),description:S().optional(),minLength:ae().optional(),maxLength:ae().optional(),format:ct(["email","uri","date","date-time"]).optional(),default:S().optional()}),_O=C({type:ct(["number","integer"]),title:S().optional(),description:S().optional(),minimum:ae().optional(),maximum:ae().optional(),default:ae().optional()}),yO=C({type:j("string"),title:S().optional(),description:S().optional(),enum:te(S()),default:S().optional()}),xO=C({type:j("string"),title:S().optional(),description:S().optional(),oneOf:te(C({const:S(),title:S()})),default:S().optional()}),vO=C({type:j("string"),title:S().optional(),description:S().optional(),enum:te(S()),enumNames:te(S()).optional(),default:S().optional()}),SO=ge([yO,xO]),bO=C({type:j("array"),title:S().optional(),description:S().optional(),minItems:ae().optional(),maxItems:ae().optional(),items:C({type:j("string"),enum:te(S())}),default:te(S()).optional()}),kO=C({type:j("array"),title:S().optional(),description:S().optional(),minItems:ae().optional(),maxItems:ae().optional(),items:C({anyOf:te(C({const:S(),title:S()}))}),default:te(S()).optional()}),wO=ge([bO,kO]),$O=ge([vO,SO,wO]),EO=ge([$O,hO,gO,_O]),TO=Rs.extend({mode:j("form").optional(),message:S(),requestedSchema:C({type:j("object"),properties:we(S(),EO),required:te(S()).optional()})}),PO=Rs.extend({mode:j("url"),message:S(),elicitationId:S(),url:S().url()}),RO=ge([TO,PO]),OO=He.extend({method:j("elicitation/create"),params:RO}),CO=Pt.extend({elicitationId:S()}),IO=Rt.extend({method:j("notifications/elicitation/complete"),params:CO}),Ma=qe.extend({action:ct(["accept","decline","cancel"]),content:wp(t=>t===null?void 0:t,we(S(),ge([S(),ae(),De(),te(S())])).optional())}),AO=C({type:j("ref/resource"),uri:S()}),NO=C({type:j("ref/prompt"),name:S()}),zO=_t.extend({ref:ge([NO,AO]),argument:C({name:S(),value:S()}),context:C({arguments:we(S(),S()).optional()}).optional()}),Da=He.extend({method:j("completion/complete"),params:zO});jO=qe.extend({completion:et({values:te(S()).max(100),total:Ee(ae().int()),hasMore:Ee(De())})}),MO=C({uri:S().startsWith("file://"),name:S().optional(),_meta:we(S(),ke()).optional()}),DO=He.extend({method:j("roots/list"),params:_t.optional()}),Up=qe.extend({roots:te(MO)}),LO=Rt.extend({method:j("notifications/roots/list_changed"),params:Pt.optional()}),rZ=ge([$a,Cp,Da,Lp,Na,bo,vo,So,Aa,DR,FR,ko,za,Ta,Ra,Oa,Ia]),nZ=ge([wa,Ea,Ip,LO,zs]),oZ=ge([ka,Fp,Zp,Ma,Up,Pa,Ca,yo]),sZ=ge([$a,fO,OO,DO,Ta,Ra,Oa,Ia]),iZ=ge([wa,Ea,iO,UR,jR,nO,XR,zs,IO]),aZ=ge([ka,$R,jO,YR,BR,IR,AR,zR,ja,tO,Pa,Ca,yo]),z=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===D.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new $p(o.elicitations,r)}return new t(e,r,n)}},$p=class extends z{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(D.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}}});function Lr(t){return t==="completed"||t==="failed"||t==="cancelled"}var av=v(()=>{});var uv,cv,lv,La=v(()=>{uv=Symbol("Let zodToJsonSchema decide on which parser to use"),cv={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"},lv=t=>typeof t=="string"?{...cv,name:t}:{...cv,...t}});var dv,Hp=v(()=>{La();dv=t=>{let e=lv(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 qp(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function re(t,e,r,n,o){t[e]=r,qp(t,e,n,o)}var Fr=v(()=>{});var Fa,Za=v(()=>{Fa=(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 $e(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?Fa(e,t.currentPath):e.join("/")}}var Ot=v(()=>{Za()});function pv(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==$.ZodAny&&(r.items=U(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&re(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&re(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(re(r,"minItems",t.exactLength.value,t.exactLength.message,e),re(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}var Bp=v(()=>{ms();Fr();Ne()});function mv(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?re(r,"minimum",n.value,n.message,e):re(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),re(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?re(r,"maximum",n.value,n.message,e):re(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),re(r,"maximum",n.value,n.message,e));break;case"multipleOf":re(r,"multipleOf",n.value,n.message,e);break}return r}var Vp=v(()=>{Fr()});function fv(){return{type:"boolean"}}var Wp=v(()=>{});function Ua(t,e){return U(t.type._def,e)}var Ha=v(()=>{Ne()});var hv,Gp=v(()=>{Ne();hv=(t,e)=>U(t.innerType._def,e)});function Kp(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Kp(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 FO(t,e)}}var FO,Jp=v(()=>{Fr();FO=(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":re(r,"minimum",n.value,n.message,e);break;case"max":re(r,"maximum",n.value,n.message,e);break}return r}});function gv(t,e){return{...U(t.innerType._def,e),default:t.defaultValue()}}var Yp=v(()=>{Ne()});function _v(t,e){return e.effectStrategy==="input"?U(t.schema._def,e):$e(e)}var Xp=v(()=>{Ne();Ot()});function yv(t){return{type:"string",enum:Array.from(t.values)}}var Qp=v(()=>{});function xv(t,e){let r=[U(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),U(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,em=v(()=>{Ne();ZO=t=>"type"in t&&t.type==="string"?!1:"allOf"in t});function vv(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 tm=v(()=>{});function qa(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":re(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":re(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":Ut(r,"email",n.message,e);break;case"format:idn-email":Ut(r,"idn-email",n.message,e);break;case"pattern:zod":tt(r,Zt.email,n.message,e);break}break;case"url":Ut(r,"uri",n.message,e);break;case"uuid":Ut(r,"uuid",n.message,e);break;case"regex":tt(r,n.regex,n.message,e);break;case"cuid":tt(r,Zt.cuid,n.message,e);break;case"cuid2":tt(r,Zt.cuid2,n.message,e);break;case"startsWith":tt(r,RegExp(`^${nm(n.value,e)}`),n.message,e);break;case"endsWith":tt(r,RegExp(`${nm(n.value,e)}$`),n.message,e);break;case"datetime":Ut(r,"date-time",n.message,e);break;case"date":Ut(r,"date",n.message,e);break;case"time":Ut(r,"time",n.message,e);break;case"duration":Ut(r,"duration",n.message,e);break;case"length":re(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),re(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{tt(r,RegExp(nm(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&Ut(r,"ipv4",n.message,e),n.version!=="v4"&&Ut(r,"ipv6",n.message,e);break}case"base64url":tt(r,Zt.base64url,n.message,e);break;case"jwt":tt(r,Zt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&tt(r,Zt.ipv4Cidr,n.message,e),n.version!=="v4"&&tt(r,Zt.ipv6Cidr,n.message,e);break}case"emoji":tt(r,Zt.emoji(),n.message,e);break;case"ulid":{tt(r,Zt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{Ut(r,"binary",n.message,e);break}case"contentEncoding:base64":{re(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{tt(r,Zt.base64,n.message,e);break}}break}case"nanoid":tt(r,Zt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function nm(t,e){return e.patternStrategy==="escape"?HO(t):t}function HO(t){let e="";for(let r=0;r<t.length;r++)UO.has(t[r])||(e+="\\"),e+=t[r];return e}function Ut(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}}})):re(t,"format",e,r,n)}function tt(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:Sv(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):re(t,"pattern",Sv(e,n),r,n)}function Sv(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
48
47
  ]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
49
48
  ]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
50
49
  `:`[${n[c]}\r
51
- ]`;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 Qp,jt,PO,Ba=b(()=>{Mr();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:()=>(Qp===void 0&&(Qp=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Qp),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-_]*$/};PO=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789")});function Va(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===w.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:Z(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??Ee(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:Z(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===w.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=qa(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===w.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===w.ZodBranded&&t.keyType._def.type._def.typeName===w.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=Ua(t.keyType._def,e);return{...r,propertyNames:o}}}return r}var Wa=b(()=>{ls();Ae();Ba();Ha();$t()});function kx(t,e){if(e.mapStrategy==="record")return Va(t,e);let r=Z(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||Ee(e),n=Z(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||Ee(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}var tm=b(()=>{Ae();Wa();$t()});function wx(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 rm=b(()=>{});function $x(t){return t.target==="openAi"?void 0:{not:Ee({...t,currentPath:[...t.currentPath,"not"]})}}var nm=b(()=>{$t()});function Ex(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var om=b(()=>{});function Px(t,e){if(e.target==="openApi3")return Tx(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in js&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=js[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 Tx(t,e)}var js,Tx,Ga=b(()=>{Ae();js={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};Tx=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>Z(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 Rx(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:js[t.innerType._def.typeName],nullable:!0}:{type:[js[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=Z(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=Z(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}var sm=b(()=>{Ae();Ga()});function Ox(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",Zp(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?re(r,"minimum",n.value,n.message,e):re(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),re(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?re(r,"maximum",n.value,n.message,e):re(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),re(r,"maximum",n.value,n.message,e));break;case"multipleOf":re(r,"multipleOf",n.value,n.message,e);break}return r}var im=b(()=>{Mr()});function Cx(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=CO(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=Z(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=OO(t,e);return i!==void 0&&(n.additionalProperties=i),n}function OO(t,e){if(t.catchall._def.typeName!=="ZodNever")return Z(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 CO(t){try{return t.isOptional()}catch{return!0}}var am=b(()=>{Ae()});var Ix,cm=b(()=>{Ae();$t();Ix=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return Z(t.innerType._def,e);let r=Z(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:Ee(e)},r]}:Ee(e)}});var Ax,um=b(()=>{Ae();Ax=(t,e)=>{if(e.pipeStrategy==="input")return Z(t.in._def,e);if(e.pipeStrategy==="output")return Z(t.out._def,e);let r=Z(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=Z(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}}});function Nx(t,e){return Z(t.type._def,e)}var lm=b(()=>{Ae()});function zx(t,e){let n={type:"array",uniqueItems:!0,items:Z(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&re(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&re(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}var dm=b(()=>{Mr();Ae()});function jx(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>Z(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:Z(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>Z(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}var pm=b(()=>{Ae()});function Mx(t){return{not:Ee(t)}}var mm=b(()=>{$t()});function Dx(t){return Ee(t)}var fm=b(()=>{$t()});var Lx,hm=b(()=>{Ae();Lx=(t,e)=>Z(t.innerType._def,e)});var Fx,gm=b(()=>{ls();$t();Up();Hp();qp();Ha();Bp();Wp();Gp();Kp();Jp();Yp();Xp();tm();rm();nm();om();sm();im();am();cm();um();lm();Wa();dm();Ba();pm();mm();Ga();fm();hm();Fx=(t,e,r)=>{switch(e){case w.ZodString:return qa(t,r);case w.ZodNumber:return Ox(t,r);case w.ZodObject:return Cx(t,r);case w.ZodBigInt:return fx(t,r);case w.ZodBoolean:return hx();case w.ZodDate:return Vp(t,r);case w.ZodUndefined:return Mx(r);case w.ZodNull:return Ex(r);case w.ZodArray:return mx(t,r);case w.ZodUnion:case w.ZodDiscriminatedUnion:return Px(t,r);case w.ZodIntersection:return xx(t,r);case w.ZodTuple:return jx(t,r);case w.ZodRecord:return Va(t,r);case w.ZodLiteral:return bx(t,r);case w.ZodEnum:return vx(t);case w.ZodNativeEnum:return wx(t);case w.ZodNullable:return Rx(t,r);case w.ZodOptional:return Ix(t,r);case w.ZodMap:return kx(t,r);case w.ZodSet:return zx(t,r);case w.ZodLazy:return()=>t.getter()._def;case w.ZodPromise:return Nx(t,r);case w.ZodNaN:case w.ZodNever:return $x(r);case w.ZodEffects:return yx(t,r);case w.ZodAny:return Ee(r);case w.ZodUnknown:return Dx(r);case w.ZodDefault:return _x(t,r);case w.ZodBranded:return Ua(t,r);case w.ZodReadonly:return Lx(t,r);case w.ZodCatch:return gx(t,r);case w.ZodPipeline:return Ax(t,r);case w.ZodFunction:case w.ZodVoid:case w.ZodSymbol:return;default:return(n=>{})(e)}}});function Z(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==lx)return a}if(n&&!r){let a=IO(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=Fx(t,t.typeName,e),i=typeof s=="function"?Z(s(),e):s;if(i&&AO(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var IO,AO,Ae=b(()=>{La();gm();Za();$t();IO=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:Fa(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`),Ee(e)):e.$refStrategy==="seen"?Ee(e):void 0}},AO=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r)});var Zx=b(()=>{});var _m,ym=b(()=>{Ae();Fp();$t();_m=(t,e)=>{let r=px(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:Z(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??Ee(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=Z(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??Ee(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 Ux=b(()=>{La();Fp();Mr();Za();Ae();Zx();$t();Up();Hp();qp();Ha();Bp();Wp();Gp();Kp();Jp();Yp();Xp();tm();rm();nm();om();sm();im();am();cm();um();lm();hm();Wa();dm();Ba();pm();mm();Ga();fm();gm();ym();ym()});function NO(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function vm(t,e){return St(t)?ip(t,{target:NO(e?.target),io:e?.pipeStrategy??"input"}):_m(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function xm(t){let r=Nr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ya(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function bm(t,e){let r=Ar(t,e);if(!r.success)throw r.error;return r.data}var Sm=b(()=>{up();ks();Ux()});function Hx(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function qx(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];Hx(i)&&Hx(s)?r[o]={...i,...s}:r[o]=s}return r}var zO,Ka,Bx=b(()=>{ks();Tn();cx();Sm();zO=6e4,Ka=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($a,r=>{this._oncancel(r)}),this.setNotificationHandler(Ta,r=>{this._onprogress(r)}),this.setRequestHandler(Ea,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Pa,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new z(D.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(Oa,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,m=new z(d.error.code,d.error.message,d.error.data);l(m)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new z(D.InvalidParams,`Task not found: ${s}`);if(!jr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(jr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[zr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(Ca,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 z(D.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(Aa,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new z(D.InvalidParams,`Task not found: ${r.params.taskId}`);if(jr(o.status))throw new z(D.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 z(D.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof z?o:new z(D.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),z.fromError(D.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),Ts(s)||Yv(s)?this._onresponse(s):Ep(s)?this._onrequest(s,i):Jv(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=z.fromError(D.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?.[zr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:D.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,m)=>{if(i.signal.aborted)throw new z(D.ConnectionClosed,"Request was cancelled");let f={...m,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let p=f.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,f)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:D.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),Ts(e))n(e);else{let i=new z(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(Ts(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),Ts(e))o(e);else{let i=z.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 z?i:new z(D.InternalError,String(i))}}return}let s;try{let i=await this.request(e,ho,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new z(D.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},jr(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new z(D.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new z(D.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 z?i:new z(D.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 m=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:m};n?.onprogress&&(this._progressHandlers.set(m,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:m}}),a&&(f.params={...f.params,task:a}),c&&(f.params={...f.params,_meta:{...f.params?._meta||{},[zr]:c}});let p=y=>{this._responseHandlers.delete(m),this._progressHandlers.delete(m),this._cleanupTimeout(m),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:m,reason:String(y)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch($=>this._onerror(new Error(`Failed to send cancellation: ${$}`)));let v=y instanceof z?y:new z(D.RequestTimeout,String(y));l(v)};this._responseHandlers.set(m,y=>{if(!n?.signal?.aborted){if(y instanceof Error)return l(y);try{let v=Ar(r,y.result);v.success?u(v.data):l(v.error)}catch(v){l(v)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??zO,g=()=>p(z.fromError(D.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(m,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){let y=v=>{let $=this._responseHandlers.get(m);$?$(v):this._onerror(new Error(`Response handler missing for side-channeled request ${m}`))};this._requestResolvers.set(m,y),this._enqueueTaskMessage(_,{type:"request",message:f,timestamp:Date.now()}).catch(v=>{this._cleanupTimeout(m),l(v)})}else this._transport.send(f,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(y=>{this._cleanupTimeout(m),l(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Ra,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},Ia,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},ex,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||{},[zr]: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||{},[zr]: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||{},[zr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=xm(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=bm(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=xm(e);this._notificationHandlers.set(n,o=>{let s=bm(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"&&Ep(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new z(D.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 z(D.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new z(D.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 z(D.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=Is.parse({method:"notifications/tasks/status",params:a});await this.notification(c),jr(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 z(D.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(jr(a.status))throw new z(D.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=Is.parse({method:"notifications/tasks/status",params:c});await this.notification(u),jr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}}});var Ls=R(ie=>{"use strict";Object.defineProperty(ie,"__esModule",{value:!0});ie.regexpCode=ie.getEsmExportName=ie.getProperty=ie.safeStringify=ie.stringify=ie.strConcat=ie.addCodeArg=ie.str=ie._=ie.nil=ie._Code=ie.Name=ie.IDENTIFIER=ie._CodeOrName=void 0;var Ms=class{};ie._CodeOrName=Ms;ie.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Pn=class extends Ms{constructor(e){if(super(),!ie.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}}};ie.Name=Pn;var Et=class extends Ms{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Pn&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ie._Code=Et;ie.nil=new Et("");function Vx(t,...e){let r=[t[0]],n=0;for(;n<e.length;)wm(r,e[n]),r.push(t[++n]);return new Et(r)}ie._=Vx;var km=new Et("+");function Wx(t,...e){let r=[Ds(t[0])],n=0;for(;n<e.length;)r.push(km),wm(r,e[n]),r.push(km,Ds(t[++n]));return jO(r),new Et(r)}ie.str=Wx;function wm(t,e){e instanceof Et?t.push(...e._items):e instanceof Pn?t.push(e):t.push(LO(e))}ie.addCodeArg=wm;function jO(t){let e=1;for(;e<t.length-1;){if(t[e]===km){let r=MO(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function MO(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Pn||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof Pn))return`"${t}${e.slice(1)}`}function DO(t,e){return e.emptyStr()?t:t.emptyStr()?e:Wx`${t}${e}`}ie.strConcat=DO;function LO(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Ds(Array.isArray(t)?t.join(","):t)}function FO(t){return new Et(Ds(t))}ie.stringify=FO;function Ds(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ie.safeStringify=Ds;function ZO(t){return typeof t=="string"&&ie.IDENTIFIER.test(t)?new Et(`.${t}`):Vx`[${t}]`}ie.getProperty=ZO;function UO(t){if(typeof t=="string"&&ie.IDENTIFIER.test(t))return new Et(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ie.getEsmExportName=UO;function HO(t){return new Et(t.toString())}ie.regexpCode=HO});var Tm=R(ut=>{"use strict";Object.defineProperty(ut,"__esModule",{value:!0});ut.ValueScope=ut.ValueScopeName=ut.Scope=ut.varKinds=ut.UsedValueState=void 0;var ct=Ls(),$m=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Ja;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Ja||(ut.UsedValueState=Ja={}));ut.varKinds={const:new ct.Name("const"),let:new ct.Name("let"),var:new ct.Name("var")};var Ya=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof ct.Name?e:this.name(e)}name(e){return new ct.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}}};ut.Scope=Ya;var Xa=class extends ct.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,ct._)`.${new ct.Name(r)}[${n}]`}};ut.ValueScopeName=Xa;var qO=(0,ct._)`\n`,Em=class extends Ya{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?qO:ct.nil}}get(){return this._scope}name(e){return new Xa(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,ct._)`${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=ct.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,Ja.Started);let l=r(u);if(l){let d=this.opts.es5?ut.varKinds.var:ut.varKinds.const;s=(0,ct._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,ct._)`${s}${l}${this.opts._n}`;else throw new $m(u);c.set(u,Ja.Completed)})}return s}};ut.ValueScope=Em});var K=R(Y=>{"use strict";Object.defineProperty(Y,"__esModule",{value:!0});Y.or=Y.and=Y.not=Y.CodeGen=Y.operators=Y.varKinds=Y.ValueScopeName=Y.ValueScope=Y.Scope=Y.Name=Y.regexpCode=Y.stringify=Y.getProperty=Y.nil=Y.strConcat=Y.str=Y._=void 0;var ne=Ls(),Dt=Tm(),Dr=Ls();Object.defineProperty(Y,"_",{enumerable:!0,get:function(){return Dr._}});Object.defineProperty(Y,"str",{enumerable:!0,get:function(){return Dr.str}});Object.defineProperty(Y,"strConcat",{enumerable:!0,get:function(){return Dr.strConcat}});Object.defineProperty(Y,"nil",{enumerable:!0,get:function(){return Dr.nil}});Object.defineProperty(Y,"getProperty",{enumerable:!0,get:function(){return Dr.getProperty}});Object.defineProperty(Y,"stringify",{enumerable:!0,get:function(){return Dr.stringify}});Object.defineProperty(Y,"regexpCode",{enumerable:!0,get:function(){return Dr.regexpCode}});Object.defineProperty(Y,"Name",{enumerable:!0,get:function(){return Dr.Name}});var rc=Tm();Object.defineProperty(Y,"Scope",{enumerable:!0,get:function(){return rc.Scope}});Object.defineProperty(Y,"ValueScope",{enumerable:!0,get:function(){return rc.ValueScope}});Object.defineProperty(Y,"ValueScopeName",{enumerable:!0,get:function(){return rc.ValueScopeName}});Object.defineProperty(Y,"varKinds",{enumerable:!0,get:function(){return rc.varKinds}});Y.operators={GT:new ne._Code(">"),GTE:new ne._Code(">="),LT:new ne._Code("<"),LTE:new ne._Code("<="),EQ:new ne._Code("==="),NEQ:new ne._Code("!=="),NOT:new ne._Code("!"),OR:new ne._Code("||"),AND:new ne._Code("&&"),ADD:new ne._Code("+")};var hr=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Pm=class extends hr{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Dt.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=ko(this.rhs,e,r)),this}get names(){return this.rhs instanceof ne._CodeOrName?this.rhs.names:{}}},Qa=class extends hr{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 ne.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=ko(this.rhs,e,r),this}get names(){let e=this.lhs instanceof ne.Name?{}:{...this.lhs.names};return tc(e,this.rhs)}},Rm=class extends Qa{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Om=class extends hr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Cm=class extends hr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Im=class extends hr{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Am=class extends hr{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=ko(this.code,e,r),this}get names(){return this.code instanceof ne._CodeOrName?this.code.names:{}}},Fs=class extends hr{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)||(BO(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Cn(e,r.names),{})}},gr=class extends Fs{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Nm=class extends Fs{},So=class extends gr{};So.kind="else";var Rn=class t extends gr{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 So(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Gx(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=ko(this.condition,e,r),this}get names(){let e=super.names;return tc(e,this.condition),this.else&&Cn(e,this.else.names),e}};Rn.kind="if";var On=class extends gr{};On.kind="for";var zm=class extends On{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=ko(this.iteration,e,r),this}get names(){return Cn(super.names,this.iteration.names)}},jm=class extends On{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?Dt.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=tc(super.names,this.from);return tc(e,this.to)}},ec=class extends On{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=ko(this.iterable,e,r),this}get names(){return Cn(super.names,this.iterable.names)}},Zs=class extends gr{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)}};Zs.kind="func";var Us=class extends Fs{render(e){return"return "+super.render(e)}};Us.kind="return";var Mm=class extends gr{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,o;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(o=this.finally)===null||o===void 0||o.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Cn(e,this.catch.names),this.finally&&Cn(e,this.finally.names),e}},Hs=class extends gr{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Hs.kind="catch";var qs=class extends gr{render(e){return"finally"+super.render(e)}};qs.kind="finally";var Dm=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
52
- `:""},this._extScope=e,this._scope=new Dt.Scope({parent:e}),this._nodes=[new Nm]}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 Pm(e,s,n)),s}const(e,r,n){return this._def(Dt.varKinds.const,e,r,n)}let(e,r,n){return this._def(Dt.varKinds.let,e,r,n)}var(e,r,n){return this._def(Dt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Qa(e,r,n))}add(e,r){return this._leafNode(new Rm(e,Y.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==ne.nil&&this._leafNode(new Am(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,ne.addCodeArg)(r,o));return r.push("}"),new ne._Code(r)}if(e,r,n){if(this._blockNode(new Rn(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Rn(e))}else(){return this._elseNode(new So)}endIf(){return this._endBlockNode(Rn,So)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new zm(e),r)}forRange(e,r,n,o,s=this.opts.es5?Dt.varKinds.var:Dt.varKinds.let){let i=this._scope.toName(e);return this._for(new jm(s,i,r,n),()=>o(i))}forOf(e,r,n,o=Dt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof ne.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,ne._)`${i}.length`,a=>{this.var(s,(0,ne._)`${i}[${a}]`),n(s)})}return this._for(new ec("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?Dt.varKinds.var:Dt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,ne._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new ec("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(On)}label(e){return this._leafNode(new Om(e))}break(e){return this._leafNode(new Cm(e))}return(e){let r=new Us;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Us)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Mm;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Hs(s),r(s)}return n&&(this._currNode=o.finally=new qs,this.code(n)),this._endBlockNode(Hs,qs)}throw(e){return this._leafNode(new Im(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=ne.nil,n,o){return this._blockNode(new Zs(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Zs)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Rn))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};Y.CodeGen=Dm;function Cn(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function tc(t,e){return e instanceof ne._CodeOrName?Cn(t,e.names):t}function ko(t,e,r){if(t instanceof ne.Name)return n(t);if(!o(t))return t;return new ne._Code(t._items.reduce((s,i)=>(i instanceof ne.Name&&(i=n(i)),i instanceof ne._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 ne._Code&&s._items.some(i=>i instanceof ne.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function BO(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Gx(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,ne._)`!${Lm(t)}`}Y.not=Gx;var VO=Kx(Y.operators.AND);function WO(...t){return t.reduce(VO)}Y.and=WO;var GO=Kx(Y.operators.OR);function KO(...t){return t.reduce(GO)}Y.or=KO;function Kx(t){return(e,r)=>e===ne.nil?r:r===ne.nil?e:(0,ne._)`${Lm(e)} ${t} ${Lm(r)}`}function Lm(t){return t instanceof ne.Name?t:(0,ne._)`(${t})`}});var oe=R(X=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0});X.checkStrictMode=X.getErrorPath=X.Type=X.useFunc=X.setEvaluated=X.evaluatedPropsToName=X.mergeEvaluated=X.eachItem=X.unescapeJsonPointer=X.escapeJsonPointer=X.escapeFragment=X.unescapeFragment=X.schemaRefOrVal=X.schemaHasRulesButRef=X.schemaHasRules=X.checkUnknownRules=X.alwaysValidSchema=X.toHash=void 0;var fe=K(),JO=Ls();function YO(t){let e={};for(let r of t)e[r]=!0;return e}X.toHash=YO;function XO(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Xx(t,e),!Qx(e,t.self.RULES.all))}X.alwaysValidSchema=XO;function Xx(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]||r0(t,`unknown keyword: "${s}"`)}X.checkUnknownRules=Xx;function Qx(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}X.schemaHasRules=Qx;function QO(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}X.schemaHasRulesButRef=QO;function eC({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,fe._)`${r}`}return(0,fe._)`${t}${e}${(0,fe.getProperty)(n)}`}X.schemaRefOrVal=eC;function tC(t){return e0(decodeURIComponent(t))}X.unescapeFragment=tC;function rC(t){return encodeURIComponent(Zm(t))}X.escapeFragment=rC;function Zm(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}X.escapeJsonPointer=Zm;function e0(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}X.unescapeJsonPointer=e0;function nC(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}X.eachItem=nC;function Jx({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof fe.Name?(s instanceof fe.Name?t(o,s,i):e(o,s,i),i):s instanceof fe.Name?(e(o,i,s),s):r(s,i);return a===fe.Name&&!(c instanceof fe.Name)?n(o,c):c}}X.mergeEvaluated={props:Jx({mergeNames:(t,e,r)=>t.if((0,fe._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,fe._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,fe._)`${r} || {}`).code((0,fe._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,fe._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,fe._)`${r} || {}`),Um(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:t0}),items:Jx({mergeNames:(t,e,r)=>t.if((0,fe._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,fe._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,fe._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,fe._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function t0(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,fe._)`{}`);return e!==void 0&&Um(t,r,e),r}X.evaluatedPropsToName=t0;function Um(t,e,r){Object.keys(r).forEach(n=>t.assign((0,fe._)`${e}${(0,fe.getProperty)(n)}`,!0))}X.setEvaluated=Um;var Yx={};function oC(t,e){return t.scopeValue("func",{ref:e,code:Yx[e.code]||(Yx[e.code]=new JO._Code(e.code))})}X.useFunc=oC;var Fm;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Fm||(X.Type=Fm={}));function sC(t,e,r){if(t instanceof fe.Name){let n=e===Fm.Num;return r?n?(0,fe._)`"[" + ${t} + "]"`:(0,fe._)`"['" + ${t} + "']"`:n?(0,fe._)`"/" + ${t}`:(0,fe._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,fe.getProperty)(t).toString():"/"+Zm(t)}X.getErrorPath=sC;function r0(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}X.checkStrictMode=r0});var _r=R(Hm=>{"use strict";Object.defineProperty(Hm,"__esModule",{value:!0});var Ke=K(),iC={data:new Ke.Name("data"),valCxt:new Ke.Name("valCxt"),instancePath:new Ke.Name("instancePath"),parentData:new Ke.Name("parentData"),parentDataProperty:new Ke.Name("parentDataProperty"),rootData:new Ke.Name("rootData"),dynamicAnchors:new Ke.Name("dynamicAnchors"),vErrors:new Ke.Name("vErrors"),errors:new Ke.Name("errors"),this:new Ke.Name("this"),self:new Ke.Name("self"),scope:new Ke.Name("scope"),json:new Ke.Name("json"),jsonPos:new Ke.Name("jsonPos"),jsonLen:new Ke.Name("jsonLen"),jsonPart:new Ke.Name("jsonPart")};Hm.default=iC});var Bs=R(Je=>{"use strict";Object.defineProperty(Je,"__esModule",{value:!0});Je.extendErrors=Je.resetErrorsCount=Je.reportExtraError=Je.reportError=Je.keyword$DataError=Je.keywordError=void 0;var se=K(),nc=oe(),rt=_r();Je.keywordError={message:({keyword:t})=>(0,se.str)`must pass "${t}" keyword validation`};Je.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,se.str)`"${t}" keyword must be ${e} ($data)`:(0,se.str)`"${t}" keyword is invalid ($data)`};function aC(t,e=Je.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=s0(t,e,r);n??(i||a)?n0(s,c):o0(o,(0,se._)`[${c}]`)}Je.reportError=aC;function cC(t,e=Je.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=s0(t,e,r);n0(o,a),s||i||o0(n,rt.default.vErrors)}Je.reportExtraError=cC;function uC(t,e){t.assign(rt.default.errors,e),t.if((0,se._)`${rt.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,se._)`${rt.default.vErrors}.length`,e),()=>t.assign(rt.default.vErrors,null)))}Je.resetErrorsCount=uC;function lC({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,rt.default.errors,a=>{t.const(i,(0,se._)`${rt.default.vErrors}[${a}]`),t.if((0,se._)`${i}.instancePath === undefined`,()=>t.assign((0,se._)`${i}.instancePath`,(0,se.strConcat)(rt.default.instancePath,s.errorPath))),t.assign((0,se._)`${i}.schemaPath`,(0,se.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,se._)`${i}.schema`,r),t.assign((0,se._)`${i}.data`,n))})}Je.extendErrors=lC;function n0(t,e){let r=t.const("err",e);t.if((0,se._)`${rt.default.vErrors} === null`,()=>t.assign(rt.default.vErrors,(0,se._)`[${r}]`),(0,se._)`${rt.default.vErrors}.push(${r})`),t.code((0,se._)`${rt.default.errors}++`)}function o0(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,se._)`new ${t.ValidationError}(${e})`):(r.assign((0,se._)`${n}.errors`,e),r.return(!1))}var In={keyword:new se.Name("keyword"),schemaPath:new se.Name("schemaPath"),params:new se.Name("params"),propertyName:new se.Name("propertyName"),message:new se.Name("message"),schema:new se.Name("schema"),parentSchema:new se.Name("parentSchema")};function s0(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,se._)`{}`:dC(t,e,r)}function dC(t,e,r={}){let{gen:n,it:o}=t,s=[pC(o,r),mC(t,r)];return fC(t,e,s),n.object(...s)}function pC({errorPath:t},{instancePath:e}){let r=e?(0,se.str)`${t}${(0,nc.getErrorPath)(e,nc.Type.Str)}`:t;return[rt.default.instancePath,(0,se.strConcat)(rt.default.instancePath,r)]}function mC({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,se.str)`${e}/${t}`;return r&&(o=(0,se.str)`${o}${(0,nc.getErrorPath)(r,nc.Type.Str)}`),[In.schemaPath,o]}function fC(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([In.keyword,o],[In.params,typeof e=="function"?e(t):e||(0,se._)`{}`]),c.messages&&n.push([In.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([In.schema,i],[In.parentSchema,(0,se._)`${l}${d}`],[rt.default.data,s]),u&&n.push([In.propertyName,u])}});var a0=R(wo=>{"use strict";Object.defineProperty(wo,"__esModule",{value:!0});wo.boolOrEmptySchema=wo.topBoolOrEmptySchema=void 0;var hC=Bs(),gC=K(),_C=_r(),yC={message:"boolean schema is false"};function vC(t){let{gen:e,schema:r,validateName:n}=t;r===!1?i0(t,!1):typeof r=="object"&&r.$async===!0?e.return(_C.default.data):(e.assign((0,gC._)`${n}.errors`,null),e.return(!0))}wo.topBoolOrEmptySchema=vC;function xC(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),i0(t)):r.var(e,!0)}wo.boolOrEmptySchema=xC;function i0(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,hC.reportError)(o,yC,void 0,e)}});var qm=R($o=>{"use strict";Object.defineProperty($o,"__esModule",{value:!0});$o.getRules=$o.isJSONType=void 0;var bC=["string","number","integer","boolean","null","object","array"],SC=new Set(bC);function kC(t){return typeof t=="string"&&SC.has(t)}$o.isJSONType=kC;function wC(){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:{}}}$o.getRules=wC});var Bm=R(Lr=>{"use strict";Object.defineProperty(Lr,"__esModule",{value:!0});Lr.shouldUseRule=Lr.shouldUseGroup=Lr.schemaHasRulesForType=void 0;function $C({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&c0(t,n)}Lr.schemaHasRulesForType=$C;function c0(t,e){return e.rules.some(r=>u0(t,r))}Lr.shouldUseGroup=c0;function u0(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}Lr.shouldUseRule=u0});var Vs=R(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.reportTypeError=Ye.checkDataTypes=Ye.checkDataType=Ye.coerceAndCheckDataType=Ye.getJSONTypes=Ye.getSchemaTypes=Ye.DataType=void 0;var EC=qm(),TC=Bm(),PC=Bs(),W=K(),l0=oe(),Eo;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Eo||(Ye.DataType=Eo={}));function RC(t){let e=d0(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}Ye.getSchemaTypes=RC;function d0(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(EC.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Ye.getJSONTypes=d0;function OC(t,e){let{gen:r,data:n,opts:o}=t,s=CC(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,TC.schemaHasRulesForType)(t,e[0]));if(i){let a=Wm(e,n,o.strictNumbers,Eo.Wrong);r.if(a,()=>{s.length?IC(t,e,s):Gm(t)})}return i}Ye.coerceAndCheckDataType=OC;var p0=new Set(["string","number","integer","boolean","null"]);function CC(t,e){return e?t.filter(r=>p0.has(r)||e==="array"&&r==="array"):[]}function IC(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,W._)`typeof ${o}`),a=n.let("coerced",(0,W._)`undefined`);s.coerceTypes==="array"&&n.if((0,W._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,W._)`${o}[0]`).assign(i,(0,W._)`typeof ${o}`).if(Wm(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,W._)`${a} !== undefined`);for(let u of r)(p0.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Gm(t),n.endIf(),n.if((0,W._)`${a} !== undefined`,()=>{n.assign(o,a),AC(t,a)});function c(u){switch(u){case"string":n.elseIf((0,W._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,W._)`"" + ${o}`).elseIf((0,W._)`${o} === null`).assign(a,(0,W._)`""`);return;case"number":n.elseIf((0,W._)`${i} == "boolean" || ${o} === null
53
- || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,W._)`+${o}`);return;case"integer":n.elseIf((0,W._)`${i} === "boolean" || ${o} === null
54
- || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,W._)`+${o}`);return;case"boolean":n.elseIf((0,W._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,W._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,W._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,W._)`${i} === "string" || ${i} === "number"
55
- || ${i} === "boolean" || ${o} === null`).assign(a,(0,W._)`[${o}]`)}}}function AC({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,W._)`${e} !== undefined`,()=>t.assign((0,W._)`${e}[${r}]`,n))}function Vm(t,e,r,n=Eo.Correct){let o=n===Eo.Correct?W.operators.EQ:W.operators.NEQ,s;switch(t){case"null":return(0,W._)`${e} ${o} null`;case"array":s=(0,W._)`Array.isArray(${e})`;break;case"object":s=(0,W._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,W._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,W._)`typeof ${e} ${o} ${t}`}return n===Eo.Correct?s:(0,W.not)(s);function i(a=W.nil){return(0,W.and)((0,W._)`typeof ${e} == "number"`,a,r?(0,W._)`isFinite(${e})`:W.nil)}}Ye.checkDataType=Vm;function Wm(t,e,r,n){if(t.length===1)return Vm(t[0],e,r,n);let o,s=(0,l0.toHash)(t);if(s.array&&s.object){let i=(0,W._)`typeof ${e} != "object"`;o=s.null?i:(0,W._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=W.nil;s.number&&delete s.integer;for(let i in s)o=(0,W.and)(o,Vm(i,e,r,n));return o}Ye.checkDataTypes=Wm;var NC={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,W._)`{type: ${t}}`:(0,W._)`{type: ${e}}`};function Gm(t){let e=zC(t);(0,PC.reportError)(e,NC)}Ye.reportTypeError=Gm;function zC(t){let{gen:e,data:r,schema:n}=t,o=(0,l0.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var f0=R(oc=>{"use strict";Object.defineProperty(oc,"__esModule",{value:!0});oc.assignDefaults=void 0;var To=K(),jC=oe();function MC(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)m0(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>m0(t,s,o.default))}oc.assignDefaults=MC;function m0(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,To._)`${s}${(0,To.getProperty)(e)}`;if(o){(0,jC.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,To._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,To._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,To._)`${a} = ${(0,To.stringify)(r)}`)}});var Tt=R(le=>{"use strict";Object.defineProperty(le,"__esModule",{value:!0});le.validateUnion=le.validateArray=le.usePattern=le.callValidateCode=le.schemaProperties=le.allSchemaProperties=le.noPropertyInData=le.propertyInData=le.isOwnProperty=le.hasPropFunc=le.reportMissingProp=le.checkMissingProp=le.checkReportMissingProp=void 0;var ve=K(),Km=oe(),Fr=_r(),DC=oe();function LC(t,e){let{gen:r,data:n,it:o}=t;r.if(Ym(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,ve._)`${e}`},!0),t.error()})}le.checkReportMissingProp=LC;function FC({gen:t,data:e,it:{opts:r}},n,o){return(0,ve.or)(...n.map(s=>(0,ve.and)(Ym(t,e,s,r.ownProperties),(0,ve._)`${o} = ${s}`)))}le.checkMissingProp=FC;function ZC(t,e){t.setParams({missingProperty:e},!0),t.error()}le.reportMissingProp=ZC;function h0(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,ve._)`Object.prototype.hasOwnProperty`})}le.hasPropFunc=h0;function Jm(t,e,r){return(0,ve._)`${h0(t)}.call(${e}, ${r})`}le.isOwnProperty=Jm;function UC(t,e,r,n){let o=(0,ve._)`${e}${(0,ve.getProperty)(r)} !== undefined`;return n?(0,ve._)`${o} && ${Jm(t,e,r)}`:o}le.propertyInData=UC;function Ym(t,e,r,n){let o=(0,ve._)`${e}${(0,ve.getProperty)(r)} === undefined`;return n?(0,ve.or)(o,(0,ve.not)(Jm(t,e,r))):o}le.noPropertyInData=Ym;function g0(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}le.allSchemaProperties=g0;function HC(t,e){return g0(e).filter(r=>!(0,Km.alwaysValidSchema)(t,e[r]))}le.schemaProperties=HC;function qC({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,ve._)`${t}, ${e}, ${n}${o}`:e,d=[[Fr.default.instancePath,(0,ve.strConcat)(Fr.default.instancePath,s)],[Fr.default.parentData,i.parentData],[Fr.default.parentDataProperty,i.parentDataProperty],[Fr.default.rootData,Fr.default.rootData]];i.opts.dynamicRef&&d.push([Fr.default.dynamicAnchors,Fr.default.dynamicAnchors]);let m=(0,ve._)`${l}, ${r.object(...d)}`;return c!==ve.nil?(0,ve._)`${a}.call(${c}, ${m})`:(0,ve._)`${a}(${m})`}le.callValidateCode=qC;var BC=(0,ve._)`new RegExp`;function VC({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,ve._)`${o.code==="new RegExp"?BC:(0,DC.useFunc)(t,o)}(${r}, ${n})`})}le.usePattern=VC;function WC(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,ve._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Km.Type.Num},s),e.if((0,ve.not)(s),a)})}}le.validateArray=WC;function GC(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,Km.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,ve._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,ve.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}le.validateUnion=GC});var v0=R(Qt=>{"use strict";Object.defineProperty(Qt,"__esModule",{value:!0});Qt.validateKeywordUsage=Qt.validSchemaType=Qt.funcKeywordCode=Qt.macroKeywordCode=void 0;var nt=K(),An=_r(),KC=Tt(),JC=Bs();function YC(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=y0(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:nt.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Qt.macroKeywordCode=YC;function XC(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;eI(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=y0(n,o,u),d=n.let("valid");t.block$data(d,m),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function m(){if(e.errors===!1)h(),e.modifying&&_0(t),g(()=>t.error());else{let _=e.async?f():p();e.modifying&&_0(t),g(()=>QC(t,_))}}function f(){let _=n.let("ruleErrs",null);return n.try(()=>h((0,nt._)`await `),y=>n.assign(d,!1).if((0,nt._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,nt._)`${y}.errors`),()=>n.throw(y))),_}function p(){let _=(0,nt._)`${l}.errors`;return n.assign(_,null),h(nt.nil),_}function h(_=e.async?(0,nt._)`await `:nt.nil){let y=c.opts.passContext?An.default.this:An.default.self,v=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,nt._)`${_}${(0,KC.callValidateCode)(t,l,y,v)}`,e.modifying)}function g(_){var y;n.if((0,nt.not)((y=e.valid)!==null&&y!==void 0?y:d),_)}}Qt.funcKeywordCode=XC;function _0(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,nt._)`${n.parentData}[${n.parentDataProperty}]`))}function QC(t,e){let{gen:r}=t;r.if((0,nt._)`Array.isArray(${e})`,()=>{r.assign(An.default.vErrors,(0,nt._)`${An.default.vErrors} === null ? ${e} : ${An.default.vErrors}.concat(${e})`).assign(An.default.errors,(0,nt._)`${An.default.vErrors}.length`),(0,JC.extendErrors)(t)},()=>t.error())}function eI({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function y0(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,nt.stringify)(r)})}function tI(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")}Qt.validSchemaType=tI;function rI({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)}}Qt.validateKeywordUsage=rI});var b0=R(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.extendSubschemaMode=Zr.extendSubschemaData=Zr.getSubschema=void 0;var er=K(),x0=oe();function nI(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,er._)`${t.schemaPath}${(0,er.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,er._)`${t.schemaPath}${(0,er.getProperty)(e)}${(0,er.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,x0.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')}Zr.getSubschema=nI;function oI(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,m=a.let("data",(0,er._)`${e.data}${(0,er.getProperty)(r)}`,!0);c(m),t.errorPath=(0,er.str)`${u}${(0,x0.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,er._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof er.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]}}Zr.extendSubschemaData=oI;function sI(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}Zr.extendSubschemaMode=sI});var Xm=R((LH,S0)=>{"use strict";S0.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 w0=R((FH,k0)=>{"use strict";var Ur=k0.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(){};sc(e,n,o,t,"",t)};Ur.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Ur.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Ur.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Ur.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 sc(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 Ur.arrayKeywords)for(var m=0;m<d.length;m++)sc(t,e,r,d[m],o+"/"+l+"/"+m,s,o,l,n,m)}else if(l in Ur.propsKeywords){if(d&&typeof d=="object")for(var f in d)sc(t,e,r,d[f],o+"/"+l+"/"+iI(f),s,o,l,n,f)}else(l in Ur.keywords||t.allKeys&&!(l in Ur.skipKeywords))&&sc(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function iI(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Ws=R(lt=>{"use strict";Object.defineProperty(lt,"__esModule",{value:!0});lt.getSchemaRefs=lt.resolveUrl=lt.normalizeId=lt._getFullPath=lt.getFullPath=lt.inlineRef=void 0;var aI=oe(),cI=Xm(),uI=w0(),lI=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function dI(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Qm(t):e?$0(t)<=e:!1}lt.inlineRef=dI;var pI=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Qm(t){for(let e in t){if(pI.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Qm)||typeof r=="object"&&Qm(r))return!0}return!1}function $0(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!lI.has(r)&&(typeof t[r]=="object"&&(0,aI.eachItem)(t[r],n=>e+=$0(n)),e===1/0))return 1/0}return e}function E0(t,e="",r){r!==!1&&(e=Po(e));let n=t.parse(e);return T0(t,n)}lt.getFullPath=E0;function T0(t,e){return t.serialize(e).split("#")[0]+"#"}lt._getFullPath=T0;var mI=/#\/?$/;function Po(t){return t?t.replace(mI,""):""}lt.normalizeId=Po;function fI(t,e,r){return r=Po(r),t.resolve(e,r)}lt.resolveUrl=fI;var hI=/^[a-z_][-a-z0-9._]*$/i;function gI(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Po(t[r]||e),s={"":o},i=E0(n,o,!1),a={},c=new Set;return uI(t,{allKeys:!0},(d,m,f,p)=>{if(p===void 0)return;let h=i+m,g=s[p];typeof d[r]=="string"&&(g=_.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),s[m]=g;function _(v){let $=this.opts.uriResolver.resolve;if(v=Po(g?$(g,v):v),c.has(v))throw l(v);c.add(v);let T=this.refs[v];return typeof T=="string"&&(T=this.refs[T]),typeof T=="object"?u(d,T.schema,v):v!==Po(h)&&(v[0]==="#"?(u(d,a[v],v),a[v]=d):this.refs[v]=h),v}function y(v){if(typeof v=="string"){if(!hI.test(v))throw new Error(`invalid anchor "${v}"`);_.call(this,`#${v}`)}}}),a;function u(d,m,f){if(m!==void 0&&!cI(d,m))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}lt.getSchemaRefs=gI});var Js=R(Hr=>{"use strict";Object.defineProperty(Hr,"__esModule",{value:!0});Hr.getData=Hr.KeywordCxt=Hr.validateFunctionCode=void 0;var I0=a0(),P0=Vs(),tf=Bm(),ic=Vs(),_I=f0(),Ks=v0(),ef=b0(),M=K(),q=_r(),yI=Ws(),yr=oe(),Gs=Bs();function vI(t){if(z0(t)&&(j0(t),N0(t))){SI(t);return}A0(t,()=>(0,I0.topBoolOrEmptySchema)(t))}Hr.validateFunctionCode=vI;function A0({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,M._)`${q.default.data}, ${q.default.valCxt}`,n.$async,()=>{t.code((0,M._)`"use strict"; ${R0(r,o)}`),bI(t,o),t.code(s)}):t.func(e,(0,M._)`${q.default.data}, ${xI(o)}`,n.$async,()=>t.code(R0(r,o)).code(s))}function xI(t){return(0,M._)`{${q.default.instancePath}="", ${q.default.parentData}, ${q.default.parentDataProperty}, ${q.default.rootData}=${q.default.data}${t.dynamicRef?(0,M._)`, ${q.default.dynamicAnchors}={}`:M.nil}}={}`}function bI(t,e){t.if(q.default.valCxt,()=>{t.var(q.default.instancePath,(0,M._)`${q.default.valCxt}.${q.default.instancePath}`),t.var(q.default.parentData,(0,M._)`${q.default.valCxt}.${q.default.parentData}`),t.var(q.default.parentDataProperty,(0,M._)`${q.default.valCxt}.${q.default.parentDataProperty}`),t.var(q.default.rootData,(0,M._)`${q.default.valCxt}.${q.default.rootData}`),e.dynamicRef&&t.var(q.default.dynamicAnchors,(0,M._)`${q.default.valCxt}.${q.default.dynamicAnchors}`)},()=>{t.var(q.default.instancePath,(0,M._)`""`),t.var(q.default.parentData,(0,M._)`undefined`),t.var(q.default.parentDataProperty,(0,M._)`undefined`),t.var(q.default.rootData,q.default.data),e.dynamicRef&&t.var(q.default.dynamicAnchors,(0,M._)`{}`)})}function SI(t){let{schema:e,opts:r,gen:n}=t;A0(t,()=>{r.$comment&&e.$comment&&D0(t),TI(t),n.let(q.default.vErrors,null),n.let(q.default.errors,0),r.unevaluated&&kI(t),M0(t),OI(t)})}function kI(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,M._)`${r}.evaluated`),e.if((0,M._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,M._)`${t.evaluated}.props`,(0,M._)`undefined`)),e.if((0,M._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,M._)`${t.evaluated}.items`,(0,M._)`undefined`))}function R0(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,M._)`/*# sourceURL=${r} */`:M.nil}function wI(t,e){if(z0(t)&&(j0(t),N0(t))){$I(t,e);return}(0,I0.boolOrEmptySchema)(t,e)}function N0({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 z0(t){return typeof t.schema!="boolean"}function $I(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&D0(t),PI(t),RI(t);let s=n.const("_errs",q.default.errors);M0(t,s),n.var(e,(0,M._)`${s} === ${q.default.errors}`)}function j0(t){(0,yr.checkUnknownRules)(t),EI(t)}function M0(t,e){if(t.opts.jtd)return O0(t,[],!1,e);let r=(0,P0.getSchemaTypes)(t.schema),n=(0,P0.coerceAndCheckDataType)(t,r);O0(t,r,!n,e)}function EI(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,yr.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function TI(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,yr.checkStrictMode)(t,"default is ignored in the schema root")}function PI(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,yI.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function RI(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function D0({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,M._)`${q.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,M.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,M._)`${q.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function OI(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,M._)`${q.default.errors} === 0`,()=>e.return(q.default.data),()=>e.throw((0,M._)`new ${o}(${q.default.vErrors})`)):(e.assign((0,M._)`${n}.errors`,q.default.vErrors),s.unevaluated&&CI(t),e.return((0,M._)`${q.default.errors} === 0`))}function CI({gen:t,evaluated:e,props:r,items:n}){r instanceof M.Name&&t.assign((0,M._)`${e}.props`,r),n instanceof M.Name&&t.assign((0,M._)`${e}.items`,n)}function O0(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,yr.schemaHasRulesButRef)(s,l))){o.block(()=>F0(t,"$ref",l.all.$ref.definition));return}c.jtd||II(t,e),o.block(()=>{for(let m of l.rules)d(m);d(l.post)});function d(m){(0,tf.shouldUseGroup)(s,m)&&(m.type?(o.if((0,ic.checkDataType)(m.type,i,c.strictNumbers)),C0(t,m),e.length===1&&e[0]===m.type&&r&&(o.else(),(0,ic.reportTypeError)(t)),o.endIf()):C0(t,m),a||o.if((0,M._)`${q.default.errors} === ${n||0}`))}}function C0(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,_I.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,tf.shouldUseRule)(n,s)&&F0(t,s.keyword,s.definition,e.type)})}function II(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(AI(t,e),t.opts.allowUnionTypes||NI(t,e),zI(t,t.dataTypes))}function AI(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{L0(t.dataTypes,r)||rf(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),MI(t,e)}}function NI(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&rf(t,"use allowUnionTypes to allow union type keyword")}function zI(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,tf.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>jI(e,i))&&rf(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function jI(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function L0(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function MI(t,e){let r=[];for(let n of t.dataTypes)L0(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,yr.checkStrictMode)(t,e,t.opts.strictTypes)}var ac=class{constructor(e,r,n){if((0,Ks.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,yr.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",Z0(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Ks.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",q.default.errors))}result(e,r,n){this.failResult((0,M.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,M.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,M._)`${r} !== undefined && (${(0,M.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?Gs.reportExtraError:Gs.reportError)(this,this.def.error,r)}$dataError(){(0,Gs.reportError)(this,this.def.$dataError||Gs.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Gs.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=M.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=M.nil,r=M.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,M.or)((0,M._)`${o} === undefined`,r)),e!==M.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==M.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,M.or)(i(),a());function i(){if(n.length){if(!(r instanceof M.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,M._)`${(0,ic.checkDataTypes)(c,r,s.opts.strictNumbers,ic.DataType.Wrong)}`}return M.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,M._)`!${c}(${r})`}return M.nil}}subschema(e,r){let n=(0,ef.getSubschema)(this.it,e);(0,ef.extendSubschemaData)(n,this.it,e),(0,ef.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return wI(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=yr.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=yr.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,M.Name)),!0}};Hr.KeywordCxt=ac;function F0(t,e,r,n){let o=new ac(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Ks.funcKeywordCode)(o,r):"macro"in r?(0,Ks.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Ks.funcKeywordCode)(o,r)}var DI=/^\/(?:[^~]|~0|~1)*$/,LI=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Z0(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return q.default.rootData;if(t[0]==="/"){if(!DI.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=q.default.rootData}else{let u=LI.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,M._)`${s}${(0,M.getProperty)((0,yr.unescapeJsonPointer)(u))}`,i=(0,M._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Hr.getData=Z0});var cc=R(of=>{"use strict";Object.defineProperty(of,"__esModule",{value:!0});var nf=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};of.default=nf});var Ys=R(cf=>{"use strict";Object.defineProperty(cf,"__esModule",{value:!0});var sf=Ws(),af=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,sf.resolveUrl)(e,r,n),this.missingSchema=(0,sf.normalizeId)((0,sf.getFullPath)(e,this.missingRef))}};cf.default=af});var lc=R(Pt=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.resolveSchema=Pt.getCompilingSchema=Pt.resolveRef=Pt.compileSchema=Pt.SchemaEnv=void 0;var Lt=K(),FI=cc(),Nn=_r(),Ft=Ws(),U0=oe(),ZI=Js(),Ro=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,Ft.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Pt.SchemaEnv=Ro;function lf(t){let e=H0.call(this,t);if(e)return e;let r=(0,Ft.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Lt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:FI.default,code:(0,Lt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Nn.default.data,parentData:Nn.default.parentData,parentDataProperty:Nn.default.parentDataProperty,dataNames:[Nn.default.data],dataPathArr:[Lt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Lt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Lt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Lt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,ZI.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Nn.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let f=new Function(`${Nn.default.self}`,`${Nn.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:f}),f.errors=null,f.schema=t.schema,f.schemaEnv=t,t.$async&&(f.$async=!0),this.opts.code.source===!0&&(f.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;f.evaluated={props:p instanceof Lt.Name?void 0:p,items:h instanceof Lt.Name?void 0:h,dynamicProps:p instanceof Lt.Name,dynamicItems:h instanceof Lt.Name},f.source&&(f.source.evaluated=(0,Lt.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)}}Pt.compileSchema=lf;function UI(t,e,r){var n;r=(0,Ft.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=BI.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 Ro({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=HI.call(this,s)}Pt.resolveRef=UI;function HI(t){return(0,Ft.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:lf.call(this,t)}function H0(t){for(let e of this._compilations)if(qI(e,t))return e}Pt.getCompilingSchema=H0;function qI(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function BI(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||uc.call(this,t,e)}function uc(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Ft._getFullPath)(this.opts.uriResolver,r),o=(0,Ft.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return uf.call(this,r,t);let s=(0,Ft.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=uc.call(this,t,i);return typeof a?.schema!="object"?void 0:uf.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||lf.call(this,i),s===(0,Ft.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,Ft.resolveUrl)(this.opts.uriResolver,o,u)),new Ro({schema:a,schemaId:c,root:t,baseId:o})}return uf.call(this,r,i)}}Pt.resolveSchema=uc;var VI=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function uf(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,U0.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!VI.has(a)&&u&&(e=(0,Ft.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,U0.schemaHasRulesButRef)(r,this.RULES)){let a=(0,Ft.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=uc.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Ro({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var q0=R((VH,WI)=>{WI.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 pf=R((WH,G0)=>{"use strict";var GI=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),V0=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 KI=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function B0(t){return t.length=0,!0}function JI(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 YI(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=JI;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=B0}else{o.push(u);continue}}return o.length&&(a===B0?r.zone=o.join(""):i?n.push(o.join("")):n.push(df(o))),r.address=n.join(""),r}function W0(t){if(XI(t,":")<2)return{host:t,isIPV6:!1};let e=YI(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 XI(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function QI(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 e1(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 t1(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!V0(r)){let n=W0(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}G0.exports={nonSimpleDomain:KI,recomposeAuthority:t1,normalizeComponentEncoding:e1,removeDotSegments:QI,isIPv4:V0,isUUID:GI,normalizeIPv6:W0,stringArrayToHexStripped:df}});var Q0=R((GH,X0)=>{"use strict";var{isUUID:r1}=pf(),n1=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,o1=["http","https","ws","wss","urn","urn:uuid"];function s1(t){return o1.indexOf(t)!==-1}function mf(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 K0(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function J0(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 i1(t){return t.secure=mf(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function a1(t){if((t.port===(mf(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 c1(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(n1);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 u1(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 l1(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!r1(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function d1(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Y0={scheme:"http",domainHost:!0,parse:K0,serialize:J0},p1={scheme:"https",domainHost:Y0.domainHost,parse:K0,serialize:J0},dc={scheme:"ws",domainHost:!0,parse:i1,serialize:a1},m1={scheme:"wss",domainHost:dc.domainHost,parse:dc.parse,serialize:dc.serialize},f1={scheme:"urn",parse:c1,serialize:u1,skipNormalize:!0},h1={scheme:"urn:uuid",parse:l1,serialize:d1,skipNormalize:!0},pc={http:Y0,https:p1,ws:dc,wss:m1,urn:f1,"urn:uuid":h1};Object.setPrototypeOf(pc,null);function ff(t){return t&&(pc[t]||pc[t.toLowerCase()])||void 0}X0.exports={wsIsSecure:mf,SCHEMES:pc,isValidSchemeName:s1,getSchemeHandler:ff}});var rb=R((KH,fc)=>{"use strict";var{normalizeIPv6:g1,removeDotSegments:Xs,recomposeAuthority:_1,normalizeComponentEncoding:mc,isIPv4:y1,nonSimpleDomain:v1}=pf(),{SCHEMES:x1,getSchemeHandler:eb}=Q0();function b1(t,e){return typeof t=="string"?t=tr(vr(t,e),e):typeof t=="object"&&(t=vr(tr(t,e),e)),t}function S1(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=tb(vr(t,n),vr(e,n),n,!0);return n.skipEscape=!0,tr(o,n)}function tb(t,e,r,n){let o={};return n||(t=vr(tr(t,r),r),e=vr(tr(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=Xs(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=Xs(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Xs(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=Xs(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 k1(t,e,r){return typeof t=="string"?(t=unescape(t),t=tr(mc(vr(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=tr(mc(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=tr(mc(vr(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=tr(mc(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function tr(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=eb(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=_1(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=Xs(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 w1=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function vr(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(w1);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(y1(n.host)===!1){let c=g1(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=eb(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&v1(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 hf={SCHEMES:x1,normalize:b1,resolve:S1,resolveComponent:tb,equal:k1,serialize:tr,parse:vr};fc.exports=hf;fc.exports.default=hf;fc.exports.fastUri=hf});var ob=R(gf=>{"use strict";Object.defineProperty(gf,"__esModule",{value:!0});var nb=rb();nb.code='require("ajv/dist/runtime/uri").default';gf.default=nb});var pb=R(Be=>{"use strict";Object.defineProperty(Be,"__esModule",{value:!0});Be.CodeGen=Be.Name=Be.nil=Be.stringify=Be.str=Be._=Be.KeywordCxt=void 0;var $1=Js();Object.defineProperty(Be,"KeywordCxt",{enumerable:!0,get:function(){return $1.KeywordCxt}});var Oo=K();Object.defineProperty(Be,"_",{enumerable:!0,get:function(){return Oo._}});Object.defineProperty(Be,"str",{enumerable:!0,get:function(){return Oo.str}});Object.defineProperty(Be,"stringify",{enumerable:!0,get:function(){return Oo.stringify}});Object.defineProperty(Be,"nil",{enumerable:!0,get:function(){return Oo.nil}});Object.defineProperty(Be,"Name",{enumerable:!0,get:function(){return Oo.Name}});Object.defineProperty(Be,"CodeGen",{enumerable:!0,get:function(){return Oo.CodeGen}});var E1=cc(),ub=Ys(),T1=qm(),Qs=lc(),P1=K(),ei=Ws(),hc=Vs(),yf=oe(),sb=q0(),R1=ob(),lb=(t,e)=>new RegExp(t,e);lb.code="new RegExp";var O1=["removeAdditional","useDefaults","coerceTypes"],C1=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),I1={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."},A1={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},ib=200;function N1(t){var e,r,n,o,s,i,a,c,u,l,d,m,f,p,h,g,_,y,v,$,T,J,B,N,Pe;let de=t.strict,pt=(e=t.code)===null||e===void 0?void 0:e.optimize,xi=pt===!0||pt===void 0?1:pt||0,Sr=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:lb,be=(o=t.uriResolver)!==null&&o!==void 0?o:R1.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:de)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:de)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:de)!==null&&l!==void 0?l:"log",strictTuples:(m=(d=t.strictTuples)!==null&&d!==void 0?d:de)!==null&&m!==void 0?m:"log",strictRequired:(p=(f=t.strictRequired)!==null&&f!==void 0?f:de)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:xi,regExp:Sr}:{optimize:xi,regExp:Sr},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:ib,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:ib,meta:(_=t.meta)!==null&&_!==void 0?_:!0,messages:(y=t.messages)!==null&&y!==void 0?y:!0,inlineRefs:(v=t.inlineRefs)!==null&&v!==void 0?v:!0,schemaId:($=t.schemaId)!==null&&$!==void 0?$:"$id",addUsedSchema:(T=t.addUsedSchema)!==null&&T!==void 0?T:!0,validateSchema:(J=t.validateSchema)!==null&&J!==void 0?J:!0,validateFormats:(B=t.validateFormats)!==null&&B!==void 0?B:!0,unicodeRegExp:(N=t.unicodeRegExp)!==null&&N!==void 0?N:!0,int32range:(Pe=t.int32range)!==null&&Pe!==void 0?Pe:!0,uriResolver:be}}var ti=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...N1(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new P1.ValueScope({scope:{},prefixes:C1,es5:r,lines:n}),this.logger=F1(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,T1.getRules)(),ab.call(this,I1,e,"NOT SUPPORTED"),ab.call(this,A1,e,"DEPRECATED","warn"),this._metaOpts=D1.call(this),e.formats&&j1.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&M1.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),z1.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=sb;n==="id"&&(o={...sb},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let m=this._addSchema(l,d);return m.validate||i.call(this,m)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof ub.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,ei.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=cb.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Qs.SchemaEnv({schema:{},schemaId:n});if(r=Qs.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=cb.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,ei.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(U1.call(this,n,r),!r)return(0,yf.eachItem)(n,s=>_f.call(this,s)),this;q1.call(this,r);let o={...r,type:(0,hc.getJSONTypes)(r.type),schemaType:(0,hc.getJSONTypes)(r.schemaType)};return(0,yf.eachItem)(n,o.type.length===0?s=>_f.call(this,s,o):s=>o.type.forEach(i=>_f.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]=db(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,ei.normalizeId)(i||n);let u=ei.getSchemaRefs.call(this,e,n);return c=new Qs.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):Qs.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{Qs.compileSchema.call(this,e)}finally{this.opts=r}}};ti.ValidationError=E1.default;ti.MissingRefError=ub.default;Be.default=ti;function ab(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 cb(t){return t=(0,ei.normalizeId)(t),this.schemas[t]||this.refs[t]}function z1(){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 j1(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function M1(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 D1(){let t={...this.opts};for(let e of O1)delete t[e];return t}var L1={log(){},warn(){},error(){}};function F1(t){if(t===!1)return L1;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 Z1=/^[a-z_$][a-z0-9_$:-]*$/i;function U1(t,e){let{RULES:r}=this;if((0,yf.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Z1.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 _f(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,hc.getJSONTypes)(e.type),schemaType:(0,hc.getJSONTypes)(e.schemaType)}};e.before?H1.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 H1(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 q1(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=db(e)),t.validateSchema=this.compile(e,!0))}var B1={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function db(t){return{anyOf:[t,B1]}}});var mb=R(vf=>{"use strict";Object.defineProperty(vf,"__esModule",{value:!0});var V1={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};vf.default=V1});var _b=R(zn=>{"use strict";Object.defineProperty(zn,"__esModule",{value:!0});zn.callRef=zn.getValidate=void 0;var W1=Ys(),fb=Tt(),dt=K(),Co=_r(),hb=lc(),gc=oe(),G1={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=hb.resolveRef.call(c,u,o,r);if(l===void 0)throw new W1.default(n.opts.uriResolver,o,r);if(l instanceof hb.SchemaEnv)return m(l);return f(l);function d(){if(s===u)return _c(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return _c(t,(0,dt._)`${p}.validate`,u,u.$async)}function m(p){let h=gb(t,p);_c(t,h,p,p.$async)}function f(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,dt.stringify)(p)}:{ref:p}),g=e.name("valid"),_=t.subschema({schema:p,dataTypes:[],schemaPath:dt.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(_),t.ok(g)}}};function gb(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,dt._)`${r.scopeValue("wrapper",{ref:e})}.validate`}zn.getValidate=gb;function _c(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Co.default.this:dt.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,dt._)`await ${(0,fb.callValidateCode)(t,e,u)}`),f(e),i||o.assign(p,!0)},h=>{o.if((0,dt._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),m(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,fb.callValidateCode)(t,e,u),()=>f(e),()=>m(e))}function m(p){let h=(0,dt._)`${p}.errors`;o.assign(Co.default.vErrors,(0,dt._)`${Co.default.vErrors} === null ? ${h} : ${Co.default.vErrors}.concat(${h})`),o.assign(Co.default.errors,(0,dt._)`${Co.default.vErrors}.length`)}function f(p){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=gc.mergeEvaluated.props(o,g.props,s.props));else{let _=o.var("props",(0,dt._)`${p}.evaluated.props`);s.props=gc.mergeEvaluated.props(o,_,s.props,dt.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=gc.mergeEvaluated.items(o,g.items,s.items));else{let _=o.var("items",(0,dt._)`${p}.evaluated.items`);s.items=gc.mergeEvaluated.items(o,_,s.items,dt.Name)}}}zn.callRef=_c;zn.default=G1});var yb=R(xf=>{"use strict";Object.defineProperty(xf,"__esModule",{value:!0});var K1=mb(),J1=_b(),Y1=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",K1.default,J1.default];xf.default=Y1});var vb=R(bf=>{"use strict";Object.defineProperty(bf,"__esModule",{value:!0});var yc=K(),qr=yc.operators,vc={maximum:{okStr:"<=",ok:qr.LTE,fail:qr.GT},minimum:{okStr:">=",ok:qr.GTE,fail:qr.LT},exclusiveMaximum:{okStr:"<",ok:qr.LT,fail:qr.GTE},exclusiveMinimum:{okStr:">",ok:qr.GT,fail:qr.LTE}},X1={message:({keyword:t,schemaCode:e})=>(0,yc.str)`must be ${vc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,yc._)`{comparison: ${vc[t].okStr}, limit: ${e}}`},Q1={keyword:Object.keys(vc),type:"number",schemaType:"number",$data:!0,error:X1,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,yc._)`${r} ${vc[e].fail} ${n} || isNaN(${r})`)}};bf.default=Q1});var xb=R(Sf=>{"use strict";Object.defineProperty(Sf,"__esModule",{value:!0});var ri=K(),eA={message:({schemaCode:t})=>(0,ri.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,ri._)`{multipleOf: ${t}}`},tA={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:eA,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,ri._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,ri._)`${i} !== parseInt(${i})`;t.fail$data((0,ri._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Sf.default=tA});var Sb=R(kf=>{"use strict";Object.defineProperty(kf,"__esModule",{value:!0});function bb(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=bb;bb.code='require("ajv/dist/runtime/ucs2length").default'});var kb=R(wf=>{"use strict";Object.defineProperty(wf,"__esModule",{value:!0});var jn=K(),rA=oe(),nA=Sb(),oA={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}}`},sA={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:oA,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,rA.useFunc)(t.gen,nA.default)}(${r})`;t.fail$data((0,jn._)`${i} ${s} ${n}`)}};wf.default=sA});var wb=R($f=>{"use strict";Object.defineProperty($f,"__esModule",{value:!0});var iA=Tt(),aA=oe(),Io=K(),cA={message:({schemaCode:t})=>(0,Io.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Io._)`{pattern: ${t}}`},uA={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:cA,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,Io._)`new RegExp`:(0,aA.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Io._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Io._)`!${l}`)}else{let c=(0,iA.usePattern)(t,o);t.fail$data((0,Io._)`!${c}.test(${r})`)}}};$f.default=uA});var $b=R(Ef=>{"use strict";Object.defineProperty(Ef,"__esModule",{value:!0});var ni=K(),lA={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,ni.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,ni._)`{limit: ${t}}`},dA={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:lA,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?ni.operators.GT:ni.operators.LT;t.fail$data((0,ni._)`Object.keys(${r}).length ${o} ${n}`)}};Ef.default=dA});var Eb=R(Tf=>{"use strict";Object.defineProperty(Tf,"__esModule",{value:!0});var oi=Tt(),si=K(),pA=oe(),mA={message:({params:{missingProperty:t}})=>(0,si.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,si._)`{missingProperty: ${t}}`},fA={keyword:"required",type:"object",schemaType:"array",$data:!0,error:mA,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors?u():l(),a.strictRequired){let f=t.parentSchema.properties,{definedProperties:p}=t.it;for(let h of r)if(f?.[h]===void 0&&!p.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,_=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,pA.checkStrictMode)(i,_,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(si.nil,d);else for(let f of r)(0,oi.checkReportMissingProp)(t,f)}function l(){let f=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>m(f,p)),t.ok(p)}else e.if((0,oi.checkMissingProp)(t,r,f)),(0,oi.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,oi.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function m(f,p){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(p,(0,oi.propertyInData)(e,o,f,a.ownProperties)),e.if((0,si.not)(p),()=>{t.error(),e.break()})},si.nil)}}};Tf.default=fA});var Tb=R(Pf=>{"use strict";Object.defineProperty(Pf,"__esModule",{value:!0});var ii=K(),hA={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,ii.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,ii._)`{limit: ${t}}`},gA={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:hA,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?ii.operators.GT:ii.operators.LT;t.fail$data((0,ii._)`${r}.length ${o} ${n}`)}};Pf.default=gA});var xc=R(Rf=>{"use strict";Object.defineProperty(Rf,"__esModule",{value:!0});var Pb=Xm();Pb.code='require("ajv/dist/runtime/equal").default';Rf.default=Pb});var Rb=R(Cf=>{"use strict";Object.defineProperty(Cf,"__esModule",{value:!0});var Of=Vs(),Ve=K(),_A=oe(),yA=xc(),vA={message:({params:{i:t,j:e}})=>(0,Ve.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ve._)`{i: ${t}, j: ${e}}`},xA={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:vA,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,Of.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ve._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,Ve._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,Ve._)`${p} > 1`,()=>(d()?m:f)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function m(p,h){let g=e.name("item"),_=(0,Of.checkDataTypes)(u,g,a.opts.strictNumbers,Of.DataType.Wrong),y=e.const("indices",(0,Ve._)`{}`);e.for((0,Ve._)`;${p}--;`,()=>{e.let(g,(0,Ve._)`${r}[${p}]`),e.if(_,(0,Ve._)`continue`),u.length>1&&e.if((0,Ve._)`typeof ${g} == "string"`,(0,Ve._)`${g} += "_"`),e.if((0,Ve._)`typeof ${y}[${g}] == "number"`,()=>{e.assign(h,(0,Ve._)`${y}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ve._)`${y}[${g}] = ${p}`)})}function f(p,h){let g=(0,_A.useFunc)(e,yA.default),_=e.name("outer");e.label(_).for((0,Ve._)`;${p}--;`,()=>e.for((0,Ve._)`${h} = ${p}; ${h}--;`,()=>e.if((0,Ve._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(_)})))}}};Cf.default=xA});var Ob=R(Af=>{"use strict";Object.defineProperty(Af,"__esModule",{value:!0});var If=K(),bA=oe(),SA=xc(),kA={message:"must be equal to constant",params:({schemaCode:t})=>(0,If._)`{allowedValue: ${t}}`},wA={keyword:"const",$data:!0,error:kA,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,If._)`!${(0,bA.useFunc)(e,SA.default)}(${r}, ${o})`):t.fail((0,If._)`${s} !== ${r}`)}};Af.default=wA});var Cb=R(Nf=>{"use strict";Object.defineProperty(Nf,"__esModule",{value:!0});var ai=K(),$A=oe(),EA=xc(),TA={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,ai._)`{allowedValues: ${t}}`},PA={keyword:"enum",schemaType:"array",$data:!0,error:TA,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,$A.useFunc)(e,EA.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,ai.or)(...o.map((p,h)=>m(f,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,f=>e.if((0,ai._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function m(f,p){let h=o[p];return typeof h=="object"&&h!==null?(0,ai._)`${u()}(${r}, ${f}[${p}])`:(0,ai._)`${r} === ${h}`}}};Nf.default=PA});var Ib=R(zf=>{"use strict";Object.defineProperty(zf,"__esModule",{value:!0});var RA=vb(),OA=xb(),CA=kb(),IA=wb(),AA=$b(),NA=Eb(),zA=Tb(),jA=Rb(),MA=Ob(),DA=Cb(),LA=[RA.default,OA.default,CA.default,IA.default,AA.default,NA.default,zA.default,jA.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},MA.default,DA.default];zf.default=LA});var Mf=R(ci=>{"use strict";Object.defineProperty(ci,"__esModule",{value:!0});ci.validateAdditionalItems=void 0;var Mn=K(),jf=oe(),FA={message:({params:{len:t}})=>(0,Mn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Mn._)`{limit: ${t}}`},ZA={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:FA,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,jf.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Ab(t,n)}};function Ab(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Mn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Mn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,jf.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Mn._)`${a} <= ${e.length}`);r.if((0,Mn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:jf.Type.Num},u),i.allErrors||r.if((0,Mn.not)(u),()=>r.break())})}}ci.validateAdditionalItems=Ab;ci.default=ZA});var Df=R(ui=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});ui.validateTuple=void 0;var Nb=K(),bc=oe(),UA=Tt(),HA={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return zb(t,"additionalItems",e);r.items=!0,!(0,bc.alwaysValidSchema)(r,e)&&t.ok((0,UA.validateArray)(t))}};function zb(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=bc.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,Nb._)`${s}.length`);r.forEach((d,m)=>{(0,bc.alwaysValidSchema)(a,d)||(n.if((0,Nb._)`${u} > ${m}`,()=>t.subschema({keyword:i,schemaProp:m,dataProp:m},c)),t.ok(c))});function l(d){let{opts:m,errSchemaPath:f}=a,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(m.strictTuples&&!h){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,bc.checkStrictMode)(a,g,m.strictTuples)}}}ui.validateTuple=zb;ui.default=HA});var jb=R(Lf=>{"use strict";Object.defineProperty(Lf,"__esModule",{value:!0});var qA=Df(),BA={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,qA.validateTuple)(t,"items")};Lf.default=BA});var Db=R(Ff=>{"use strict";Object.defineProperty(Ff,"__esModule",{value:!0});var Mb=K(),VA=oe(),WA=Tt(),GA=Mf(),KA={message:({params:{len:t}})=>(0,Mb.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Mb._)`{limit: ${t}}`},JA={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:KA,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,VA.alwaysValidSchema)(n,e)&&(o?(0,GA.validateAdditionalItems)(t,o):t.ok((0,WA.validateArray)(t)))}};Ff.default=JA});var Lb=R(Zf=>{"use strict";Object.defineProperty(Zf,"__esModule",{value:!0});var Rt=K(),Sc=oe(),YA={message:({params:{min:t,max:e}})=>e===void 0?(0,Rt.str)`must contain at least ${t} valid item(s)`:(0,Rt.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Rt._)`{minContains: ${t}}`:(0,Rt._)`{minContains: ${t}, maxContains: ${e}}`},XA={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:YA,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,Rt._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Sc.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Sc.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Sc.alwaysValidSchema)(s,r)){let h=(0,Rt._)`${l} >= ${i}`;a!==void 0&&(h=(0,Rt._)`${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,Rt._)`${o}.length > 0`,m)):(e.let(d,!1),m()),t.result(d,()=>t.reset());function m(){let h=e.name("_valid"),g=e.let("count",0);f(h,()=>e.if(h,()=>p(g)))}function f(h,g){e.forRange("i",0,l,_=>{t.subschema({keyword:"contains",dataProp:_,dataPropType:Sc.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,Rt._)`${h}++`),a===void 0?e.if((0,Rt._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,Rt._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,Rt._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Zf.default=XA});var Ub=R(rr=>{"use strict";Object.defineProperty(rr,"__esModule",{value:!0});rr.validateSchemaDeps=rr.validatePropertyDeps=rr.error=void 0;var Uf=K(),QA=oe(),li=Tt();rr.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Uf.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Uf._)`{property: ${t},
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 rm,Zt,UO,Ba=v(()=>{Fr();Zt={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:()=>(rm===void 0&&(rm=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),rm),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-_]*$/};UO=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789")});function Va(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]:U(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??$e(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:U(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}=qa(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}=Ua(t.keyType._def,e);return{...r,propertyNames:o}}}return r}var Wa=v(()=>{ms();Ne();Ba();Ha();Ot()});function bv(t,e){if(e.mapStrategy==="record")return Va(t,e);let r=U(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||$e(e),n=U(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||$e(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}var om=v(()=>{Ne();Wa();Ot()});function kv(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 sm=v(()=>{});function wv(t){return t.target==="openAi"?void 0:{not:$e({...t,currentPath:[...t.currentPath,"not"]})}}var im=v(()=>{Ot()});function $v(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var am=v(()=>{});function Tv(t,e){if(e.target==="openApi3")return Ev(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Ds&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Ds[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 Ev(t,e)}var Ds,Ev,Ga=v(()=>{Ne();Ds={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};Ev=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>U(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 Pv(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:Ds[t.innerType._def.typeName],nullable:!0}:{type:[Ds[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=U(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=U(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}var cm=v(()=>{Ne();Ga()});function Rv(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",qp(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?re(r,"minimum",n.value,n.message,e):re(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),re(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?re(r,"maximum",n.value,n.message,e):re(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),re(r,"maximum",n.value,n.message,e));break;case"multipleOf":re(r,"multipleOf",n.value,n.message,e);break}return r}var um=v(()=>{Fr()});function Ov(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=BO(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=U(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=qO(t,e);return i!==void 0&&(n.additionalProperties=i),n}function qO(t,e){if(t.catchall._def.typeName!=="ZodNever")return U(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 BO(t){try{return t.isOptional()}catch{return!0}}var lm=v(()=>{Ne()});var Cv,dm=v(()=>{Ne();Ot();Cv=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return U(t.innerType._def,e);let r=U(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:$e(e)},r]}:$e(e)}});var Iv,pm=v(()=>{Ne();Iv=(t,e)=>{if(e.pipeStrategy==="input")return U(t.in._def,e);if(e.pipeStrategy==="output")return U(t.out._def,e);let r=U(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=U(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}}});function Av(t,e){return U(t.type._def,e)}var mm=v(()=>{Ne()});function Nv(t,e){let n={type:"array",uniqueItems:!0,items:U(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&re(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&re(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}var fm=v(()=>{Fr();Ne()});function zv(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>U(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:U(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>U(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}var hm=v(()=>{Ne()});function jv(t){return{not:$e(t)}}var gm=v(()=>{Ot()});function Mv(t){return $e(t)}var _m=v(()=>{Ot()});var Dv,ym=v(()=>{Ne();Dv=(t,e)=>U(t.innerType._def,e)});var Lv,xm=v(()=>{ms();Ot();Bp();Vp();Wp();Ha();Gp();Jp();Yp();Xp();Qp();em();tm();om();sm();im();am();cm();um();lm();dm();pm();mm();Wa();fm();Ba();hm();gm();Ga();_m();ym();Lv=(t,e,r)=>{switch(e){case $.ZodString:return qa(t,r);case $.ZodNumber:return Rv(t,r);case $.ZodObject:return Ov(t,r);case $.ZodBigInt:return mv(t,r);case $.ZodBoolean:return fv();case $.ZodDate:return Kp(t,r);case $.ZodUndefined:return jv(r);case $.ZodNull:return $v(r);case $.ZodArray:return pv(t,r);case $.ZodUnion:case $.ZodDiscriminatedUnion:return Tv(t,r);case $.ZodIntersection:return xv(t,r);case $.ZodTuple:return zv(t,r);case $.ZodRecord:return Va(t,r);case $.ZodLiteral:return vv(t,r);case $.ZodEnum:return yv(t);case $.ZodNativeEnum:return kv(t);case $.ZodNullable:return Pv(t,r);case $.ZodOptional:return Cv(t,r);case $.ZodMap:return bv(t,r);case $.ZodSet:return Nv(t,r);case $.ZodLazy:return()=>t.getter()._def;case $.ZodPromise:return Av(t,r);case $.ZodNaN:case $.ZodNever:return wv(r);case $.ZodEffects:return _v(t,r);case $.ZodAny:return $e(r);case $.ZodUnknown:return Mv(r);case $.ZodDefault:return gv(t,r);case $.ZodBranded:return Ua(t,r);case $.ZodReadonly:return Dv(t,r);case $.ZodCatch:return hv(t,r);case $.ZodPipeline:return Iv(t,r);case $.ZodFunction:case $.ZodVoid:case $.ZodSymbol:return;default:return(n=>{})(e)}}});function U(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=VO(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=Lv(t,t.typeName,e),i=typeof s=="function"?U(s(),e):s;if(i&&WO(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var VO,WO,Ne=v(()=>{La();xm();Za();Ot();VO=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:Fa(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`),$e(e)):e.$refStrategy==="seen"?$e(e):void 0}},WO=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r)});var Fv=v(()=>{});var vm,Sm=v(()=>{Ne();Hp();Ot();vm=(t,e)=>{let r=dv(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:U(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??$e(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=U(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??$e(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 Zv=v(()=>{La();Hp();Fr();Za();Ne();Fv();Ot();Bp();Vp();Wp();Ha();Gp();Jp();Yp();Xp();Qp();em();tm();om();sm();im();am();cm();um();lm();dm();pm();mm();ym();Wa();fm();Ba();hm();gm();Ga();_m();xm();Sm();Sm()});function GO(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 Tt(t)?ap(t,{target:GO(e?.target),io:e?.pipeStrategy??"input"}):vm(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function km(t){let r=Mr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=_a(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 $m=v(()=>{lp();Es();Zv()});function Uv(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Hv(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];Uv(i)&&Uv(s)?r[o]={...i,...s}:r[o]=s}return r}var KO,Ka,qv=v(()=>{Es();wo();av();$m();KO=6e4,Ka=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(wa,r=>{this._oncancel(r)}),this.setNotificationHandler(Ea,r=>{this._onprogress(r)}),this.setRequestHandler($a,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Ta,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new z(D.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(Ra,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,m=new z(d.error.code,d.error.message,d.error.data);l(m)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new z(D.InvalidParams,`Task not found: ${s}`);if(!Lr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(Lr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Dr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(Oa,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 z(D.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(Ia,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new z(D.InvalidParams,`Task not found: ${r.params.taskId}`);if(Lr(o.status))throw new z(D.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 z(D.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof z?o:new z(D.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),z.fromError(D.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),Os(s)||Jx(s)?this._onresponse(s):Pp(s)?this._onrequest(s,i):Kx(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=z.fromError(D.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?.[Dr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:D.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=Vx(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,m)=>{if(i.signal.aborted)throw new z(D.ConnectionClosed,"Request was cancelled");let h={...m,relatedRequestId:e.id};s&&!h.relatedTask&&(h.relatedTask={taskId:s});let p=h.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,h)},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:D.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),Os(e))n(e);else{let i=new z(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(Os(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),Os(e))o(e);else{let i=z.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 z?i:new z(D.InternalError,String(i))}}return}let s;try{let i=await this.request(e,yo,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new z(D.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},Lr(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new z(D.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new z(D.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 z?i:new z(D.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 m=this._requestMessageId++,h={...e,jsonrpc:"2.0",id:m};n?.onprogress&&(this._progressHandlers.set(m,n.onprogress),h.params={...e.params,_meta:{...e.params?._meta||{},progressToken:m}}),a&&(h.params={...h.params,task:a}),c&&(h.params={...h.params,_meta:{...h.params?._meta||{},[Dr]:c}});let p=y=>{this._responseHandlers.delete(m),this._progressHandlers.delete(m),this._cleanupTimeout(m),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:m,reason:String(y)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(k=>this._onerror(new Error(`Failed to send cancellation: ${k}`)));let x=y instanceof z?y:new z(D.RequestTimeout,String(y));l(x)};this._responseHandlers.set(m,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",()=>{p(n?.signal?.reason)});let f=n?.timeout??KO,g=()=>p(z.fromError(D.RequestTimeout,"Request timed out",{timeout:f}));this._setupTimeout(m,f,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){let y=x=>{let k=this._responseHandlers.get(m);k?k(x):this._onerror(new Error(`Response handler missing for side-channeled request ${m}`))};this._requestResolvers.set(m,y),this._enqueueTaskMessage(_,{type:"request",message:h,timestamp:Date.now()}).catch(x=>{this._cleanupTimeout(m),l(x)})}else this._transport.send(h,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(y=>{this._cleanupTimeout(m),l(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Pa,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},Ca,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Qx,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||{},[Dr]: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||{},[Dr]: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||{},[Dr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=km(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=km(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"&&Pp(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new z(D.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 z(D.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new z(D.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 z(D.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=zs.parse({method:"notifications/tasks/status",params:a});await this.notification(c),Lr(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 z(D.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(Lr(a.status))throw new z(D.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=zs.parse({method:"notifications/tasks/status",params:c});await this.notification(u),Lr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}}});var Zs=R(ie=>{"use strict";Object.defineProperty(ie,"__esModule",{value:!0});ie.regexpCode=ie.getEsmExportName=ie.getProperty=ie.safeStringify=ie.stringify=ie.strConcat=ie.addCodeArg=ie.str=ie._=ie.nil=ie._Code=ie.Name=ie.IDENTIFIER=ie._CodeOrName=void 0;var Ls=class{};ie._CodeOrName=Ls;ie.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var In=class extends Ls{constructor(e){if(super(),!ie.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}}};ie.Name=In;var Ct=class extends Ls{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 In&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ie._Code=Ct;ie.nil=new Ct("");function Bv(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Tm(r,e[n]),r.push(t[++n]);return new Ct(r)}ie._=Bv;var Em=new Ct("+");function Vv(t,...e){let r=[Fs(t[0])],n=0;for(;n<e.length;)r.push(Em),Tm(r,e[n]),r.push(Em,Fs(t[++n]));return JO(r),new Ct(r)}ie.str=Vv;function Tm(t,e){e instanceof Ct?t.push(...e._items):e instanceof In?t.push(e):t.push(QO(e))}ie.addCodeArg=Tm;function JO(t){let e=1;for(;e<t.length-1;){if(t[e]===Em){let r=YO(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function YO(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof In||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 In))return`"${t}${e.slice(1)}`}function XO(t,e){return e.emptyStr()?t:t.emptyStr()?e:Vv`${t}${e}`}ie.strConcat=XO;function QO(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Fs(Array.isArray(t)?t.join(","):t)}function eC(t){return new Ct(Fs(t))}ie.stringify=eC;function Fs(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ie.safeStringify=Fs;function tC(t){return typeof t=="string"&&ie.IDENTIFIER.test(t)?new Ct(`.${t}`):Bv`[${t}]`}ie.getProperty=tC;function rC(t){if(typeof t=="string"&&ie.IDENTIFIER.test(t))return new Ct(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ie.getEsmExportName=rC;function nC(t){return new Ct(t.toString())}ie.regexpCode=nC});var Om=R(lt=>{"use strict";Object.defineProperty(lt,"__esModule",{value:!0});lt.ValueScope=lt.ValueScopeName=lt.Scope=lt.varKinds=lt.UsedValueState=void 0;var ut=Zs(),Pm=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Ja;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Ja||(lt.UsedValueState=Ja={}));lt.varKinds={const:new ut.Name("const"),let:new ut.Name("let"),var:new ut.Name("var")};var Ya=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof ut.Name?e:this.name(e)}name(e){return new ut.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}}};lt.Scope=Ya;var Xa=class extends ut.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,ut._)`.${new ut.Name(r)}[${n}]`}};lt.ValueScopeName=Xa;var oC=(0,ut._)`\n`,Rm=class extends Ya{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?oC:ut.nil}}get(){return this._scope}name(e){return new Xa(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,ut._)`${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=ut.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,Ja.Started);let l=r(u);if(l){let d=this.opts.es5?lt.varKinds.var:lt.varKinds.const;s=(0,ut._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,ut._)`${s}${l}${this.opts._n}`;else throw new Pm(u);c.set(u,Ja.Completed)})}return s}};lt.ValueScope=Rm});var J=R(Y=>{"use strict";Object.defineProperty(Y,"__esModule",{value:!0});Y.or=Y.and=Y.not=Y.CodeGen=Y.operators=Y.varKinds=Y.ValueScopeName=Y.ValueScope=Y.Scope=Y.Name=Y.regexpCode=Y.stringify=Y.getProperty=Y.nil=Y.strConcat=Y.str=Y._=void 0;var ne=Zs(),Ht=Om(),Zr=Zs();Object.defineProperty(Y,"_",{enumerable:!0,get:function(){return Zr._}});Object.defineProperty(Y,"str",{enumerable:!0,get:function(){return Zr.str}});Object.defineProperty(Y,"strConcat",{enumerable:!0,get:function(){return Zr.strConcat}});Object.defineProperty(Y,"nil",{enumerable:!0,get:function(){return Zr.nil}});Object.defineProperty(Y,"getProperty",{enumerable:!0,get:function(){return Zr.getProperty}});Object.defineProperty(Y,"stringify",{enumerable:!0,get:function(){return Zr.stringify}});Object.defineProperty(Y,"regexpCode",{enumerable:!0,get:function(){return Zr.regexpCode}});Object.defineProperty(Y,"Name",{enumerable:!0,get:function(){return Zr.Name}});var rc=Om();Object.defineProperty(Y,"Scope",{enumerable:!0,get:function(){return rc.Scope}});Object.defineProperty(Y,"ValueScope",{enumerable:!0,get:function(){return rc.ValueScope}});Object.defineProperty(Y,"ValueScopeName",{enumerable:!0,get:function(){return rc.ValueScopeName}});Object.defineProperty(Y,"varKinds",{enumerable:!0,get:function(){return rc.varKinds}});Y.operators={GT:new ne._Code(">"),GTE:new ne._Code(">="),LT:new ne._Code("<"),LTE:new ne._Code("<="),EQ:new ne._Code("==="),NEQ:new ne._Code("!=="),NOT:new ne._Code("!"),OR:new ne._Code("||"),AND:new ne._Code("&&"),ADD:new ne._Code("+")};var _r=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Cm=class extends _r{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Ht.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=Eo(this.rhs,e,r)),this}get names(){return this.rhs instanceof ne._CodeOrName?this.rhs.names:{}}},Qa=class extends _r{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 ne.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Eo(this.rhs,e,r),this}get names(){let e=this.lhs instanceof ne.Name?{}:{...this.lhs.names};return tc(e,this.rhs)}},Im=class extends Qa{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Am=class extends _r{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Nm=class extends _r{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},zm=class extends _r{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},jm=class extends _r{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=Eo(this.code,e,r),this}get names(){return this.code instanceof ne._CodeOrName?this.code.names:{}}},Us=class extends _r{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)||(sC(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>zn(e,r.names),{})}},yr=class extends Us{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Mm=class extends Us{},$o=class extends yr{};$o.kind="else";var An=class t extends yr{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 $o(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Wv(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=Eo(this.condition,e,r),this}get names(){let e=super.names;return tc(e,this.condition),this.else&&zn(e,this.else.names),e}};An.kind="if";var Nn=class extends yr{};Nn.kind="for";var Dm=class extends Nn{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=Eo(this.iteration,e,r),this}get names(){return zn(super.names,this.iteration.names)}},Lm=class extends Nn{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?Ht.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=tc(super.names,this.from);return tc(e,this.to)}},ec=class extends Nn{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=Eo(this.iterable,e,r),this}get names(){return zn(super.names,this.iterable.names)}},Hs=class extends yr{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)}};Hs.kind="func";var qs=class extends Us{render(e){return"return "+super.render(e)}};qs.kind="return";var Fm=class extends yr{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&&zn(e,this.catch.names),this.finally&&zn(e,this.finally.names),e}},Bs=class extends yr{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Bs.kind="catch";var Vs=class extends yr{render(e){return"finally"+super.render(e)}};Vs.kind="finally";var Zm=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
51
+ `:""},this._extScope=e,this._scope=new Ht.Scope({parent:e}),this._nodes=[new Mm]}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 Cm(e,s,n)),s}const(e,r,n){return this._def(Ht.varKinds.const,e,r,n)}let(e,r,n){return this._def(Ht.varKinds.let,e,r,n)}var(e,r,n){return this._def(Ht.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Qa(e,r,n))}add(e,r){return this._leafNode(new Im(e,Y.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==ne.nil&&this._leafNode(new jm(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,ne.addCodeArg)(r,o));return r.push("}"),new ne._Code(r)}if(e,r,n){if(this._blockNode(new An(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 An(e))}else(){return this._elseNode(new $o)}endIf(){return this._endBlockNode(An,$o)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Dm(e),r)}forRange(e,r,n,o,s=this.opts.es5?Ht.varKinds.var:Ht.varKinds.let){let i=this._scope.toName(e);return this._for(new Lm(s,i,r,n),()=>o(i))}forOf(e,r,n,o=Ht.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof ne.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,ne._)`${i}.length`,a=>{this.var(s,(0,ne._)`${i}[${a}]`),n(s)})}return this._for(new ec("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?Ht.varKinds.var:Ht.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,ne._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new ec("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Nn)}label(e){return this._leafNode(new Am(e))}break(e){return this._leafNode(new Nm(e))}return(e){let r=new qs;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(qs)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Fm;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Bs(s),r(s)}return n&&(this._currNode=o.finally=new Vs,this.code(n)),this._endBlockNode(Bs,Vs)}throw(e){return this._leafNode(new zm(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=ne.nil,n,o){return this._blockNode(new Hs(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Hs)}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 An))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}};Y.CodeGen=Zm;function zn(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function tc(t,e){return e instanceof ne._CodeOrName?zn(t,e.names):t}function Eo(t,e,r){if(t instanceof ne.Name)return n(t);if(!o(t))return t;return new ne._Code(t._items.reduce((s,i)=>(i instanceof ne.Name&&(i=n(i)),i instanceof ne._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 ne._Code&&s._items.some(i=>i instanceof ne.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function sC(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Wv(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,ne._)`!${Um(t)}`}Y.not=Wv;var iC=Gv(Y.operators.AND);function aC(...t){return t.reduce(iC)}Y.and=aC;var cC=Gv(Y.operators.OR);function uC(...t){return t.reduce(cC)}Y.or=uC;function Gv(t){return(e,r)=>e===ne.nil?r:r===ne.nil?e:(0,ne._)`${Um(e)} ${t} ${Um(r)}`}function Um(t){return t instanceof ne.Name?t:(0,ne._)`(${t})`}});var oe=R(X=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0});X.checkStrictMode=X.getErrorPath=X.Type=X.useFunc=X.setEvaluated=X.evaluatedPropsToName=X.mergeEvaluated=X.eachItem=X.unescapeJsonPointer=X.escapeJsonPointer=X.escapeFragment=X.unescapeFragment=X.schemaRefOrVal=X.schemaHasRulesButRef=X.schemaHasRules=X.checkUnknownRules=X.alwaysValidSchema=X.toHash=void 0;var me=J(),lC=Zs();function dC(t){let e={};for(let r of t)e[r]=!0;return e}X.toHash=dC;function pC(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Yv(t,e),!Xv(e,t.self.RULES.all))}X.alwaysValidSchema=pC;function Yv(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]||t0(t,`unknown keyword: "${s}"`)}X.checkUnknownRules=Yv;function Xv(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}X.schemaHasRules=Xv;function mC(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}X.schemaHasRulesButRef=mC;function fC({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,me._)`${r}`}return(0,me._)`${t}${e}${(0,me.getProperty)(n)}`}X.schemaRefOrVal=fC;function hC(t){return Qv(decodeURIComponent(t))}X.unescapeFragment=hC;function gC(t){return encodeURIComponent(qm(t))}X.escapeFragment=gC;function qm(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}X.escapeJsonPointer=qm;function Qv(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}X.unescapeJsonPointer=Qv;function _C(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}X.eachItem=_C;function Kv({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof me.Name?(s instanceof me.Name?t(o,s,i):e(o,s,i),i):s instanceof me.Name?(e(o,i,s),s):r(s,i);return a===me.Name&&!(c instanceof me.Name)?n(o,c):c}}X.mergeEvaluated={props:Kv({mergeNames:(t,e,r)=>t.if((0,me._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,me._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,me._)`${r} || {}`).code((0,me._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,me._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,me._)`${r} || {}`),Bm(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:e0}),items:Kv({mergeNames:(t,e,r)=>t.if((0,me._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,me._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,me._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,me._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function e0(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,me._)`{}`);return e!==void 0&&Bm(t,r,e),r}X.evaluatedPropsToName=e0;function Bm(t,e,r){Object.keys(r).forEach(n=>t.assign((0,me._)`${e}${(0,me.getProperty)(n)}`,!0))}X.setEvaluated=Bm;var Jv={};function yC(t,e){return t.scopeValue("func",{ref:e,code:Jv[e.code]||(Jv[e.code]=new lC._Code(e.code))})}X.useFunc=yC;var Hm;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Hm||(X.Type=Hm={}));function xC(t,e,r){if(t instanceof me.Name){let n=e===Hm.Num;return r?n?(0,me._)`"[" + ${t} + "]"`:(0,me._)`"['" + ${t} + "']"`:n?(0,me._)`"/" + ${t}`:(0,me._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,me.getProperty)(t).toString():"/"+qm(t)}X.getErrorPath=xC;function t0(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}X.checkStrictMode=t0});var xr=R(Vm=>{"use strict";Object.defineProperty(Vm,"__esModule",{value:!0});var Ke=J(),vC={data:new Ke.Name("data"),valCxt:new Ke.Name("valCxt"),instancePath:new Ke.Name("instancePath"),parentData:new Ke.Name("parentData"),parentDataProperty:new Ke.Name("parentDataProperty"),rootData:new Ke.Name("rootData"),dynamicAnchors:new Ke.Name("dynamicAnchors"),vErrors:new Ke.Name("vErrors"),errors:new Ke.Name("errors"),this:new Ke.Name("this"),self:new Ke.Name("self"),scope:new Ke.Name("scope"),json:new Ke.Name("json"),jsonPos:new Ke.Name("jsonPos"),jsonLen:new Ke.Name("jsonLen"),jsonPart:new Ke.Name("jsonPart")};Vm.default=vC});var Ws=R(Je=>{"use strict";Object.defineProperty(Je,"__esModule",{value:!0});Je.extendErrors=Je.resetErrorsCount=Je.reportExtraError=Je.reportError=Je.keyword$DataError=Je.keywordError=void 0;var se=J(),nc=oe(),rt=xr();Je.keywordError={message:({keyword:t})=>(0,se.str)`must pass "${t}" keyword validation`};Je.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,se.str)`"${t}" keyword must be ${e} ($data)`:(0,se.str)`"${t}" keyword is invalid ($data)`};function SC(t,e=Je.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=o0(t,e,r);n??(i||a)?r0(s,c):n0(o,(0,se._)`[${c}]`)}Je.reportError=SC;function bC(t,e=Je.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=o0(t,e,r);r0(o,a),s||i||n0(n,rt.default.vErrors)}Je.reportExtraError=bC;function kC(t,e){t.assign(rt.default.errors,e),t.if((0,se._)`${rt.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,se._)`${rt.default.vErrors}.length`,e),()=>t.assign(rt.default.vErrors,null)))}Je.resetErrorsCount=kC;function wC({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,rt.default.errors,a=>{t.const(i,(0,se._)`${rt.default.vErrors}[${a}]`),t.if((0,se._)`${i}.instancePath === undefined`,()=>t.assign((0,se._)`${i}.instancePath`,(0,se.strConcat)(rt.default.instancePath,s.errorPath))),t.assign((0,se._)`${i}.schemaPath`,(0,se.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,se._)`${i}.schema`,r),t.assign((0,se._)`${i}.data`,n))})}Je.extendErrors=wC;function r0(t,e){let r=t.const("err",e);t.if((0,se._)`${rt.default.vErrors} === null`,()=>t.assign(rt.default.vErrors,(0,se._)`[${r}]`),(0,se._)`${rt.default.vErrors}.push(${r})`),t.code((0,se._)`${rt.default.errors}++`)}function n0(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,se._)`new ${t.ValidationError}(${e})`):(r.assign((0,se._)`${n}.errors`,e),r.return(!1))}var jn={keyword:new se.Name("keyword"),schemaPath:new se.Name("schemaPath"),params:new se.Name("params"),propertyName:new se.Name("propertyName"),message:new se.Name("message"),schema:new se.Name("schema"),parentSchema:new se.Name("parentSchema")};function o0(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,se._)`{}`:$C(t,e,r)}function $C(t,e,r={}){let{gen:n,it:o}=t,s=[EC(o,r),TC(t,r)];return PC(t,e,s),n.object(...s)}function EC({errorPath:t},{instancePath:e}){let r=e?(0,se.str)`${t}${(0,nc.getErrorPath)(e,nc.Type.Str)}`:t;return[rt.default.instancePath,(0,se.strConcat)(rt.default.instancePath,r)]}function TC({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,se.str)`${e}/${t}`;return r&&(o=(0,se.str)`${o}${(0,nc.getErrorPath)(r,nc.Type.Str)}`),[jn.schemaPath,o]}function PC(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([jn.keyword,o],[jn.params,typeof e=="function"?e(t):e||(0,se._)`{}`]),c.messages&&n.push([jn.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([jn.schema,i],[jn.parentSchema,(0,se._)`${l}${d}`],[rt.default.data,s]),u&&n.push([jn.propertyName,u])}});var i0=R(To=>{"use strict";Object.defineProperty(To,"__esModule",{value:!0});To.boolOrEmptySchema=To.topBoolOrEmptySchema=void 0;var RC=Ws(),OC=J(),CC=xr(),IC={message:"boolean schema is false"};function AC(t){let{gen:e,schema:r,validateName:n}=t;r===!1?s0(t,!1):typeof r=="object"&&r.$async===!0?e.return(CC.default.data):(e.assign((0,OC._)`${n}.errors`,null),e.return(!0))}To.topBoolOrEmptySchema=AC;function NC(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),s0(t)):r.var(e,!0)}To.boolOrEmptySchema=NC;function s0(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,RC.reportError)(o,IC,void 0,e)}});var Wm=R(Po=>{"use strict";Object.defineProperty(Po,"__esModule",{value:!0});Po.getRules=Po.isJSONType=void 0;var zC=["string","number","integer","boolean","null","object","array"],jC=new Set(zC);function MC(t){return typeof t=="string"&&jC.has(t)}Po.isJSONType=MC;function DC(){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:{}}}Po.getRules=DC});var Gm=R(Ur=>{"use strict";Object.defineProperty(Ur,"__esModule",{value:!0});Ur.shouldUseRule=Ur.shouldUseGroup=Ur.schemaHasRulesForType=void 0;function LC({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&a0(t,n)}Ur.schemaHasRulesForType=LC;function a0(t,e){return e.rules.some(r=>c0(t,r))}Ur.shouldUseGroup=a0;function c0(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))}Ur.shouldUseRule=c0});var Gs=R(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.reportTypeError=Ye.checkDataTypes=Ye.checkDataType=Ye.coerceAndCheckDataType=Ye.getJSONTypes=Ye.getSchemaTypes=Ye.DataType=void 0;var FC=Wm(),ZC=Gm(),UC=Ws(),G=J(),u0=oe(),Ro;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Ro||(Ye.DataType=Ro={}));function HC(t){let e=l0(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}Ye.getSchemaTypes=HC;function l0(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(FC.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Ye.getJSONTypes=l0;function qC(t,e){let{gen:r,data:n,opts:o}=t,s=BC(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,ZC.schemaHasRulesForType)(t,e[0]));if(i){let a=Jm(e,n,o.strictNumbers,Ro.Wrong);r.if(a,()=>{s.length?VC(t,e,s):Ym(t)})}return i}Ye.coerceAndCheckDataType=qC;var d0=new Set(["string","number","integer","boolean","null"]);function BC(t,e){return e?t.filter(r=>d0.has(r)||e==="array"&&r==="array"):[]}function VC(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,G._)`typeof ${o}`),a=n.let("coerced",(0,G._)`undefined`);s.coerceTypes==="array"&&n.if((0,G._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,G._)`${o}[0]`).assign(i,(0,G._)`typeof ${o}`).if(Jm(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,G._)`${a} !== undefined`);for(let u of r)(d0.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Ym(t),n.endIf(),n.if((0,G._)`${a} !== undefined`,()=>{n.assign(o,a),WC(t,a)});function c(u){switch(u){case"string":n.elseIf((0,G._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,G._)`"" + ${o}`).elseIf((0,G._)`${o} === null`).assign(a,(0,G._)`""`);return;case"number":n.elseIf((0,G._)`${i} == "boolean" || ${o} === null
52
+ || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,G._)`+${o}`);return;case"integer":n.elseIf((0,G._)`${i} === "boolean" || ${o} === null
53
+ || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,G._)`+${o}`);return;case"boolean":n.elseIf((0,G._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,G._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,G._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,G._)`${i} === "string" || ${i} === "number"
54
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,G._)`[${o}]`)}}}function WC({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,G._)`${e} !== undefined`,()=>t.assign((0,G._)`${e}[${r}]`,n))}function Km(t,e,r,n=Ro.Correct){let o=n===Ro.Correct?G.operators.EQ:G.operators.NEQ,s;switch(t){case"null":return(0,G._)`${e} ${o} null`;case"array":s=(0,G._)`Array.isArray(${e})`;break;case"object":s=(0,G._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,G._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,G._)`typeof ${e} ${o} ${t}`}return n===Ro.Correct?s:(0,G.not)(s);function i(a=G.nil){return(0,G.and)((0,G._)`typeof ${e} == "number"`,a,r?(0,G._)`isFinite(${e})`:G.nil)}}Ye.checkDataType=Km;function Jm(t,e,r,n){if(t.length===1)return Km(t[0],e,r,n);let o,s=(0,u0.toHash)(t);if(s.array&&s.object){let i=(0,G._)`typeof ${e} != "object"`;o=s.null?i:(0,G._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=G.nil;s.number&&delete s.integer;for(let i in s)o=(0,G.and)(o,Km(i,e,r,n));return o}Ye.checkDataTypes=Jm;var GC={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,G._)`{type: ${t}}`:(0,G._)`{type: ${e}}`};function Ym(t){let e=KC(t);(0,UC.reportError)(e,GC)}Ye.reportTypeError=Ym;function KC(t){let{gen:e,data:r,schema:n}=t,o=(0,u0.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var m0=R(oc=>{"use strict";Object.defineProperty(oc,"__esModule",{value:!0});oc.assignDefaults=void 0;var Oo=J(),JC=oe();function YC(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)p0(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>p0(t,s,o.default))}oc.assignDefaults=YC;function p0(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Oo._)`${s}${(0,Oo.getProperty)(e)}`;if(o){(0,JC.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Oo._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Oo._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Oo._)`${a} = ${(0,Oo.stringify)(r)}`)}});var It=R(le=>{"use strict";Object.defineProperty(le,"__esModule",{value:!0});le.validateUnion=le.validateArray=le.usePattern=le.callValidateCode=le.schemaProperties=le.allSchemaProperties=le.noPropertyInData=le.propertyInData=le.isOwnProperty=le.hasPropFunc=le.reportMissingProp=le.checkMissingProp=le.checkReportMissingProp=void 0;var _e=J(),Xm=oe(),Hr=xr(),XC=oe();function QC(t,e){let{gen:r,data:n,it:o}=t;r.if(ef(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,_e._)`${e}`},!0),t.error()})}le.checkReportMissingProp=QC;function eI({gen:t,data:e,it:{opts:r}},n,o){return(0,_e.or)(...n.map(s=>(0,_e.and)(ef(t,e,s,r.ownProperties),(0,_e._)`${o} = ${s}`)))}le.checkMissingProp=eI;function tI(t,e){t.setParams({missingProperty:e},!0),t.error()}le.reportMissingProp=tI;function f0(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,_e._)`Object.prototype.hasOwnProperty`})}le.hasPropFunc=f0;function Qm(t,e,r){return(0,_e._)`${f0(t)}.call(${e}, ${r})`}le.isOwnProperty=Qm;function rI(t,e,r,n){let o=(0,_e._)`${e}${(0,_e.getProperty)(r)} !== undefined`;return n?(0,_e._)`${o} && ${Qm(t,e,r)}`:o}le.propertyInData=rI;function ef(t,e,r,n){let o=(0,_e._)`${e}${(0,_e.getProperty)(r)} === undefined`;return n?(0,_e.or)(o,(0,_e.not)(Qm(t,e,r))):o}le.noPropertyInData=ef;function h0(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}le.allSchemaProperties=h0;function nI(t,e){return h0(e).filter(r=>!(0,Xm.alwaysValidSchema)(t,e[r]))}le.schemaProperties=nI;function oI({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=[[Hr.default.instancePath,(0,_e.strConcat)(Hr.default.instancePath,s)],[Hr.default.parentData,i.parentData],[Hr.default.parentDataProperty,i.parentDataProperty],[Hr.default.rootData,Hr.default.rootData]];i.opts.dynamicRef&&d.push([Hr.default.dynamicAnchors,Hr.default.dynamicAnchors]);let m=(0,_e._)`${l}, ${r.object(...d)}`;return c!==_e.nil?(0,_e._)`${a}.call(${c}, ${m})`:(0,_e._)`${a}(${m})`}le.callValidateCode=oI;var sI=(0,_e._)`new RegExp`;function iI({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"?sI:(0,XC.useFunc)(t,o)}(${r}, ${n})`})}le.usePattern=iI;function aI(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:Xm.Type.Num},s),e.if((0,_e.not)(s),a)})}}le.validateArray=aI;function cI(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,Xm.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))}le.validateUnion=cI});var y0=R(rr=>{"use strict";Object.defineProperty(rr,"__esModule",{value:!0});rr.validateKeywordUsage=rr.validSchemaType=rr.funcKeywordCode=rr.macroKeywordCode=void 0;var nt=J(),Mn=xr(),uI=It(),lI=Ws();function dI(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=_0(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:nt.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}rr.macroKeywordCode=dI;function pI(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;fI(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=_0(n,o,u),d=n.let("valid");t.block$data(d,m),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function m(){if(e.errors===!1)f(),e.modifying&&g0(t),g(()=>t.error());else{let _=e.async?h():p();e.modifying&&g0(t),g(()=>mI(t,_))}}function h(){let _=n.let("ruleErrs",null);return n.try(()=>f((0,nt._)`await `),y=>n.assign(d,!1).if((0,nt._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,nt._)`${y}.errors`),()=>n.throw(y))),_}function p(){let _=(0,nt._)`${l}.errors`;return n.assign(_,null),f(nt.nil),_}function f(_=e.async?(0,nt._)`await `:nt.nil){let y=c.opts.passContext?Mn.default.this:Mn.default.self,x=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,nt._)`${_}${(0,uI.callValidateCode)(t,l,y,x)}`,e.modifying)}function g(_){var y;n.if((0,nt.not)((y=e.valid)!==null&&y!==void 0?y:d),_)}}rr.funcKeywordCode=pI;function g0(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,nt._)`${n.parentData}[${n.parentDataProperty}]`))}function mI(t,e){let{gen:r}=t;r.if((0,nt._)`Array.isArray(${e})`,()=>{r.assign(Mn.default.vErrors,(0,nt._)`${Mn.default.vErrors} === null ? ${e} : ${Mn.default.vErrors}.concat(${e})`).assign(Mn.default.errors,(0,nt._)`${Mn.default.vErrors}.length`),(0,lI.extendErrors)(t)},()=>t.error())}function fI({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function _0(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,nt.stringify)(r)})}function hI(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")}rr.validSchemaType=hI;function gI({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)}}rr.validateKeywordUsage=gI});var v0=R(qr=>{"use strict";Object.defineProperty(qr,"__esModule",{value:!0});qr.extendSubschemaMode=qr.extendSubschemaData=qr.getSubschema=void 0;var nr=J(),x0=oe();function _I(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,nr._)`${t.schemaPath}${(0,nr.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,nr._)`${t.schemaPath}${(0,nr.getProperty)(e)}${(0,nr.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,x0.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')}qr.getSubschema=_I;function yI(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,m=a.let("data",(0,nr._)`${e.data}${(0,nr.getProperty)(r)}`,!0);c(m),t.errorPath=(0,nr.str)`${u}${(0,x0.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,nr._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof nr.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]}}qr.extendSubschemaData=yI;function xI(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}qr.extendSubschemaMode=xI});var tf=R((kq,S0)=>{"use strict";S0.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 k0=R((wq,b0)=>{"use strict";var Br=b0.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(){};sc(e,n,o,t,"",t)};Br.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Br.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Br.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Br.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 sc(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 Br.arrayKeywords)for(var m=0;m<d.length;m++)sc(t,e,r,d[m],o+"/"+l+"/"+m,s,o,l,n,m)}else if(l in Br.propsKeywords){if(d&&typeof d=="object")for(var h in d)sc(t,e,r,d[h],o+"/"+l+"/"+vI(h),s,o,l,n,h)}else(l in Br.keywords||t.allKeys&&!(l in Br.skipKeywords))&&sc(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function vI(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Ks=R(dt=>{"use strict";Object.defineProperty(dt,"__esModule",{value:!0});dt.getSchemaRefs=dt.resolveUrl=dt.normalizeId=dt._getFullPath=dt.getFullPath=dt.inlineRef=void 0;var SI=oe(),bI=tf(),kI=k0(),wI=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function $I(t,e=!0){return typeof t=="boolean"?!0:e===!0?!rf(t):e?w0(t)<=e:!1}dt.inlineRef=$I;var EI=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function rf(t){for(let e in t){if(EI.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(rf)||typeof r=="object"&&rf(r))return!0}return!1}function w0(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!wI.has(r)&&(typeof t[r]=="object"&&(0,SI.eachItem)(t[r],n=>e+=w0(n)),e===1/0))return 1/0}return e}function $0(t,e="",r){r!==!1&&(e=Co(e));let n=t.parse(e);return E0(t,n)}dt.getFullPath=$0;function E0(t,e){return t.serialize(e).split("#")[0]+"#"}dt._getFullPath=E0;var TI=/#\/?$/;function Co(t){return t?t.replace(TI,""):""}dt.normalizeId=Co;function PI(t,e,r){return r=Co(r),t.resolve(e,r)}dt.resolveUrl=PI;var RI=/^[a-z_][-a-z0-9._]*$/i;function OI(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Co(t[r]||e),s={"":o},i=$0(n,o,!1),a={},c=new Set;return kI(t,{allKeys:!0},(d,m,h,p)=>{if(p===void 0)return;let f=i+m,g=s[p];typeof d[r]=="string"&&(g=_.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),s[m]=g;function _(x){let k=this.opts.uriResolver.resolve;if(x=Co(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!==Co(f)&&(x[0]==="#"?(u(d,a[x],x),a[x]=d):this.refs[x]=f),x}function y(x){if(typeof x=="string"){if(!RI.test(x))throw new Error(`invalid anchor "${x}"`);_.call(this,`#${x}`)}}}),a;function u(d,m,h){if(m!==void 0&&!bI(d,m))throw l(h)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}dt.getSchemaRefs=OI});var Xs=R(Vr=>{"use strict";Object.defineProperty(Vr,"__esModule",{value:!0});Vr.getData=Vr.KeywordCxt=Vr.validateFunctionCode=void 0;var C0=i0(),T0=Gs(),of=Gm(),ic=Gs(),CI=m0(),Ys=y0(),nf=v0(),M=J(),B=xr(),II=Ks(),vr=oe(),Js=Ws();function AI(t){if(N0(t)&&(z0(t),A0(t))){jI(t);return}I0(t,()=>(0,C0.topBoolOrEmptySchema)(t))}Vr.validateFunctionCode=AI;function I0({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,M._)`${B.default.data}, ${B.default.valCxt}`,n.$async,()=>{t.code((0,M._)`"use strict"; ${P0(r,o)}`),zI(t,o),t.code(s)}):t.func(e,(0,M._)`${B.default.data}, ${NI(o)}`,n.$async,()=>t.code(P0(r,o)).code(s))}function NI(t){return(0,M._)`{${B.default.instancePath}="", ${B.default.parentData}, ${B.default.parentDataProperty}, ${B.default.rootData}=${B.default.data}${t.dynamicRef?(0,M._)`, ${B.default.dynamicAnchors}={}`:M.nil}}={}`}function zI(t,e){t.if(B.default.valCxt,()=>{t.var(B.default.instancePath,(0,M._)`${B.default.valCxt}.${B.default.instancePath}`),t.var(B.default.parentData,(0,M._)`${B.default.valCxt}.${B.default.parentData}`),t.var(B.default.parentDataProperty,(0,M._)`${B.default.valCxt}.${B.default.parentDataProperty}`),t.var(B.default.rootData,(0,M._)`${B.default.valCxt}.${B.default.rootData}`),e.dynamicRef&&t.var(B.default.dynamicAnchors,(0,M._)`${B.default.valCxt}.${B.default.dynamicAnchors}`)},()=>{t.var(B.default.instancePath,(0,M._)`""`),t.var(B.default.parentData,(0,M._)`undefined`),t.var(B.default.parentDataProperty,(0,M._)`undefined`),t.var(B.default.rootData,B.default.data),e.dynamicRef&&t.var(B.default.dynamicAnchors,(0,M._)`{}`)})}function jI(t){let{schema:e,opts:r,gen:n}=t;I0(t,()=>{r.$comment&&e.$comment&&M0(t),ZI(t),n.let(B.default.vErrors,null),n.let(B.default.errors,0),r.unevaluated&&MI(t),j0(t),qI(t)})}function MI(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,M._)`${r}.evaluated`),e.if((0,M._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,M._)`${t.evaluated}.props`,(0,M._)`undefined`)),e.if((0,M._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,M._)`${t.evaluated}.items`,(0,M._)`undefined`))}function P0(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,M._)`/*# sourceURL=${r} */`:M.nil}function DI(t,e){if(N0(t)&&(z0(t),A0(t))){LI(t,e);return}(0,C0.boolOrEmptySchema)(t,e)}function A0({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 N0(t){return typeof t.schema!="boolean"}function LI(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&M0(t),UI(t),HI(t);let s=n.const("_errs",B.default.errors);j0(t,s),n.var(e,(0,M._)`${s} === ${B.default.errors}`)}function z0(t){(0,vr.checkUnknownRules)(t),FI(t)}function j0(t,e){if(t.opts.jtd)return R0(t,[],!1,e);let r=(0,T0.getSchemaTypes)(t.schema),n=(0,T0.coerceAndCheckDataType)(t,r);R0(t,r,!n,e)}function FI(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,vr.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function ZI(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,vr.checkStrictMode)(t,"default is ignored in the schema root")}function UI(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,II.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function HI(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function M0({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,M._)`${B.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,M.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,M._)`${B.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function qI(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,M._)`${B.default.errors} === 0`,()=>e.return(B.default.data),()=>e.throw((0,M._)`new ${o}(${B.default.vErrors})`)):(e.assign((0,M._)`${n}.errors`,B.default.vErrors),s.unevaluated&&BI(t),e.return((0,M._)`${B.default.errors} === 0`))}function BI({gen:t,evaluated:e,props:r,items:n}){r instanceof M.Name&&t.assign((0,M._)`${e}.props`,r),n instanceof M.Name&&t.assign((0,M._)`${e}.items`,n)}function R0(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,vr.schemaHasRulesButRef)(s,l))){o.block(()=>L0(t,"$ref",l.all.$ref.definition));return}c.jtd||VI(t,e),o.block(()=>{for(let m of l.rules)d(m);d(l.post)});function d(m){(0,of.shouldUseGroup)(s,m)&&(m.type?(o.if((0,ic.checkDataType)(m.type,i,c.strictNumbers)),O0(t,m),e.length===1&&e[0]===m.type&&r&&(o.else(),(0,ic.reportTypeError)(t)),o.endIf()):O0(t,m),a||o.if((0,M._)`${B.default.errors} === ${n||0}`))}}function O0(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,CI.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,of.shouldUseRule)(n,s)&&L0(t,s.keyword,s.definition,e.type)})}function VI(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(WI(t,e),t.opts.allowUnionTypes||GI(t,e),KI(t,t.dataTypes))}function WI(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{D0(t.dataTypes,r)||sf(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),YI(t,e)}}function GI(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&sf(t,"use allowUnionTypes to allow union type keyword")}function KI(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,of.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>JI(e,i))&&sf(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function JI(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function D0(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function YI(t,e){let r=[];for(let n of t.dataTypes)D0(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function sf(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,vr.checkStrictMode)(t,e,t.opts.strictTypes)}var ac=class{constructor(e,r,n){if((0,Ys.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,vr.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",F0(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Ys.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",B.default.errors))}result(e,r,n){this.failResult((0,M.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,M.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,M._)`${r} !== undefined && (${(0,M.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?Js.reportExtraError:Js.reportError)(this,this.def.error,r)}$dataError(){(0,Js.reportError)(this,this.def.$dataError||Js.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Js.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=M.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=M.nil,r=M.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,M.or)((0,M._)`${o} === undefined`,r)),e!==M.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==M.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,M.or)(i(),a());function i(){if(n.length){if(!(r instanceof M.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,M._)`${(0,ic.checkDataTypes)(c,r,s.opts.strictNumbers,ic.DataType.Wrong)}`}return M.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,M._)`!${c}(${r})`}return M.nil}}subschema(e,r){let n=(0,nf.getSubschema)(this.it,e);(0,nf.extendSubschemaData)(n,this.it,e),(0,nf.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return DI(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=vr.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=vr.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,M.Name)),!0}};Vr.KeywordCxt=ac;function L0(t,e,r,n){let o=new ac(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Ys.funcKeywordCode)(o,r):"macro"in r?(0,Ys.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Ys.funcKeywordCode)(o,r)}var XI=/^\/(?:[^~]|~0|~1)*$/,QI=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function F0(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return B.default.rootData;if(t[0]==="/"){if(!XI.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=B.default.rootData}else{let u=QI.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,M._)`${s}${(0,M.getProperty)((0,vr.unescapeJsonPointer)(u))}`,i=(0,M._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Vr.getData=F0});var cc=R(cf=>{"use strict";Object.defineProperty(cf,"__esModule",{value:!0});var af=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};cf.default=af});var Qs=R(df=>{"use strict";Object.defineProperty(df,"__esModule",{value:!0});var uf=Ks(),lf=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,uf.resolveUrl)(e,r,n),this.missingSchema=(0,uf.normalizeId)((0,uf.getFullPath)(e,this.missingRef))}};df.default=lf});var lc=R(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.resolveSchema=At.getCompilingSchema=At.resolveRef=At.compileSchema=At.SchemaEnv=void 0;var qt=J(),e1=cc(),Dn=xr(),Bt=Ks(),Z0=oe(),t1=Xs(),Io=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,Bt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};At.SchemaEnv=Io;function mf(t){let e=U0.call(this,t);if(e)return e;let r=(0,Bt.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:e1.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:Dn.default.data,parentData:Dn.default.parentData,parentDataProperty:Dn.default.parentDataProperty,dataNames:[Dn.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,t1.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Dn.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let h=new Function(`${Dn.default.self}`,`${Dn.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:h}),h.errors=null,h.schema=t.schema,h.schemaEnv=t,t.$async&&(h.$async=!0),this.opts.code.source===!0&&(h.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:f}=u;h.evaluated={props:p instanceof qt.Name?void 0:p,items:f instanceof qt.Name?void 0:f,dynamicProps:p instanceof qt.Name,dynamicItems:f instanceof qt.Name},h.source&&(h.source.evaluated=(0,qt.stringify)(h.evaluated))}return t.validate=h,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)}}At.compileSchema=mf;function r1(t,e,r){var n;r=(0,Bt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=s1.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 Io({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=n1.call(this,s)}At.resolveRef=r1;function n1(t){return(0,Bt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:mf.call(this,t)}function U0(t){for(let e of this._compilations)if(o1(e,t))return e}At.getCompilingSchema=U0;function o1(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function s1(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||uc.call(this,t,e)}function uc(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Bt._getFullPath)(this.opts.uriResolver,r),o=(0,Bt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return pf.call(this,r,t);let s=(0,Bt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=uc.call(this,t,i);return typeof a?.schema!="object"?void 0:pf.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||mf.call(this,i),s===(0,Bt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,Bt.resolveUrl)(this.opts.uriResolver,o,u)),new Io({schema:a,schemaId:c,root:t,baseId:o})}return pf.call(this,r,i)}}At.resolveSchema=uc;var i1=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function pf(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,Z0.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!i1.has(a)&&u&&(e=(0,Bt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,Z0.schemaHasRulesButRef)(r,this.RULES)){let a=(0,Bt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=uc.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Io({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var H0=R((Oq,a1)=>{a1.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 hf=R((Cq,W0)=>{"use strict";var c1=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),B0=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 ff(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 u1=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function q0(t){return t.length=0,!0}function l1(t,e,r){if(t.length){let n=ff(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function d1(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=l1;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=q0}else{o.push(u);continue}}return o.length&&(a===q0?r.zone=o.join(""):i?n.push(o.join("")):n.push(ff(o))),r.address=n.join(""),r}function V0(t){if(p1(t,":")<2)return{host:t,isIPV6:!1};let e=d1(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 p1(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function m1(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 f1(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 h1(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!B0(r)){let n=V0(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}W0.exports={nonSimpleDomain:u1,recomposeAuthority:h1,normalizeComponentEncoding:f1,removeDotSegments:m1,isIPv4:B0,isUUID:c1,normalizeIPv6:V0,stringArrayToHexStripped:ff}});var X0=R((Iq,Y0)=>{"use strict";var{isUUID:g1}=hf(),_1=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,y1=["http","https","ws","wss","urn","urn:uuid"];function x1(t){return y1.indexOf(t)!==-1}function gf(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 G0(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function K0(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 v1(t){return t.secure=gf(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function S1(t){if((t.port===(gf(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 b1(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(_1);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=_f(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function k1(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=_f(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 w1(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!g1(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function $1(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var J0={scheme:"http",domainHost:!0,parse:G0,serialize:K0},E1={scheme:"https",domainHost:J0.domainHost,parse:G0,serialize:K0},dc={scheme:"ws",domainHost:!0,parse:v1,serialize:S1},T1={scheme:"wss",domainHost:dc.domainHost,parse:dc.parse,serialize:dc.serialize},P1={scheme:"urn",parse:b1,serialize:k1,skipNormalize:!0},R1={scheme:"urn:uuid",parse:w1,serialize:$1,skipNormalize:!0},pc={http:J0,https:E1,ws:dc,wss:T1,urn:P1,"urn:uuid":R1};Object.setPrototypeOf(pc,null);function _f(t){return t&&(pc[t]||pc[t.toLowerCase()])||void 0}Y0.exports={wsIsSecure:gf,SCHEMES:pc,isValidSchemeName:x1,getSchemeHandler:_f}});var tS=R((Aq,fc)=>{"use strict";var{normalizeIPv6:O1,removeDotSegments:ei,recomposeAuthority:C1,normalizeComponentEncoding:mc,isIPv4:I1,nonSimpleDomain:A1}=hf(),{SCHEMES:N1,getSchemeHandler:Q0}=X0();function z1(t,e){return typeof t=="string"?t=or(Sr(t,e),e):typeof t=="object"&&(t=Sr(or(t,e),e)),t}function j1(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=eS(Sr(t,n),Sr(e,n),n,!0);return n.skipEscape=!0,or(o,n)}function eS(t,e,r,n){let o={};return n||(t=Sr(or(t,r),r),e=Sr(or(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=ei(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=ei(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=ei(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=ei(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 M1(t,e,r){return typeof t=="string"?(t=unescape(t),t=or(mc(Sr(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=or(mc(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=or(mc(Sr(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=or(mc(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function or(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=Q0(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=C1(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=ei(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 D1=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Sr(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(D1);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(I1(n.host)===!1){let c=O1(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=Q0(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&A1(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 yf={SCHEMES:N1,normalize:z1,resolve:j1,resolveComponent:eS,equal:M1,serialize:or,parse:Sr};fc.exports=yf;fc.exports.default=yf;fc.exports.fastUri=yf});var nS=R(xf=>{"use strict";Object.defineProperty(xf,"__esModule",{value:!0});var rS=tS();rS.code='require("ajv/dist/runtime/uri").default';xf.default=rS});var dS=R(Be=>{"use strict";Object.defineProperty(Be,"__esModule",{value:!0});Be.CodeGen=Be.Name=Be.nil=Be.stringify=Be.str=Be._=Be.KeywordCxt=void 0;var L1=Xs();Object.defineProperty(Be,"KeywordCxt",{enumerable:!0,get:function(){return L1.KeywordCxt}});var Ao=J();Object.defineProperty(Be,"_",{enumerable:!0,get:function(){return Ao._}});Object.defineProperty(Be,"str",{enumerable:!0,get:function(){return Ao.str}});Object.defineProperty(Be,"stringify",{enumerable:!0,get:function(){return Ao.stringify}});Object.defineProperty(Be,"nil",{enumerable:!0,get:function(){return Ao.nil}});Object.defineProperty(Be,"Name",{enumerable:!0,get:function(){return Ao.Name}});Object.defineProperty(Be,"CodeGen",{enumerable:!0,get:function(){return Ao.CodeGen}});var F1=cc(),cS=Qs(),Z1=Wm(),ti=lc(),U1=J(),ri=Ks(),hc=Gs(),Sf=oe(),oS=H0(),H1=nS(),uS=(t,e)=>new RegExp(t,e);uS.code="new RegExp";var q1=["removeAdditional","useDefaults","coerceTypes"],B1=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),V1={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."},W1={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},sS=200;function G1(t){var e,r,n,o,s,i,a,c,u,l,d,m,h,p,f,g,_,y,x,k,T,Z,V,N,Re;let de=t.strict,ft=(e=t.code)===null||e===void 0?void 0:e.optimize,xi=ft===!0||ft===void 0?1:ft||0,$r=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:uS,ve=(o=t.uriResolver)!==null&&o!==void 0?o:H1.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:de)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:de)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:de)!==null&&l!==void 0?l:"log",strictTuples:(m=(d=t.strictTuples)!==null&&d!==void 0?d:de)!==null&&m!==void 0?m:"log",strictRequired:(p=(h=t.strictRequired)!==null&&h!==void 0?h:de)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:xi,regExp:$r}:{optimize:xi,regExp:$r},loopRequired:(f=t.loopRequired)!==null&&f!==void 0?f:sS,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:sS,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:(T=t.addUsedSchema)!==null&&T!==void 0?T:!0,validateSchema:(Z=t.validateSchema)!==null&&Z!==void 0?Z:!0,validateFormats:(V=t.validateFormats)!==null&&V!==void 0?V:!0,unicodeRegExp:(N=t.unicodeRegExp)!==null&&N!==void 0?N:!0,int32range:(Re=t.int32range)!==null&&Re!==void 0?Re:!0,uriResolver:ve}}var ni=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...G1(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new U1.ValueScope({scope:{},prefixes:B1,es5:r,lines:n}),this.logger=eA(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,Z1.getRules)(),iS.call(this,V1,e,"NOT SUPPORTED"),iS.call(this,W1,e,"DEPRECATED","warn"),this._metaOpts=X1.call(this),e.formats&&J1.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&Y1.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),K1.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=oS;n==="id"&&(o={...oS},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let m=this._addSchema(l,d);return m.validate||i.call(this,m)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof cS.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,ri.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=aS.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new ti.SchemaEnv({schema:{},schemaId:n});if(r=ti.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=aS.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,ri.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(rA.call(this,n,r),!r)return(0,Sf.eachItem)(n,s=>vf.call(this,s)),this;oA.call(this,r);let o={...r,type:(0,hc.getJSONTypes)(r.type),schemaType:(0,hc.getJSONTypes)(r.schemaType)};return(0,Sf.eachItem)(n,o.type.length===0?s=>vf.call(this,s,o):s=>o.type.forEach(i=>vf.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]=lS(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,ri.normalizeId)(i||n);let u=ri.getSchemaRefs.call(this,e,n);return c=new ti.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):ti.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{ti.compileSchema.call(this,e)}finally{this.opts=r}}};ni.ValidationError=F1.default;ni.MissingRefError=cS.default;Be.default=ni;function iS(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 aS(t){return t=(0,ri.normalizeId)(t),this.schemas[t]||this.refs[t]}function K1(){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 J1(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function Y1(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 X1(){let t={...this.opts};for(let e of q1)delete t[e];return t}var Q1={log(){},warn(){},error(){}};function eA(t){if(t===!1)return Q1;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 tA=/^[a-z_$][a-z0-9_$:-]*$/i;function rA(t,e){let{RULES:r}=this;if((0,Sf.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!tA.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 vf(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,hc.getJSONTypes)(e.type),schemaType:(0,hc.getJSONTypes)(e.schemaType)}};e.before?nA.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 nA(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 oA(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=lS(e)),t.validateSchema=this.compile(e,!0))}var sA={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function lS(t){return{anyOf:[t,sA]}}});var pS=R(bf=>{"use strict";Object.defineProperty(bf,"__esModule",{value:!0});var iA={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};bf.default=iA});var gS=R(Ln=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.callRef=Ln.getValidate=void 0;var aA=Qs(),mS=It(),pt=J(),No=xr(),fS=lc(),gc=oe(),cA={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=fS.resolveRef.call(c,u,o,r);if(l===void 0)throw new aA.default(n.opts.uriResolver,o,r);if(l instanceof fS.SchemaEnv)return m(l);return h(l);function d(){if(s===u)return _c(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return _c(t,(0,pt._)`${p}.validate`,u,u.$async)}function m(p){let f=hS(t,p);_c(t,f,p,p.$async)}function h(p){let f=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,pt.stringify)(p)}:{ref:p}),g=e.name("valid"),_=t.subschema({schema:p,dataTypes:[],schemaPath:pt.nil,topSchemaRef:f,errSchemaPath:r},g);t.mergeEvaluated(_),t.ok(g)}}};function hS(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,pt._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Ln.getValidate=hS;function _c(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?No.default.this:pt.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,pt._)`await ${(0,mS.callValidateCode)(t,e,u)}`),h(e),i||o.assign(p,!0)},f=>{o.if((0,pt._)`!(${f} instanceof ${s.ValidationError})`,()=>o.throw(f)),m(f),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,mS.callValidateCode)(t,e,u),()=>h(e),()=>m(e))}function m(p){let f=(0,pt._)`${p}.errors`;o.assign(No.default.vErrors,(0,pt._)`${No.default.vErrors} === null ? ${f} : ${No.default.vErrors}.concat(${f})`),o.assign(No.default.errors,(0,pt._)`${No.default.vErrors}.length`)}function h(p){var f;if(!s.opts.unevaluated)return;let g=(f=r?.validate)===null||f===void 0?void 0:f.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=gc.mergeEvaluated.props(o,g.props,s.props));else{let _=o.var("props",(0,pt._)`${p}.evaluated.props`);s.props=gc.mergeEvaluated.props(o,_,s.props,pt.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=gc.mergeEvaluated.items(o,g.items,s.items));else{let _=o.var("items",(0,pt._)`${p}.evaluated.items`);s.items=gc.mergeEvaluated.items(o,_,s.items,pt.Name)}}}Ln.callRef=_c;Ln.default=cA});var _S=R(kf=>{"use strict";Object.defineProperty(kf,"__esModule",{value:!0});var uA=pS(),lA=gS(),dA=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",uA.default,lA.default];kf.default=dA});var yS=R(wf=>{"use strict";Object.defineProperty(wf,"__esModule",{value:!0});var yc=J(),Wr=yc.operators,xc={maximum:{okStr:"<=",ok:Wr.LTE,fail:Wr.GT},minimum:{okStr:">=",ok:Wr.GTE,fail:Wr.LT},exclusiveMaximum:{okStr:"<",ok:Wr.LT,fail:Wr.GTE},exclusiveMinimum:{okStr:">",ok:Wr.GT,fail:Wr.LTE}},pA={message:({keyword:t,schemaCode:e})=>(0,yc.str)`must be ${xc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,yc._)`{comparison: ${xc[t].okStr}, limit: ${e}}`},mA={keyword:Object.keys(xc),type:"number",schemaType:"number",$data:!0,error:pA,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,yc._)`${r} ${xc[e].fail} ${n} || isNaN(${r})`)}};wf.default=mA});var xS=R($f=>{"use strict";Object.defineProperty($f,"__esModule",{value:!0});var oi=J(),fA={message:({schemaCode:t})=>(0,oi.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,oi._)`{multipleOf: ${t}}`},hA={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:fA,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,oi._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,oi._)`${i} !== parseInt(${i})`;t.fail$data((0,oi._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};$f.default=hA});var SS=R(Ef=>{"use strict";Object.defineProperty(Ef,"__esModule",{value:!0});function vS(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}Ef.default=vS;vS.code='require("ajv/dist/runtime/ucs2length").default'});var bS=R(Tf=>{"use strict";Object.defineProperty(Tf,"__esModule",{value:!0});var Fn=J(),gA=oe(),_A=SS(),yA={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Fn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Fn._)`{limit: ${t}}`},xA={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:yA,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?Fn.operators.GT:Fn.operators.LT,i=o.opts.unicode===!1?(0,Fn._)`${r}.length`:(0,Fn._)`${(0,gA.useFunc)(t.gen,_A.default)}(${r})`;t.fail$data((0,Fn._)`${i} ${s} ${n}`)}};Tf.default=xA});var kS=R(Pf=>{"use strict";Object.defineProperty(Pf,"__esModule",{value:!0});var vA=It(),SA=oe(),zo=J(),bA={message:({schemaCode:t})=>(0,zo.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,zo._)`{pattern: ${t}}`},kA={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:bA,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,zo._)`new RegExp`:(0,SA.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,zo._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,zo._)`!${l}`)}else{let c=(0,vA.usePattern)(t,o);t.fail$data((0,zo._)`!${c}.test(${r})`)}}};Pf.default=kA});var wS=R(Rf=>{"use strict";Object.defineProperty(Rf,"__esModule",{value:!0});var si=J(),wA={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,si.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,si._)`{limit: ${t}}`},$A={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:wA,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?si.operators.GT:si.operators.LT;t.fail$data((0,si._)`Object.keys(${r}).length ${o} ${n}`)}};Rf.default=$A});var $S=R(Of=>{"use strict";Object.defineProperty(Of,"__esModule",{value:!0});var ii=It(),ai=J(),EA=oe(),TA={message:({params:{missingProperty:t}})=>(0,ai.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,ai._)`{missingProperty: ${t}}`},PA={keyword:"required",type:"object",schemaType:"array",$data:!0,error:TA,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 h=t.parentSchema.properties,{definedProperties:p}=t.it;for(let f of r)if(h?.[f]===void 0&&!p.has(f)){let g=i.schemaEnv.baseId+i.errSchemaPath,_=`required property "${f}" is not defined at "${g}" (strictRequired)`;(0,EA.checkStrictMode)(i,_,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(ai.nil,d);else for(let h of r)(0,ii.checkReportMissingProp)(t,h)}function l(){let h=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>m(h,p)),t.ok(p)}else e.if((0,ii.checkMissingProp)(t,r,h)),(0,ii.reportMissingProp)(t,h),e.else()}function d(){e.forOf("prop",n,h=>{t.setParams({missingProperty:h}),e.if((0,ii.noPropertyInData)(e,o,h,a.ownProperties),()=>t.error())})}function m(h,p){t.setParams({missingProperty:h}),e.forOf(h,n,()=>{e.assign(p,(0,ii.propertyInData)(e,o,h,a.ownProperties)),e.if((0,ai.not)(p),()=>{t.error(),e.break()})},ai.nil)}}};Of.default=PA});var ES=R(Cf=>{"use strict";Object.defineProperty(Cf,"__esModule",{value:!0});var ci=J(),RA={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,ci.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,ci._)`{limit: ${t}}`},OA={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:RA,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?ci.operators.GT:ci.operators.LT;t.fail$data((0,ci._)`${r}.length ${o} ${n}`)}};Cf.default=OA});var vc=R(If=>{"use strict";Object.defineProperty(If,"__esModule",{value:!0});var TS=tf();TS.code='require("ajv/dist/runtime/equal").default';If.default=TS});var PS=R(Nf=>{"use strict";Object.defineProperty(Nf,"__esModule",{value:!0});var Af=Gs(),Ve=J(),CA=oe(),IA=vc(),AA={message:({params:{i:t,j:e}})=>(0,Ve.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ve._)`{i: ${t}, j: ${e}}`},NA={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,Af.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ve._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,Ve._)`${r}.length`),f=e.let("j");t.setParams({i:p,j:f}),e.assign(c,!0),e.if((0,Ve._)`${p} > 1`,()=>(d()?m:h)(p,f))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function m(p,f){let g=e.name("item"),_=(0,Af.checkDataTypes)(u,g,a.opts.strictNumbers,Af.DataType.Wrong),y=e.const("indices",(0,Ve._)`{}`);e.for((0,Ve._)`;${p}--;`,()=>{e.let(g,(0,Ve._)`${r}[${p}]`),e.if(_,(0,Ve._)`continue`),u.length>1&&e.if((0,Ve._)`typeof ${g} == "string"`,(0,Ve._)`${g} += "_"`),e.if((0,Ve._)`typeof ${y}[${g}] == "number"`,()=>{e.assign(f,(0,Ve._)`${y}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ve._)`${y}[${g}] = ${p}`)})}function h(p,f){let g=(0,CA.useFunc)(e,IA.default),_=e.name("outer");e.label(_).for((0,Ve._)`;${p}--;`,()=>e.for((0,Ve._)`${f} = ${p}; ${f}--;`,()=>e.if((0,Ve._)`${g}(${r}[${p}], ${r}[${f}])`,()=>{t.error(),e.assign(c,!1).break(_)})))}}};Nf.default=NA});var RS=R(jf=>{"use strict";Object.defineProperty(jf,"__esModule",{value:!0});var zf=J(),zA=oe(),jA=vc(),MA={message:"must be equal to constant",params:({schemaCode:t})=>(0,zf._)`{allowedValue: ${t}}`},DA={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,zf._)`!${(0,zA.useFunc)(e,jA.default)}(${r}, ${o})`):t.fail((0,zf._)`${s} !== ${r}`)}};jf.default=DA});var OS=R(Mf=>{"use strict";Object.defineProperty(Mf,"__esModule",{value:!0});var ui=J(),LA=oe(),FA=vc(),ZA={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,ui._)`{allowedValues: ${t}}`},UA={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,LA.useFunc)(e,FA.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 h=e.const("vSchema",s);l=(0,ui.or)(...o.map((p,f)=>m(h,f)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,h=>e.if((0,ui._)`${u()}(${r}, ${h})`,()=>e.assign(l,!0).break()))}function m(h,p){let f=o[p];return typeof f=="object"&&f!==null?(0,ui._)`${u()}(${r}, ${h}[${p}])`:(0,ui._)`${r} === ${f}`}}};Mf.default=UA});var CS=R(Df=>{"use strict";Object.defineProperty(Df,"__esModule",{value:!0});var HA=yS(),qA=xS(),BA=bS(),VA=kS(),WA=wS(),GA=$S(),KA=ES(),JA=PS(),YA=RS(),XA=OS(),QA=[HA.default,qA.default,BA.default,VA.default,WA.default,GA.default,KA.default,JA.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},YA.default,XA.default];Df.default=QA});var Ff=R(li=>{"use strict";Object.defineProperty(li,"__esModule",{value:!0});li.validateAdditionalItems=void 0;var Zn=J(),Lf=oe(),eN={message:({params:{len:t}})=>(0,Zn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Zn._)`{limit: ${t}}`},tN={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:eN,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Lf.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}IS(t,n)}};function IS(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Zn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Zn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,Lf.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Zn._)`${a} <= ${e.length}`);r.if((0,Zn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:Lf.Type.Num},u),i.allErrors||r.if((0,Zn.not)(u),()=>r.break())})}}li.validateAdditionalItems=IS;li.default=tN});var Zf=R(di=>{"use strict";Object.defineProperty(di,"__esModule",{value:!0});di.validateTuple=void 0;var AS=J(),Sc=oe(),rN=It(),nN={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return NS(t,"additionalItems",e);r.items=!0,!(0,Sc.alwaysValidSchema)(r,e)&&t.ok((0,rN.validateArray)(t))}};function NS(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=Sc.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,AS._)`${s}.length`);r.forEach((d,m)=>{(0,Sc.alwaysValidSchema)(a,d)||(n.if((0,AS._)`${u} > ${m}`,()=>t.subschema({keyword:i,schemaProp:m,dataProp:m},c)),t.ok(c))});function l(d){let{opts:m,errSchemaPath:h}=a,p=r.length,f=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(m.strictTuples&&!f){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${h}"`;(0,Sc.checkStrictMode)(a,g,m.strictTuples)}}}di.validateTuple=NS;di.default=nN});var zS=R(Uf=>{"use strict";Object.defineProperty(Uf,"__esModule",{value:!0});var oN=Zf(),sN={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,oN.validateTuple)(t,"items")};Uf.default=sN});var MS=R(Hf=>{"use strict";Object.defineProperty(Hf,"__esModule",{value:!0});var jS=J(),iN=oe(),aN=It(),cN=Ff(),uN={message:({params:{len:t}})=>(0,jS.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,jS._)`{limit: ${t}}`},lN={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:uN,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,iN.alwaysValidSchema)(n,e)&&(o?(0,cN.validateAdditionalItems)(t,o):t.ok((0,aN.validateArray)(t)))}};Hf.default=lN});var DS=R(qf=>{"use strict";Object.defineProperty(qf,"__esModule",{value:!0});var Nt=J(),bc=oe(),dN={message:({params:{min:t,max:e}})=>e===void 0?(0,Nt.str)`must contain at least ${t} valid item(s)`:(0,Nt.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Nt._)`{minContains: ${t}}`:(0,Nt._)`{minContains: ${t}, maxContains: ${e}}`},pN={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:dN,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,Nt._)`${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 f=(0,Nt._)`${l} >= ${i}`;a!==void 0&&(f=(0,Nt._)`${f} && ${l} <= ${a}`),t.pass(f);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?h(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,Nt._)`${o}.length > 0`,m)):(e.let(d,!1),m()),t.result(d,()=>t.reset());function m(){let f=e.name("_valid"),g=e.let("count",0);h(f,()=>e.if(f,()=>p(g)))}function h(f,g){e.forRange("i",0,l,_=>{t.subschema({keyword:"contains",dataProp:_,dataPropType:bc.Type.Num,compositeRule:!0},f),g()})}function p(f){e.code((0,Nt._)`${f}++`),a===void 0?e.if((0,Nt._)`${f} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,Nt._)`${f} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,Nt._)`${f} >= ${i}`,()=>e.assign(d,!0)))}}};qf.default=pN});var ZS=R(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.validateSchemaDeps=sr.validatePropertyDeps=sr.error=void 0;var Bf=J(),mN=oe(),pi=It();sr.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Bf.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Bf._)`{property: ${t},
56
55
  missingProperty: ${n},
57
56
  depsCount: ${e},
58
- deps: ${r}}`};var eN={keyword:"dependencies",type:"object",schemaType:"object",error:rr.error,code(t){let[e,r]=tN(t);Fb(t,e),Zb(t,r)}};function tN({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 Fb(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,li.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,li.checkReportMissingProp)(t,u)}):(r.if((0,Uf._)`${c} && (${(0,li.checkMissingProp)(t,a,s)})`),(0,li.reportMissingProp)(t,s),r.else())}}rr.validatePropertyDeps=Fb;function Zb(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,QA.alwaysValidSchema)(s,e[a])||(r.if((0,li.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))}rr.validateSchemaDeps=Zb;rr.default=eN});var qb=R(Hf=>{"use strict";Object.defineProperty(Hf,"__esModule",{value:!0});var Hb=K(),rN=oe(),nN={message:"property name must be valid",params:({params:t})=>(0,Hb._)`{propertyName: ${t.propertyName}}`},oN={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:nN,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,rN.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,Hb.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Hf.default=oN});var Bf=R(qf=>{"use strict";Object.defineProperty(qf,"__esModule",{value:!0});var kc=Tt(),Zt=K(),sN=_r(),wc=oe(),iN={message:"must NOT have additional properties",params:({params:t})=>(0,Zt._)`{additionalProperty: ${t.additionalProperty}}`},aN={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:iN,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,kc.allSchemaProperties)(n.properties),l=(0,kc.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Zt._)`${s} === ${sN.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?p(g):e.if(m(g),()=>p(g))})}function m(g){let _;if(u.length>8){let y=(0,wc.schemaRefOrVal)(i,n.properties,"properties");_=(0,kc.isOwnProperty)(e,y,g)}else u.length?_=(0,Zt.or)(...u.map(y=>(0,Zt._)`${g} === ${y}`)):_=Zt.nil;return l.length&&(_=(0,Zt.or)(_,...l.map(y=>(0,Zt._)`${(0,kc.usePattern)(t,y)}.test(${g})`))),(0,Zt.not)(_)}function f(g){e.code((0,Zt._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){f(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,wc.alwaysValidSchema)(i,r)){let _=e.name("valid");c.removeAdditional==="failing"?(h(g,_,!1),e.if((0,Zt.not)(_),()=>{t.reset(),f(g)})):(h(g,_),a||e.if((0,Zt.not)(_),()=>e.break()))}}function h(g,_,y){let v={keyword:"additionalProperties",dataProp:g,dataPropType:wc.Type.Str};y===!1&&Object.assign(v,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(v,_)}}};qf.default=aN});var Wb=R(Wf=>{"use strict";Object.defineProperty(Wf,"__esModule",{value:!0});var cN=Js(),Bb=Tt(),Vf=oe(),Vb=Bf(),uN={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&&Vb.default.code(new cN.KeywordCxt(s,Vb.default,"additionalProperties"));let i=(0,Bb.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Vf.mergeEvaluated.props(e,(0,Vf.toHash)(i),s.props));let a=i.filter(d=>!(0,Vf.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,Bb.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)}}};Wf.default=uN});var Yb=R(Gf=>{"use strict";Object.defineProperty(Gf,"__esModule",{value:!0});var Gb=Tt(),$c=K(),Kb=oe(),Jb=oe(),lN={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,Gb.allSchemaProperties)(r),c=a.filter(h=>(0,Kb.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 $c.Name)&&(s.props=(0,Jb.evaluatedPropsToName)(e,s.props));let{props:d}=s;m();function m(){for(let h of a)u&&f(h),s.allErrors?p(h):(e.var(l,!0),p(h),e.if(l))}function f(h){for(let g in u)new RegExp(h).test(g)&&(0,Kb.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,$c._)`${(0,Gb.usePattern)(t,h)}.test(${g})`,()=>{let _=c.includes(h);_||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:Jb.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,$c._)`${d}[${g}]`,!0):!_&&!s.allErrors&&e.if((0,$c.not)(l),()=>e.break())})})}}};Gf.default=lN});var Xb=R(Kf=>{"use strict";Object.defineProperty(Kf,"__esModule",{value:!0});var dN=oe(),pN={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,dN.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"}};Kf.default=pN});var Qb=R(Jf=>{"use strict";Object.defineProperty(Jf,"__esModule",{value:!0});var mN=Tt(),fN={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:mN.validateUnion,error:{message:"must match a schema in anyOf"}};Jf.default=fN});var eS=R(Yf=>{"use strict";Object.defineProperty(Yf,"__esModule",{value:!0});var Ec=K(),hN=oe(),gN={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Ec._)`{passingSchemas: ${t.passing}}`},_N={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:gN,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let m;(0,hN.alwaysValidSchema)(o,l)?e.var(c,!0):m=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Ec._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Ec._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),m&&t.mergeEvaluated(m,Ec.Name)})})}}};Yf.default=_N});var tS=R(Xf=>{"use strict";Object.defineProperty(Xf,"__esModule",{value:!0});var yN=oe(),vN={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,yN.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Xf.default=vN});var oS=R(Qf=>{"use strict";Object.defineProperty(Qf,"__esModule",{value:!0});var Tc=K(),nS=oe(),xN={message:({params:t})=>(0,Tc.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Tc._)`{failingKeyword: ${t.ifClause}}`},bN={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:xN,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,nS.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=rS(n,"then"),s=rS(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,Tc.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let m=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(m,i),d?e.assign(d,(0,Tc._)`${l}`):t.setParams({ifClause:l})}}}};function rS(t,e){let r=t.schema[e];return r!==void 0&&!(0,nS.alwaysValidSchema)(t,r)}Qf.default=bN});var sS=R(eh=>{"use strict";Object.defineProperty(eh,"__esModule",{value:!0});var SN=oe(),kN={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,SN.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};eh.default=kN});var iS=R(th=>{"use strict";Object.defineProperty(th,"__esModule",{value:!0});var wN=Mf(),$N=jb(),EN=Df(),TN=Db(),PN=Lb(),RN=Ub(),ON=qb(),CN=Bf(),IN=Wb(),AN=Yb(),NN=Xb(),zN=Qb(),jN=eS(),MN=tS(),DN=oS(),LN=sS();function FN(t=!1){let e=[NN.default,zN.default,jN.default,MN.default,DN.default,LN.default,ON.default,CN.default,RN.default,IN.default,AN.default];return t?e.push($N.default,TN.default):e.push(wN.default,EN.default),e.push(PN.default),e}th.default=FN});var aS=R(rh=>{"use strict";Object.defineProperty(rh,"__esModule",{value:!0});var Ce=K(),ZN={message:({schemaCode:t})=>(0,Ce.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Ce._)`{format: ${t}}`},UN={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:ZN,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?m():f();function m(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Ce._)`${p}[${i}]`),g=r.let("fType"),_=r.let("format");r.if((0,Ce._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,Ce._)`${h}.type || "string"`).assign(_,(0,Ce._)`${h}.validate`),()=>r.assign(g,(0,Ce._)`"string"`).assign(_,h)),t.fail$data((0,Ce.or)(y(),v()));function y(){return c.strictSchema===!1?Ce.nil:(0,Ce._)`${i} && !${_}`}function v(){let $=l.$async?(0,Ce._)`(${h}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,Ce._)`${_}(${n})`,T=(0,Ce._)`(typeof ${_} == "function" ? ${$} : ${_}.test(${n}))`;return(0,Ce._)`${_} && ${_} !== true && ${g} === ${e} && !${T}`}}function f(){let p=d.formats[s];if(!p){y();return}if(p===!0)return;let[h,g,_]=v(p);h===e&&t.pass($());function y(){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 v(T){let J=T instanceof RegExp?(0,Ce.regexpCode)(T):c.code.formats?(0,Ce._)`${c.code.formats}${(0,Ce.getProperty)(s)}`:void 0,B=r.scopeValue("formats",{key:s,ref:T,code:J});return typeof T=="object"&&!(T instanceof RegExp)?[T.type||"string",T.validate,(0,Ce._)`${B}.validate`]:["string",T,B]}function $(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Ce._)`await ${_}(${n})`}return typeof g=="function"?(0,Ce._)`${_}(${n})`:(0,Ce._)`${_}.test(${n})`}}}};rh.default=UN});var cS=R(nh=>{"use strict";Object.defineProperty(nh,"__esModule",{value:!0});var HN=aS(),qN=[HN.default];nh.default=qN});var uS=R(Ao=>{"use strict";Object.defineProperty(Ao,"__esModule",{value:!0});Ao.contentVocabulary=Ao.metadataVocabulary=void 0;Ao.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ao.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var dS=R(oh=>{"use strict";Object.defineProperty(oh,"__esModule",{value:!0});var BN=yb(),VN=Ib(),WN=iS(),GN=cS(),lS=uS(),KN=[BN.default,VN.default,(0,WN.default)(),GN.default,lS.metadataVocabulary,lS.contentVocabulary];oh.default=KN});var mS=R(Pc=>{"use strict";Object.defineProperty(Pc,"__esModule",{value:!0});Pc.DiscrError=void 0;var pS;(function(t){t.Tag="tag",t.Mapping="mapping"})(pS||(Pc.DiscrError=pS={}))});var hS=R(ih=>{"use strict";Object.defineProperty(ih,"__esModule",{value:!0});var No=K(),sh=mS(),fS=lc(),JN=Ys(),YN=oe(),XN={message:({params:{discrError:t,tagName:e}})=>t===sh.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,No._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},QN={keyword:"discriminator",type:"object",schemaType:"object",error:XN,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,No._)`${r}${(0,No.getProperty)(a)}`);e.if((0,No._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:sh.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let f=m();e.if(!1);for(let p in f)e.elseIf((0,No._)`${u} === ${p}`),e.assign(c,d(f[p]));e.else(),t.error(!1,{discrError:sh.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(f){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:f},p);return t.mergeEvaluated(h,No.Name),p}function m(){var f;let p={},h=_(o),g=!0;for(let $=0;$<i.length;$++){let T=i[$];if(T?.$ref&&!(0,YN.schemaHasRulesButRef)(T,s.self.RULES)){let B=T.$ref;if(T=fS.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,B),T instanceof fS.SchemaEnv&&(T=T.schema),T===void 0)throw new JN.default(s.opts.uriResolver,s.baseId,B)}let J=(f=T?.properties)===null||f===void 0?void 0:f[a];if(typeof J!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||_(T)),y(J,$)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function _({required:$}){return Array.isArray($)&&$.includes(a)}function y($,T){if($.const)v($.const,T);else if($.enum)for(let J of $.enum)v(J,T);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function v($,T){if(typeof $!="string"||$ in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[$]=T}}}};ih.default=QN});var gS=R((M4,ez)=>{ez.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 ch=R((xe,ah)=>{"use strict";Object.defineProperty(xe,"__esModule",{value:!0});xe.MissingRefError=xe.ValidationError=xe.CodeGen=xe.Name=xe.nil=xe.stringify=xe.str=xe._=xe.KeywordCxt=xe.Ajv=void 0;var tz=pb(),rz=dS(),nz=hS(),_S=gS(),oz=["/properties"],Rc="http://json-schema.org/draft-07/schema",zo=class extends tz.default{_addVocabularies(){super._addVocabularies(),rz.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(nz.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(_S,oz):_S;this.addMetaSchema(e,Rc,!1),this.refs["http://json-schema.org/schema"]=Rc}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Rc)?Rc:void 0)}};xe.Ajv=zo;ah.exports=xe=zo;ah.exports.Ajv=zo;Object.defineProperty(xe,"__esModule",{value:!0});xe.default=zo;var sz=Js();Object.defineProperty(xe,"KeywordCxt",{enumerable:!0,get:function(){return sz.KeywordCxt}});var jo=K();Object.defineProperty(xe,"_",{enumerable:!0,get:function(){return jo._}});Object.defineProperty(xe,"str",{enumerable:!0,get:function(){return jo.str}});Object.defineProperty(xe,"stringify",{enumerable:!0,get:function(){return jo.stringify}});Object.defineProperty(xe,"nil",{enumerable:!0,get:function(){return jo.nil}});Object.defineProperty(xe,"Name",{enumerable:!0,get:function(){return jo.Name}});Object.defineProperty(xe,"CodeGen",{enumerable:!0,get:function(){return jo.CodeGen}});var iz=cc();Object.defineProperty(xe,"ValidationError",{enumerable:!0,get:function(){return iz.default}});var az=Ys();Object.defineProperty(xe,"MissingRefError",{enumerable:!0,get:function(){return az.default}})});var $S=R(or=>{"use strict";Object.defineProperty(or,"__esModule",{value:!0});or.formatNames=or.fastFormats=or.fullFormats=void 0;function nr(t,e){return{validate:t,compare:e}}or.fullFormats={date:nr(bS,ph),time:nr(lh(!0),mh),"date-time":nr(yS(!0),kS),"iso-time":nr(lh(),SS),"iso-date-time":nr(yS(),wS),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:mz,"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:xz,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:fz,int32:{type:"number",validate:_z},int64:{type:"number",validate:yz},float:{type:"number",validate:xS},double:{type:"number",validate:xS},password:!0,binary:!0};or.fastFormats={...or.fullFormats,date:nr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,ph),time:nr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,mh),"date-time":nr(/^\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,kS),"iso-time":nr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,SS),"iso-date-time":nr(/^\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,wS),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};or.formatNames=Object.keys(or.fullFormats);function cz(t){return t%4===0&&(t%100!==0||t%400===0)}var uz=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,lz=[0,31,28,31,30,31,30,31,31,30,31,30,31];function bS(t){let e=uz.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&&cz(r)?29:lz[n])}function ph(t,e){if(t&&e)return t>e?1:t<e?-1:0}var uh=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function lh(t){return function(r){let n=uh.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,m=o-u*c-(d<0?1:0);return(m===23||m===-1)&&(d===59||d===-1)&&i<61}}function mh(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 SS(t,e){if(!(t&&e))return;let r=uh.exec(t),n=uh.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 yS(t){let e=lh(t);return function(n){let o=n.split(dh);return o.length===2&&bS(o[0])&&e(o[1])}}function kS(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function wS(t,e){if(!(t&&e))return;let[r,n]=t.split(dh),[o,s]=e.split(dh),i=ph(r,o);if(i!==void 0)return i||mh(n,s)}var dz=/\/|:/,pz=/^(?:[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 mz(t){return dz.test(t)&&pz.test(t)}var vS=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function fz(t){return vS.lastIndex=0,vS.test(t)}var hz=-(2**31),gz=2**31-1;function _z(t){return Number.isInteger(t)&&t<=gz&&t>=hz}function yz(t){return Number.isInteger(t)}function xS(){return!0}var vz=/[^\\]\\Z/;function xz(t){if(vz.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var ES=R(Mo=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});Mo.formatLimitDefinition=void 0;var bz=ch(),Ut=K(),Br=Ut.operators,Oc={formatMaximum:{okStr:"<=",ok:Br.LTE,fail:Br.GT},formatMinimum:{okStr:">=",ok:Br.GTE,fail:Br.LT},formatExclusiveMaximum:{okStr:"<",ok:Br.LT,fail:Br.GTE},formatExclusiveMinimum:{okStr:">",ok:Br.GT,fail:Br.LTE}},Sz={message:({keyword:t,schemaCode:e})=>(0,Ut.str)`should be ${Oc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ut._)`{comparison: ${Oc[t].okStr}, limit: ${e}}`};Mo.formatLimitDefinition={keyword:Object.keys(Oc),type:"string",schemaType:"string",$data:!0,error:Sz,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 bz.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let m=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),f=e.const("fmt",(0,Ut._)`${m}[${c.schemaCode}]`);t.fail$data((0,Ut.or)((0,Ut._)`typeof ${f} != "object"`,(0,Ut._)`${f} instanceof RegExp`,(0,Ut._)`typeof ${f}.compare != "function"`,d(f)))}function l(){let m=c.schema,f=a.formats[m];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${o}": format "${m}" does not define "compare" function`);let p=e.scopeValue("formats",{key:m,ref:f,code:i.code.formats?(0,Ut._)`${i.code.formats}${(0,Ut.getProperty)(m)}`:void 0});t.fail$data(d(p))}function d(m){return(0,Ut._)`${m}.compare(${r}, ${n}) ${Oc[o].fail} 0`}},dependencies:["format"]};var kz=t=>(t.addKeyword(Mo.formatLimitDefinition),t);Mo.default=kz});var OS=R((di,RS)=>{"use strict";Object.defineProperty(di,"__esModule",{value:!0});var Do=$S(),wz=ES(),fh=K(),TS=new fh.Name("fullFormats"),$z=new fh.Name("fastFormats"),hh=(t,e={keywords:!0})=>{if(Array.isArray(e))return PS(t,e,Do.fullFormats,TS),t;let[r,n]=e.mode==="fast"?[Do.fastFormats,$z]:[Do.fullFormats,TS],o=e.formats||Do.formatNames;return PS(t,o,r,n),e.keywords&&(0,wz.default)(t),t};hh.get=(t,e="full")=>{let n=(e==="fast"?Do.fastFormats:Do.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function PS(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])}RS.exports=di=hh;Object.defineProperty(di,"__esModule",{value:!0});di.default=hh});function Ez(){let t=new CS.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,IS.default)(t),t}var CS,IS,Cc,AS=b(()=>{CS=Go(ch(),1),IS=Go(OS(),1);Cc=class{constructor(e){this._ajv=e??Ez()}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 Ic,NS=b(()=>{Tn();Ic=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(m=>m.type==="tool_use").map(m=>m.id)),d=new Set(s.filter(m=>m.type==="tool_result").map(m=>m.toolUseId));if(l.size!==d.size||![...l].every(m=>d.has(m)))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},zs,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},bo,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 zS(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 jS(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 MS=b(()=>{});var Ac,DS=b(()=>{Bx();Tn();AS();ks();NS();MS();Ac=class extends Ka{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Ns.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 Cc,this.setRequestHandler(Rp,n=>this._oninitialize(n)),this.setNotificationHandler(Op,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Mp,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Ns.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Ic(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=qx(this._capabilities,e)}setRequestHandler(e,r){let o=Nr(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(St(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=Ar(xo,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new z(D.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,m=await Promise.resolve(r(c,u));if(d.task){let p=Ar(ho,m);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new z(D.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let f=Ar(Ma,m);if(!f.success){let p=f.error instanceof Error?f.error.message:String(f.error);throw new z(D.InvalidParams,`Invalid tools/call result: ${p}`)}return f.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){jS(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&zS(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:qv.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"},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},Dp,r):this.request({method:"sampling/createMessage",params:e},zs,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},bo,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},bo,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new z(D.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof z?i:new z(D.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},Lp,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 gh(t){return!!t&&typeof t=="object"&&FS in t}function ZS(t){return t[FS]?.complete}var FS,LS,US=b(()=>{FS=Symbol.for("mcp.completable");(function(t){t.Completable="McpCompletable"})(LS||(LS={}))});var HS=b(()=>{});function Pz(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"),!Tz.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 Rz(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 _h(t){let e=Pz(t);return Rz(t,e.warnings),e.isValid}var Tz,qS=b(()=>{Tz=/^[A-Za-z0-9._-]{1,128}$/});var Nc,BS=b(()=>{Nc=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 yh=b(()=>{Gi();Gi()});function GS(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function KS(t){return"_def"in t||"_zod"in t||GS(t)}function vh(t){return typeof t!="object"||t===null||KS(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(GS)}function VS(t){if(t){if(vh(t))return En(t);if(!KS(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function Cz(t){let e=Nr(t);return e?Object.entries(e).map(([r,n])=>{let o=hv(n),s=gv(n);return{name:r,description:o,required:!s}}):[]}function Vr(t){let r=Nr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ya(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function WS(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var zc,Oz,pi,JS=b(()=>{DS();ks();Sm();Tn();US();HS();qS();BS();yh();zc=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 Ac(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new Nc(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(Vr(ja)),this.server.assertCanSetRequestHandler(Vr(xo)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(ja,()=>({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=mo(r.inputSchema);return o?vm(o,{strictUnions:!0,pipeStrategy:"input"}):Oz})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=mo(r.outputSchema);o&&(n.outputSchema=vm(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(xo,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new z(D.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new z(D.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 z(D.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new z(D.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 z&&n.code===D.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=mo(e.inputSchema)??e.inputSchema,i=await ga(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=_a(a);throw new z(D.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 z(D.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=mo(e.outputSchema),s=await ga(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=_a(i);throw new z(D.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(m=>setTimeout(m,l));let d=await n.taskStore.getTask(c);if(!d)throw new z(D.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Vr(Da)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(Da,async e=>{switch(e.params.ref.type){case"ref/prompt":return ix(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return ax(e),this.handleResourceCompletion(e,e.params.ref);default:throw new z(D.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new z(D.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new z(D.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return pi;let s=Nr(n.argsSchema)?.[e.params.argument.name];if(!gh(s))return pi;let i=ZS(s);if(!i)return pi;let a=await i(e.params.argument.value,e.params.context);return WS(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 z(D.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 WS(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(Vr(_o)),this.server.assertCanSetRequestHandler(Vr(yo)),this.server.assertCanSetRequestHandler(Vr(Na)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(_o,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(yo,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(Na,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new z(D.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 z(D.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(Vr(vo)),this.server.assertCanSetRequestHandler(Vr(za)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(vo,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?Cz(r.argsSchema):void 0}))})),this.server.setRequestHandler(za,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new z(D.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new z(D.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=mo(n.argsSchema),s=await ga(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=_a(c);throw new z(D.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:En(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=En(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 st?c._def?.innerType:c;return gh(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){_h(e);let l={title:r,description:n,inputSchema:VS(o),outputSchema:VS(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"&&_h(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=En(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=En(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(vh(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!vh(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()}},Oz={type:"object",properties:{}};pi={completion:{values:[],hasMore:!1}}});function Iz(t){return Xv.parse(JSON.parse(t))}function YS(t){return JSON.stringify(t)+`
59
- `}var jc,XS=b(()=>{Tn();jc=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
60
- `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),Iz(r)}clear(){this._buffer=void 0}}});import QS from"node:process";var Mc,ek=b(()=>{XS();Mc=class{constructor(e=QS.stdin,r=QS.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new jc,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=YS(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}}});var ik={};Le(ik,{PolyglotExecutor:()=>Lo});import{spawn as Az,execSync as Nz,execFileSync as ok}from"node:child_process";import{mkdtempSync as zz,writeFileSync as tk,rmSync as rk,existsSync as nk}from"node:fs";import{join as Dc,resolve as sk}from"node:path";import{tmpdir as jz}from"node:os";function xh(t){if(Ot&&t.pid)try{Nz(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var Ot,Mz,Lo,bh=b(()=>{"use strict";Ci();Ot=process.platform==="win32",Mz=(()=>{if(Ot)return process.env.TEMP??process.env.TMP??jz();try{let t=ok(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:sk(t,"..");if(e&&e!==process.cwd())return e}catch{}return"/tmp"})();Lo=class{#e;#t;#r;#n=new Set;constructor(e){this.#e=e?.hardCapBytes??100*1024*1024,this.#t=e?.projectRoot??process.cwd(),this.#r=e?.runtimes??Bn()}get runtimes(){return{...this.#r}}cleanupBackgrounded(){for(let e of this.#n)try{process.kill(Ot?e:-e,"SIGTERM")}catch{}this.#n.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=zz(Dc(Mz,".ctx-mode-"));try{let a=this.#s(i,n,r),c=pg(this.#r,r,a);if(c[0]==="__rust_compile_run__")return await this.#i(a,i,o);let u=r==="shell"?this.#t:i,l=await this.#o(c,u,i,o,s);if(!l.backgrounded)try{rk(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{rk(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=sk(this.#t,r),a=this.#c(i,n,o);return this.execute({language:n,code:a,timeout:s})}#s(e,r,n){let o={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};n==="go"&&!r.includes("package ")&&(r=`package main
57
+ deps: ${r}}`};var fN={keyword:"dependencies",type:"object",schemaType:"object",error:sr.error,code(t){let[e,r]=hN(t);LS(t,e),FS(t,r)}};function hN({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 LS(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,pi.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,pi.checkReportMissingProp)(t,u)}):(r.if((0,Bf._)`${c} && (${(0,pi.checkMissingProp)(t,a,s)})`),(0,pi.reportMissingProp)(t,s),r.else())}}sr.validatePropertyDeps=LS;function FS(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,mN.alwaysValidSchema)(s,e[a])||(r.if((0,pi.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))}sr.validateSchemaDeps=FS;sr.default=fN});var HS=R(Vf=>{"use strict";Object.defineProperty(Vf,"__esModule",{value:!0});var US=J(),gN=oe(),_N={message:"property name must be valid",params:({params:t})=>(0,US._)`{propertyName: ${t.propertyName}}`},yN={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:_N,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,gN.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,US.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Vf.default=yN});var Gf=R(Wf=>{"use strict";Object.defineProperty(Wf,"__esModule",{value:!0});var kc=It(),Vt=J(),xN=xr(),wc=oe(),vN={message:"must NOT have additional properties",params:({params:t})=>(0,Vt._)`{additionalProperty: ${t.additionalProperty}}`},SN={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:vN,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,kc.allSchemaProperties)(n.properties),l=(0,kc.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Vt._)`${s} === ${xN.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?p(g):e.if(m(g),()=>p(g))})}function m(g){let _;if(u.length>8){let y=(0,wc.schemaRefOrVal)(i,n.properties,"properties");_=(0,kc.isOwnProperty)(e,y,g)}else u.length?_=(0,Vt.or)(...u.map(y=>(0,Vt._)`${g} === ${y}`)):_=Vt.nil;return l.length&&(_=(0,Vt.or)(_,...l.map(y=>(0,Vt._)`${(0,kc.usePattern)(t,y)}.test(${g})`))),(0,Vt.not)(_)}function h(g){e.code((0,Vt._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){h(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 _=e.name("valid");c.removeAdditional==="failing"?(f(g,_,!1),e.if((0,Vt.not)(_),()=>{t.reset(),h(g)})):(f(g,_),a||e.if((0,Vt.not)(_),()=>e.break()))}}function f(g,_,y){let x={keyword:"additionalProperties",dataProp:g,dataPropType:wc.Type.Str};y===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(x,_)}}};Wf.default=SN});var VS=R(Jf=>{"use strict";Object.defineProperty(Jf,"__esModule",{value:!0});var bN=Xs(),qS=It(),Kf=oe(),BS=Gf(),kN={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&&BS.default.code(new bN.KeywordCxt(s,BS.default,"additionalProperties"));let i=(0,qS.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Kf.mergeEvaluated.props(e,(0,Kf.toHash)(i),s.props));let a=i.filter(d=>!(0,Kf.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,qS.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)}}};Jf.default=kN});var JS=R(Yf=>{"use strict";Object.defineProperty(Yf,"__esModule",{value:!0});var WS=It(),$c=J(),GS=oe(),KS=oe(),wN={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,WS.allSchemaProperties)(r),c=a.filter(f=>(0,GS.alwaysValidSchema)(s,r[f]));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 $c.Name)&&(s.props=(0,KS.evaluatedPropsToName)(e,s.props));let{props:d}=s;m();function m(){for(let f of a)u&&h(f),s.allErrors?p(f):(e.var(l,!0),p(f),e.if(l))}function h(f){for(let g in u)new RegExp(f).test(g)&&(0,GS.checkStrictMode)(s,`property ${g} matches pattern ${f} (use allowMatchingProperties)`)}function p(f){e.forIn("key",n,g=>{e.if((0,$c._)`${(0,WS.usePattern)(t,f)}.test(${g})`,()=>{let _=c.includes(f);_||t.subschema({keyword:"patternProperties",schemaProp:f,dataProp:g,dataPropType:KS.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,$c._)`${d}[${g}]`,!0):!_&&!s.allErrors&&e.if((0,$c.not)(l),()=>e.break())})})}}};Yf.default=wN});var YS=R(Xf=>{"use strict";Object.defineProperty(Xf,"__esModule",{value:!0});var $N=oe(),EN={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,$N.alwaysValidSchema)(n,r)){t.fail();return}let o=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),t.failResult(o,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};Xf.default=EN});var XS=R(Qf=>{"use strict";Object.defineProperty(Qf,"__esModule",{value:!0});var TN=It(),PN={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:TN.validateUnion,error:{message:"must match a schema in anyOf"}};Qf.default=PN});var QS=R(eh=>{"use strict";Object.defineProperty(eh,"__esModule",{value:!0});var Ec=J(),RN=oe(),ON={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Ec._)`{passingSchemas: ${t.passing}}`},CN={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:ON,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let m;(0,RN.alwaysValidSchema)(o,l)?e.var(c,!0):m=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Ec._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Ec._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),m&&t.mergeEvaluated(m,Ec.Name)})})}}};eh.default=CN});var eb=R(th=>{"use strict";Object.defineProperty(th,"__esModule",{value:!0});var IN=oe(),AN={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,IN.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};th.default=AN});var nb=R(rh=>{"use strict";Object.defineProperty(rh,"__esModule",{value:!0});var Tc=J(),rb=oe(),NN={message:({params:t})=>(0,Tc.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Tc._)`{failingKeyword: ${t.ifClause}}`},zN={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:NN,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,rb.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=tb(n,"then"),s=tb(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,Tc.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let m=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(m,i),d?e.assign(d,(0,Tc._)`${l}`):t.setParams({ifClause:l})}}}};function tb(t,e){let r=t.schema[e];return r!==void 0&&!(0,rb.alwaysValidSchema)(t,r)}rh.default=zN});var ob=R(nh=>{"use strict";Object.defineProperty(nh,"__esModule",{value:!0});var jN=oe(),MN={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,jN.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};nh.default=MN});var sb=R(oh=>{"use strict";Object.defineProperty(oh,"__esModule",{value:!0});var DN=Ff(),LN=zS(),FN=Zf(),ZN=MS(),UN=DS(),HN=ZS(),qN=HS(),BN=Gf(),VN=VS(),WN=JS(),GN=YS(),KN=XS(),JN=QS(),YN=eb(),XN=nb(),QN=ob();function ez(t=!1){let e=[GN.default,KN.default,JN.default,YN.default,XN.default,QN.default,qN.default,BN.default,HN.default,VN.default,WN.default];return t?e.push(LN.default,ZN.default):e.push(DN.default,FN.default),e.push(UN.default),e}oh.default=ez});var ib=R(sh=>{"use strict";Object.defineProperty(sh,"__esModule",{value:!0});var Ie=J(),tz={message:({schemaCode:t})=>(0,Ie.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Ie._)`{format: ${t}}`},rz={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:tz,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?m():h();function m(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),f=r.const("fDef",(0,Ie._)`${p}[${i}]`),g=r.let("fType"),_=r.let("format");r.if((0,Ie._)`typeof ${f} == "object" && !(${f} instanceof RegExp)`,()=>r.assign(g,(0,Ie._)`${f}.type || "string"`).assign(_,(0,Ie._)`${f}.validate`),()=>r.assign(g,(0,Ie._)`"string"`).assign(_,f)),t.fail$data((0,Ie.or)(y(),x()));function y(){return c.strictSchema===!1?Ie.nil:(0,Ie._)`${i} && !${_}`}function x(){let k=l.$async?(0,Ie._)`(${f}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,Ie._)`${_}(${n})`,T=(0,Ie._)`(typeof ${_} == "function" ? ${k} : ${_}.test(${n}))`;return(0,Ie._)`${_} && ${_} !== true && ${g} === ${e} && !${T}`}}function h(){let p=d.formats[s];if(!p){y();return}if(p===!0)return;let[f,g,_]=x(p);f===e&&t.pass(k());function y(){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 Z=T instanceof RegExp?(0,Ie.regexpCode)(T):c.code.formats?(0,Ie._)`${c.code.formats}${(0,Ie.getProperty)(s)}`:void 0,V=r.scopeValue("formats",{key:s,ref:T,code:Z});return typeof T=="object"&&!(T instanceof RegExp)?[T.type||"string",T.validate,(0,Ie._)`${V}.validate`]:["string",T,V]}function k(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Ie._)`await ${_}(${n})`}return typeof g=="function"?(0,Ie._)`${_}(${n})`:(0,Ie._)`${_}.test(${n})`}}}};sh.default=rz});var ab=R(ih=>{"use strict";Object.defineProperty(ih,"__esModule",{value:!0});var nz=ib(),oz=[nz.default];ih.default=oz});var cb=R(jo=>{"use strict";Object.defineProperty(jo,"__esModule",{value:!0});jo.contentVocabulary=jo.metadataVocabulary=void 0;jo.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];jo.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var lb=R(ah=>{"use strict";Object.defineProperty(ah,"__esModule",{value:!0});var sz=_S(),iz=CS(),az=sb(),cz=ab(),ub=cb(),uz=[sz.default,iz.default,(0,az.default)(),cz.default,ub.metadataVocabulary,ub.contentVocabulary];ah.default=uz});var pb=R(Pc=>{"use strict";Object.defineProperty(Pc,"__esModule",{value:!0});Pc.DiscrError=void 0;var db;(function(t){t.Tag="tag",t.Mapping="mapping"})(db||(Pc.DiscrError=db={}))});var fb=R(uh=>{"use strict";Object.defineProperty(uh,"__esModule",{value:!0});var Mo=J(),ch=pb(),mb=lc(),lz=Qs(),dz=oe(),pz={message:({params:{discrError:t,tagName:e}})=>t===ch.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Mo._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},mz={keyword:"discriminator",type:"object",schemaType:"object",error:pz,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,Mo._)`${r}${(0,Mo.getProperty)(a)}`);e.if((0,Mo._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:ch.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let h=m();e.if(!1);for(let p in h)e.elseIf((0,Mo._)`${u} === ${p}`),e.assign(c,d(h[p]));e.else(),t.error(!1,{discrError:ch.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(h){let p=e.name("valid"),f=t.subschema({keyword:"oneOf",schemaProp:h},p);return t.mergeEvaluated(f,Mo.Name),p}function m(){var h;let p={},f=_(o),g=!0;for(let k=0;k<i.length;k++){let T=i[k];if(T?.$ref&&!(0,dz.schemaHasRulesButRef)(T,s.self.RULES)){let V=T.$ref;if(T=mb.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,V),T instanceof mb.SchemaEnv&&(T=T.schema),T===void 0)throw new lz.default(s.opts.uriResolver,s.baseId,V)}let Z=(h=T?.properties)===null||h===void 0?void 0:h[a];if(typeof Z!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(f||_(T)),y(Z,k)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function _({required:k}){return Array.isArray(k)&&k.includes(a)}function y(k,T){if(k.const)x(k.const,T);else if(k.enum)for(let Z of k.enum)x(Z,T);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function x(k,T){if(typeof k!="string"||k in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[k]=T}}}};uh.default=mz});var hb=R((S4,fz)=>{fz.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 dh=R((ye,lh)=>{"use strict";Object.defineProperty(ye,"__esModule",{value:!0});ye.MissingRefError=ye.ValidationError=ye.CodeGen=ye.Name=ye.nil=ye.stringify=ye.str=ye._=ye.KeywordCxt=ye.Ajv=void 0;var hz=dS(),gz=lb(),_z=fb(),gb=hb(),yz=["/properties"],Rc="http://json-schema.org/draft-07/schema",Do=class extends hz.default{_addVocabularies(){super._addVocabularies(),gz.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(_z.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(gb,yz):gb;this.addMetaSchema(e,Rc,!1),this.refs["http://json-schema.org/schema"]=Rc}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Rc)?Rc:void 0)}};ye.Ajv=Do;lh.exports=ye=Do;lh.exports.Ajv=Do;Object.defineProperty(ye,"__esModule",{value:!0});ye.default=Do;var xz=Xs();Object.defineProperty(ye,"KeywordCxt",{enumerable:!0,get:function(){return xz.KeywordCxt}});var Lo=J();Object.defineProperty(ye,"_",{enumerable:!0,get:function(){return Lo._}});Object.defineProperty(ye,"str",{enumerable:!0,get:function(){return Lo.str}});Object.defineProperty(ye,"stringify",{enumerable:!0,get:function(){return Lo.stringify}});Object.defineProperty(ye,"nil",{enumerable:!0,get:function(){return Lo.nil}});Object.defineProperty(ye,"Name",{enumerable:!0,get:function(){return Lo.Name}});Object.defineProperty(ye,"CodeGen",{enumerable:!0,get:function(){return Lo.CodeGen}});var vz=cc();Object.defineProperty(ye,"ValidationError",{enumerable:!0,get:function(){return vz.default}});var Sz=Qs();Object.defineProperty(ye,"MissingRefError",{enumerable:!0,get:function(){return Sz.default}})});var wb=R(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.formatNames=ar.fastFormats=ar.fullFormats=void 0;function ir(t,e){return{validate:t,compare:e}}ar.fullFormats={date:ir(vb,hh),time:ir(mh(!0),gh),"date-time":ir(_b(!0),bb),"iso-time":ir(mh(),Sb),"iso-date-time":ir(_b(),kb),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:Tz,"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:Nz,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:Pz,int32:{type:"number",validate:Cz},int64:{type:"number",validate:Iz},float:{type:"number",validate:xb},double:{type:"number",validate:xb},password:!0,binary:!0};ar.fastFormats={...ar.fullFormats,date:ir(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,hh),time:ir(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,gh),"date-time":ir(/^\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,bb),"iso-time":ir(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Sb),"iso-date-time":ir(/^\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,kb),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};ar.formatNames=Object.keys(ar.fullFormats);function bz(t){return t%4===0&&(t%100!==0||t%400===0)}var kz=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,wz=[0,31,28,31,30,31,30,31,31,30,31,30,31];function vb(t){let e=kz.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&&bz(r)?29:wz[n])}function hh(t,e){if(t&&e)return t>e?1:t<e?-1:0}var ph=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function mh(t){return function(r){let n=ph.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,m=o-u*c-(d<0?1:0);return(m===23||m===-1)&&(d===59||d===-1)&&i<61}}function gh(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 Sb(t,e){if(!(t&&e))return;let r=ph.exec(t),n=ph.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 fh=/t|\s/i;function _b(t){let e=mh(t);return function(n){let o=n.split(fh);return o.length===2&&vb(o[0])&&e(o[1])}}function bb(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function kb(t,e){if(!(t&&e))return;let[r,n]=t.split(fh),[o,s]=e.split(fh),i=hh(r,o);if(i!==void 0)return i||gh(n,s)}var $z=/\/|:/,Ez=/^(?:[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 Tz(t){return $z.test(t)&&Ez.test(t)}var yb=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function Pz(t){return yb.lastIndex=0,yb.test(t)}var Rz=-(2**31),Oz=2**31-1;function Cz(t){return Number.isInteger(t)&&t<=Oz&&t>=Rz}function Iz(t){return Number.isInteger(t)}function xb(){return!0}var Az=/[^\\]\\Z/;function Nz(t){if(Az.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var $b=R(Fo=>{"use strict";Object.defineProperty(Fo,"__esModule",{value:!0});Fo.formatLimitDefinition=void 0;var zz=dh(),Wt=J(),Gr=Wt.operators,Oc={formatMaximum:{okStr:"<=",ok:Gr.LTE,fail:Gr.GT},formatMinimum:{okStr:">=",ok:Gr.GTE,fail:Gr.LT},formatExclusiveMaximum:{okStr:"<",ok:Gr.LT,fail:Gr.GTE},formatExclusiveMinimum:{okStr:">",ok:Gr.GT,fail:Gr.LTE}},jz={message:({keyword:t,schemaCode:e})=>(0,Wt.str)`should be ${Oc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Wt._)`{comparison: ${Oc[t].okStr}, limit: ${e}}`};Fo.formatLimitDefinition={keyword:Object.keys(Oc),type:"string",schemaType:"string",$data:!0,error:jz,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 zz.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let m=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),h=e.const("fmt",(0,Wt._)`${m}[${c.schemaCode}]`);t.fail$data((0,Wt.or)((0,Wt._)`typeof ${h} != "object"`,(0,Wt._)`${h} instanceof RegExp`,(0,Wt._)`typeof ${h}.compare != "function"`,d(h)))}function l(){let m=c.schema,h=a.formats[m];if(!h||h===!0)return;if(typeof h!="object"||h instanceof RegExp||typeof h.compare!="function")throw new Error(`"${o}": format "${m}" does not define "compare" function`);let p=e.scopeValue("formats",{key:m,ref:h,code:i.code.formats?(0,Wt._)`${i.code.formats}${(0,Wt.getProperty)(m)}`:void 0});t.fail$data(d(p))}function d(m){return(0,Wt._)`${m}.compare(${r}, ${n}) ${Oc[o].fail} 0`}},dependencies:["format"]};var Mz=t=>(t.addKeyword(Fo.formatLimitDefinition),t);Fo.default=Mz});var Rb=R((mi,Pb)=>{"use strict";Object.defineProperty(mi,"__esModule",{value:!0});var Zo=wb(),Dz=$b(),_h=J(),Eb=new _h.Name("fullFormats"),Lz=new _h.Name("fastFormats"),yh=(t,e={keywords:!0})=>{if(Array.isArray(e))return Tb(t,e,Zo.fullFormats,Eb),t;let[r,n]=e.mode==="fast"?[Zo.fastFormats,Lz]:[Zo.fullFormats,Eb],o=e.formats||Zo.formatNames;return Tb(t,o,r,n),e.keywords&&(0,Dz.default)(t),t};yh.get=(t,e="full")=>{let n=(e==="fast"?Zo.fastFormats:Zo.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function Tb(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,_h._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}Pb.exports=mi=yh;Object.defineProperty(mi,"__esModule",{value:!0});mi.default=yh});function Fz(){let t=new Ob.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Cb.default)(t),t}var Ob,Cb,Cc,Ib=v(()=>{Ob=Xo(dh(),1),Cb=Xo(Rb(),1);Cc=class{constructor(e){this._ajv=e??Fz()}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 Ic,Ab=v(()=>{Ic=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}}});function Nb(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 zb(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 jb=v(()=>{});var Ac,Mb=v(()=>{qv();wo();Ib();Es();Ab();jb();Ac=class extends Ka{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Ms.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 Cc,this.setRequestHandler(Cp,n=>this._oninitialize(n)),this.setNotificationHandler(Ip,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Lp,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Ms.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Ic(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Hv(this._capabilities,e)}setRequestHandler(e,r){let o=Mr(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(Tt(o)){let a=o;s=a._zod?.def?.value??a.value}else{let a=o;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=jr(ko,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new z(D.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,m=await Promise.resolve(r(c,u));if(d.task){let p=jr(yo,m);if(!p.success){let f=p.error instanceof Error?p.error.message:String(p.error);throw new z(D.InvalidParams,`Invalid task creation result: ${f}`)}return p.data}let h=jr(ja,m);if(!h.success){let p=h.error instanceof Error?h.error.message:String(h.error);throw new z(D.InvalidParams,`Invalid tools/call result: ${p}`)}return h.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){zb(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Nb(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:Hx.includes(r)?r:Ep,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"},ka)}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},Zp,r):this.request({method:"sampling/createMessage",params:e},Fp,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},Ma,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},Ma,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new z(D.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof z?i:new z(D.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},Up,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 xh(t){return!!t&&typeof t=="object"&&Lb in t}function Fb(t){return t[Lb]?.complete}var Lb,Db,Zb=v(()=>{Lb=Symbol.for("mcp.completable");(function(t){t.Completable="McpCompletable"})(Db||(Db={}))});var Ub=v(()=>{});function Uz(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"),!Zz.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 Hz(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 vh(t){let e=Uz(t);return Hz(t,e.warnings),e.isValid}var Zz,Hb=v(()=>{Zz=/^[A-Za-z0-9._-]{1,128}$/});var Nc,qb=v(()=>{Nc=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 Sh=v(()=>{Wi();Wi()});function Wb(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function Bz(t){return"_def"in t||"_zod"in t||Wb(t)}function bh(t){return typeof t!="object"||t===null||Bz(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(Wb)}function Bb(t){if(t)return bh(t)?Cn(t):t}function Vz(t){let e=Mr(t);return e?Object.entries(e).map(([r,n])=>{let o=hx(n),s=gx(n);return{name:r,description:o,required:!s}}):[]}function Kr(t){let r=Mr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=_a(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function Vb(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var zc,qz,fi,Gb=v(()=>{Mb();Es();$m();wo();Zb();Ub();Hb();qb();Sh();zc=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 Ac(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new Nc(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(Kr(za)),this.server.assertCanSetRequestHandler(Kr(ko)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(za,()=>({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=go(r.inputSchema);return o?bm(o,{strictUnions:!0,pipeStrategy:"input"}):qz})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=go(r.outputSchema);o&&(n.outputSchema=bm(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(ko,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new z(D.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new z(D.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 z(D.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new z(D.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 z&&n.code===D.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=go(e.inputSchema)??e.inputSchema,i=await ha(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=ga(a);throw new z(D.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 z(D.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=go(e.outputSchema),s=await ha(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=ga(i);throw new z(D.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(m=>setTimeout(m,l));let d=await n.taskStore.getTask(c);if(!d)throw new z(D.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Kr(Da)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(Da,async e=>{switch(e.params.ref.type){case"ref/prompt":return sv(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return iv(e),this.handleResourceCompletion(e,e.params.ref);default:throw new z(D.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new z(D.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new z(D.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return fi;let s=Mr(n.argsSchema)?.[e.params.argument.name];if(!xh(s))return fi;let i=Fb(s);if(!i)return fi;let a=await i(e.params.argument.value,e.params.context);return Vb(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 fi;throw new z(D.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return fi;let s=await o(e.params.argument.value,e.params.context);return Vb(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(Kr(vo)),this.server.assertCanSetRequestHandler(Kr(So)),this.server.assertCanSetRequestHandler(Kr(Aa)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(vo,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(So,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(Aa,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new z(D.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 z(D.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(Kr(bo)),this.server.assertCanSetRequestHandler(Kr(Na)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(bo,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?Vz(r.argsSchema):void 0}))})),this.server.setRequestHandler(Na,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new z(D.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new z(D.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=go(n.argsSchema),s=await ha(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=ga(c);throw new z(D.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:Cn(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=Cn(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 it?c._def?.innerType:c;return xh(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){vh(e);let l={title:r,description:n,inputSchema:Bb(o),outputSchema:Bb(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"&&vh(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=Cn(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Cn(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];bh(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!bh(r[0])&&(i=r.shift())):typeof c=="object"&&c!==null&&(i=r.shift())}let a=r[0];return this._createRegisteredTool(e,void 0,n,o,s,i,{taskSupport:"forbidden"},void 0,a)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:i,outputSchema:a,annotations:c,_meta:u}=r;return this._createRegisteredTool(e,o,s,i,a,c,{taskSupport:"forbidden"},u,n)}prompt(e,...r){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let o;r.length>1&&(o=r.shift());let s=r[0],i=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:i}=r,a=this._createRegisteredPrompt(e,o,s,i,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,r){return this.server.sendLoggingMessage(e,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}},qz={type:"object",properties:{}};fi={completion:{values:[],hasMore:!1}}});function Wz(t){return Yx.parse(JSON.parse(t))}function Kb(t){return JSON.stringify(t)+`
58
+ `}var jc,Jb=v(()=>{wo();jc=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),Wz(r)}clear(){this._buffer=void 0}}});import Yb from"node:process";var Mc,Xb=v(()=>{Jb();Mc=class{constructor(e=Yb.stdin,r=Yb.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new jc,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=Kb(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}}});var ok={};je(ok,{PolyglotExecutor:()=>Uo});import{spawn as Gz,execSync as Kz,execFileSync as rk}from"node:child_process";import{mkdtempSync as Jz,writeFileSync as Qb,rmSync as ek,existsSync as tk}from"node:fs";import{join as Dc,resolve as nk}from"node:path";import{tmpdir as Yz}from"node:os";function kh(t){if(zt&&t.pid)try{Kz(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var zt,Xz,Uo,wh=v(()=>{"use strict";Ci();zt=process.platform==="win32",Xz=(()=>{if(zt)return process.env.TEMP??process.env.TMP??Yz();try{let t=rk(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:nk(t,"..");if(e&&e!==process.cwd())return e}catch{}return"/tmp"})();Uo=class{#e;#t;#n;#o=new Set;constructor(e){this.#e=e?.hardCapBytes??100*1024*1024,this.#t=e?.projectRoot??process.cwd(),this.#n=e?.runtimes??Kn()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill(zt?e:-e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=Jz(Dc(Xz,".ctx-mode-"));try{let a=this.#i(i,n,r),c=vg(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#a(a,i,o);let u=r==="shell"?this.#t:i,l=await this.#s(c,u,i,o,s);if(!l.backgrounded)try{ek(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{ek(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=nk(this.#t,r),a=this.#u(i,n,o);return this.execute({language:n,code:a,timeout:s})}#i(e,r,n){let o={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};n==="go"&&!r.includes("package ")&&(r=`package main
61
60
 
62
61
  import "fmt"
63
62
 
@@ -65,12 +64,12 @@ func main() {
65
64
  ${r}
66
65
  }
67
66
  `),n==="php"&&!r.trimStart().startsWith("<?")&&(r=`<?php
68
- ${r}`),n==="elixir"&&nk(Dc(this.#t,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(Dc(this.#t,"_build/dev/lib"))}, "*/ebin"))
67
+ ${r}`),n==="elixir"&&tk(Dc(this.#t,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(Dc(this.#t,"_build/dev/lib"))}, "*/ebin"))
69
68
  |> Enum.each(&Code.prepend_path/1)
70
69
 
71
- ${r}`);let s=Dc(e,`script.${o[n]}`);return n==="shell"?tk(s,r,{encoding:"utf-8",mode:448}):tk(s,r,"utf-8"),s}async#i(e,r,n){let o=Ot?".exe":"",s=e.replace(/\.rs$/,"")+o;try{ok("rustc",[e,"-o",s],{cwd:r,timeout:Math.min(n,6e4),encoding:"utf-8",stdio:["pipe","pipe","pipe"]})}catch(i){return{stdout:"",stderr:`Compilation failed:
72
- ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#o([s],r,r,n)}async#o(e,r,n,o,s=!1){return new Promise(i=>{let a=Ot&&["tsx","ts-node","elixir"].includes(e[0]),c=e[0],u;Ot&&e.length===2&&e[1]?u=[e[1].replace(/\\/g,"/")]:u=Ot?e.slice(1).map(y=>y.replace(/\\/g,"/")):e.slice(1);let l=Az(c,u,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#a(n),shell:a,detached:!Ot}),d=!1,m=!1,f=setTimeout(()=>{if(d=!0,s){m=!0,l.pid&&this.#n.add(l.pid),l.unref(),l.stdout.destroy(),l.stderr.destroy();let y=Buffer.concat(p).toString("utf-8"),v=Buffer.concat(h).toString("utf-8");i({stdout:y,stderr:v,exitCode:0,timedOut:!0,backgrounded:!0})}else xh(l)},o),p=[],h=[],g=0,_=!1;l.stdout.on("data",y=>{g+=y.length,g<=this.#e?p.push(y):_||(_=!0,xh(l))}),l.stderr.on("data",y=>{g+=y.length,g<=this.#e?h.push(y):_||(_=!0,xh(l))}),l.on("close",y=>{if(clearTimeout(f),m)return;let v=Buffer.concat(p).toString("utf-8"),$=Buffer.concat(h).toString("utf-8");_&&($+=`
73
- [output capped at ${(this.#e/1024/1024).toFixed(0)}MB \u2014 process killed]`),i({stdout:v,stderr:$,exitCode:d?1:y??1,timedOut:d})}),l.on("error",y=>{clearTimeout(f),!m&&i({stdout:"",stderr:y.message,exitCode:1,timedOut:!1})})})}#a(e){let r=process.env.HOME??process.env.USERPROFILE??e,n=new Set(["BASH_ENV","ENV","PROMPT_COMMAND","PS4","SHELLOPTS","BASHOPTS","CDPATH","INPUTRC","BASH_XTRACEFD","NODE_OPTIONS","NODE_PATH","PYTHONSTARTUP","PYTHONHOME","PYTHONWARNINGS","PYTHONBREAKPOINT","PYTHONINSPECT","RUBYOPT","RUBYLIB","PERL5OPT","PERL5LIB","PERLLIB","PERL5DB","ERL_AFLAGS","ERL_FLAGS","ELIXIR_ERL_OPTIONS","ERL_LIBS","GOFLAGS","CGO_CFLAGS","CGO_LDFLAGS","RUSTC","RUSTC_WRAPPER","RUSTC_WORKSPACE_WRAPPER","CARGO_BUILD_RUSTC","CARGO_BUILD_RUSTC_WRAPPER","RUSTFLAGS","PHPRC","PHP_INI_SCAN_DIR","R_PROFILE","R_PROFILE_USER","R_HOME","LD_PRELOAD","DYLD_INSERT_LIBRARIES","OPENSSL_CONF","OPENSSL_ENGINES","CC","CXX","AR","GIT_TEMPLATE_DIR","GIT_CONFIG_GLOBAL","GIT_CONFIG_SYSTEM","GIT_EXEC_PATH","GIT_SSH","GIT_SSH_COMMAND","GIT_ASKPASS"]),o={};for(let[s,i]of Object.entries(process.env))i!==void 0&&!n.has(s)&&!s.startsWith("BASH_FUNC_")&&(o[s]=i);if(o.TMPDIR=e,o.HOME=r,o.LANG="en_US.UTF-8",o.PYTHONDONTWRITEBYTECODE="1",o.PYTHONUNBUFFERED="1",o.PYTHONUTF8="1",o.NO_COLOR="1",Ot&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=Ot?"":"/usr/local/bin:/usr/bin:/bin"),Ot){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=Ot?[]:["/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(nk(i)){o.SSL_CERT_FILE=i;break}}return o}#c(e,r,n){let o=JSON.stringify(e);switch(r){case"javascript":case"typescript":return`const FILE_CONTENT_PATH = ${o};
70
+ ${r}`);let s=Dc(e,`script.${o[n]}`);return n==="shell"?Qb(s,r,{encoding:"utf-8",mode:448}):Qb(s,r,"utf-8"),s}async#a(e,r,n){let o=zt?".exe":"",s=e.replace(/\.rs$/,"")+o;try{rk("rustc",[e,"-o",s],{cwd:r,timeout:Math.min(n,6e4),encoding:"utf-8",stdio:["pipe","pipe","pipe"]})}catch(i){return{stdout:"",stderr:`Compilation failed:
71
+ ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#s([s],r,r,n)}async#s(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=Gz(c,u,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(n),shell:a,detached:!zt}),d=!1,m=!1,h=setTimeout(()=>{if(d=!0,s){m=!0,l.pid&&this.#o.add(l.pid),l.unref(),l.stdout.destroy(),l.stderr.destroy();let y=Buffer.concat(p).toString("utf-8"),x=Buffer.concat(f).toString("utf-8");i({stdout:y,stderr:x,exitCode:0,timedOut:!0,backgrounded:!0})}else kh(l)},o),p=[],f=[],g=0,_=!1;l.stdout.on("data",y=>{g+=y.length,g<=this.#e?p.push(y):_||(_=!0,kh(l))}),l.stderr.on("data",y=>{g+=y.length,g<=this.#e?f.push(y):_||(_=!0,kh(l))}),l.on("close",y=>{if(clearTimeout(h),m)return;let x=Buffer.concat(p).toString("utf-8"),k=Buffer.concat(f).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(h),!m&&i({stdout:"",stderr:y.message,exitCode:1,timedOut:!1})})})}#c(e){let r=process.env.HOME??process.env.USERPROFILE??e,n=new Set(["BASH_ENV","ENV","PROMPT_COMMAND","PS4","SHELLOPTS","BASHOPTS","CDPATH","INPUTRC","BASH_XTRACEFD","NODE_OPTIONS","NODE_PATH","PYTHONSTARTUP","PYTHONHOME","PYTHONWARNINGS","PYTHONBREAKPOINT","PYTHONINSPECT","RUBYOPT","RUBYLIB","PERL5OPT","PERL5LIB","PERLLIB","PERL5DB","ERL_AFLAGS","ERL_FLAGS","ELIXIR_ERL_OPTIONS","ERL_LIBS","GOFLAGS","CGO_CFLAGS","CGO_LDFLAGS","RUSTC","RUSTC_WRAPPER","RUSTC_WORKSPACE_WRAPPER","CARGO_BUILD_RUSTC","CARGO_BUILD_RUSTC_WRAPPER","RUSTFLAGS","PHPRC","PHP_INI_SCAN_DIR","R_PROFILE","R_PROFILE_USER","R_HOME","LD_PRELOAD","DYLD_INSERT_LIBRARIES","OPENSSL_CONF","OPENSSL_ENGINES","CC","CXX","AR","GIT_TEMPLATE_DIR","GIT_CONFIG_GLOBAL","GIT_CONFIG_SYSTEM","GIT_EXEC_PATH","GIT_SSH","GIT_SSH_COMMAND","GIT_ASKPASS"]),o={};for(let[s,i]of Object.entries(process.env))i!==void 0&&!n.has(s)&&!s.startsWith("BASH_FUNC_")&&(o[s]=i);if(o.TMPDIR=e,o.HOME=r,o.LANG="en_US.UTF-8",o.PYTHONDONTWRITEBYTECODE="1",o.PYTHONUNBUFFERED="1",o.PYTHONUTF8="1",o.NO_COLOR="1",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(tk(i)){o.SSL_CERT_FILE=i;break}}return o}#u(e,r,n){let o=JSON.stringify(e);switch(r){case"javascript":case"typescript":return`const FILE_CONTENT_PATH = ${o};
74
73
  const file_path = FILE_CONTENT_PATH;
75
74
  const FILE_CONTENT = require("fs").readFileSync(FILE_CONTENT_PATH, "utf-8");
76
75
  ${n}`;case"python":return`FILE_CONTENT_PATH = ${o}
@@ -125,13 +124,15 @@ FILE_CONTENT <- paste(FILE_CONTENT, collapse="\\n")
125
124
  ${n}`;case"elixir":return`file_content_path = ${o}
126
125
  file_path = file_content_path
127
126
  file_content = File.read!(file_content_path)
128
- ${n}`}}}});var lk={};Le(lk,{BunSQLiteAdapter:()=>Lc,NodeSQLiteAdapter:()=>Fc,SQLiteBase:()=>Zc,applyWALPragmas:()=>Zo,cleanOrphanedWALFiles:()=>Uo,closeDB:()=>Ho,defaultDBPath:()=>ck,deleteDBFiles:()=>Uc,isSQLiteCorruptionError:()=>Hc,loadDatabase:()=>Dn,renameCorruptDB:()=>uk,withRetry:()=>Wr});import{createRequire as Dz}from"node:module";import{existsSync as Lz,unlinkSync as ak,renameSync as Fz}from"node:fs";import{tmpdir as Zz}from"node:os";import{join as Uz}from"node:path";function Dn(){if(!Fo){let t=Dz(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;Fo=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0}),i=new Lc(s);return o?.timeout&&i.pragma(`busy_timeout = ${o.timeout}`),i}}else if(process.platform==="linux")try{let{DatabaseSync:e}=t(["node","sqlite"].join(":"));Fo=function(n,o){let s=new e(n,{readOnly:o?.readonly??!1});return new Fc(s)}}catch{Fo=t("better-sqlite3")}else Fo=t("better-sqlite3")}return Fo}function Zo(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL");try{t.pragma("mmap_size = 268435456")}catch{}}function Uo(t){if(!Lz(t))for(let e of["-wal","-shm"])try{ak(t+e)}catch{}}function Uc(t){for(let e of["","-wal","-shm"])try{ak(t+e)}catch{}}function Ho(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}function ck(t="context-mode"){return Uz(Zz(),`${t}-${process.pid}.db`)}function Wr(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 Hc(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 uk(t){let e=Date.now();for(let r of["","-wal","-shm"])try{Fz(t+r,`${t}${r}.corrupt-${e}`)}catch{}}var Lc,Fc,Fo,mi,Sh,Zc,fi=b(()=>{"use strict";Lc=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()}},Fc=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()}},Fo=null;mi=Symbol.for("__context_mode_live_dbs__"),Sh=(()=>{let t=globalThis;return t[mi]||(t[mi]=new Set,process.on("exit",()=>{for(let e of t[mi])Ho(e);t[mi].clear()})),t[mi]})(),Zc=class{#e;#t;constructor(e){let r=Dn();this.#e=e,Uo(e);let n;try{n=new r(e,{timeout:3e4}),Zo(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(Hc(s)){uk(e),Uo(e);try{n=new r(e,{timeout:3e4}),Zo(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,Sh.add(this.#t),this.initSchema(),this.prepareStatements()}get db(){return this.#t}get dbPath(){return this.#e}close(){Sh.delete(this.#t),Ho(this.#t)}withRetry(e){return Wr(e)}cleanup(){Sh.delete(this.#t),Ho(this.#t),Uc(this.#e)}}});import{readFileSync as Hz,readdirSync as mk,unlinkSync as wh,existsSync as dk,statSync as kh}from"node:fs";import{tmpdir as fk}from"node:os";import{join as $h}from"node:path";function qz(t,e="AND"){let r=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=>!qo.has(s.toLowerCase()));return(n.length>0?n:r).map(s=>`"${s}"`).join(e==="OR"?" OR ":" ")}function Bz(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=r.split(/\s+/).filter(i=>i.length>=3);if(n.length===0)return"";let o=n.filter(i=>!qo.has(i.toLowerCase()));return(o.length>0?o:n).map(i=>`"${i}"`).join(e==="OR"?" OR ":" ")}function Vz(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 Wz(t){return t<=4?1:t<=12?2:3}function Eh(){let t=fk(),e=0;try{let r=mk(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=$h(t,n);for(let a of["","-wal","-shm"])try{wh(i+a)}catch{}e++}}}catch{}return e}function Th(t,e){let r=0;try{if(!dk(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=mk(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=$h(t,s),c=kh(i).mtimeMs<n;if(!c){let u=i+"-wal";if(dk(u))try{let l=kh(u);l.size>0&&Date.now()-l.mtimeMs>36e5&&(c=!0)}catch{}}if(c){for(let u of["","-wal","-shm"])try{wh(i+u)}catch{}r++}}catch{}}catch{}return r}function Gz(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function Kz(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 qo,pk,qc,hk=b(()=>{"use strict";fi();qo=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"]);pk=4096;qc=class t{#e;#t;#r;#n;#s;#i;#o;#a;#c;#d;#p;#m;#f;#h;#g;#_;#y;#v;#x;#b;#S;#k;#w;#$;#E;#T;#P;#R;#O;#C;#I;#A;#N=0;static OPTIMIZE_EVERY=50;constructor(e){let r=Dn();this.#t=e??$h(fk(),`context-mode-${process.pid}.db`),Uo(this.#t);let n;try{n=new r(this.#t,{timeout:3e4}),Zo(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(Hc(s)){Uc(this.#t),Uo(this.#t);try{n=new r(this.#t,{timeout:3e4}),Zo(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.#F(),this.#Z()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{wh(this.#t+e)}catch{}}#F(){this.#e.exec(`
127
+ ${n}`}}}});var ck={};je(ck,{BunSQLiteAdapter:()=>Lc,NodeSQLiteAdapter:()=>Fc,SQLiteBase:()=>Zc,applyWALPragmas:()=>qo,cleanOrphanedWALFiles:()=>Bo,closeDB:()=>Vo,defaultDBPath:()=>ik,deleteDBFiles:()=>Uc,isSQLiteCorruptionError:()=>Hc,loadDatabase:()=>Un,renameCorruptDB:()=>ak,withRetry:()=>Jr});import{createRequire as Qz}from"node:module";import{existsSync as ej,unlinkSync as sk,renameSync as tj}from"node:fs";import{tmpdir as rj}from"node:os";import{join as nj}from"node:path";function Un(){if(!Ho){let t=Qz(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;Ho=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0}),i=new Lc(s);return o?.timeout&&i.pragma(`busy_timeout = ${o.timeout}`),i}}else if(process.platform==="linux")try{let{DatabaseSync:e}=t(["node","sqlite"].join(":"));Ho=function(n,o){let s=new e(n,{readOnly:o?.readonly??!1});return new Fc(s)}}catch{Ho=t("better-sqlite3")}else Ho=t("better-sqlite3")}return Ho}function qo(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL");try{t.pragma("mmap_size = 268435456")}catch{}}function Bo(t){if(!ej(t))for(let e of["-wal","-shm"])try{sk(t+e)}catch{}}function Uc(t){for(let e of["","-wal","-shm"])try{sk(t+e)}catch{}}function Vo(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}function ik(t="context-mode"){return nj(rj(),`${t}-${process.pid}.db`)}function Jr(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 Hc(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 ak(t){let e=Date.now();for(let r of["","-wal","-shm"])try{tj(t+r,`${t}${r}.corrupt-${e}`)}catch{}}var Lc,Fc,Ho,hi,$h,Zc,gi=v(()=>{"use strict";Lc=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()}},Fc=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()}},Ho=null;hi=Symbol.for("__context_mode_live_dbs__"),$h=(()=>{let t=globalThis;return t[hi]||(t[hi]=new Set,process.on("exit",()=>{for(let e of t[hi])Vo(e);t[hi].clear()})),t[hi]})(),Zc=class{#e;#t;constructor(e){let r=Un();this.#e=e,Bo(e);let n;try{n=new r(e,{timeout:3e4}),qo(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(Hc(s)){ak(e),Bo(e);try{n=new r(e,{timeout:3e4}),qo(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,$h.add(this.#t),this.initSchema(),this.prepareStatements()}get db(){return this.#t}get dbPath(){return this.#e}close(){$h.delete(this.#t),Vo(this.#t)}withRetry(e){return Jr(e)}cleanup(){$h.delete(this.#t),Vo(this.#t),Uc(this.#e)}}});import{readFileSync as uk,readdirSync as pk,unlinkSync as Th,existsSync as Eh,statSync as qc}from"node:fs";import{createHash as lk}from"node:crypto";import{tmpdir as mk}from"node:os";import{join as Ph}from"node:path";function fk(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 oj(t,e="AND"){let r=fk(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=>!Wo.has(s.toLowerCase()));return(n.length>0?n:r).map(s=>`"${s}"`).join(e==="OR"?" OR ":" ")}function sj(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=fk(r.split(/\s+/).filter(i=>i.length>=3));if(n.length===0)return"";let o=n.filter(i=>!Wo.has(i.toLowerCase()));return(o.length>0?o:n).map(i=>`"${i}"`).join(e==="OR"?" OR ":" ")}function ij(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 aj(t){return t<=4?1:t<=12?2:3}function Rh(){let t=mk(),e=0;try{let r=pk(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=Ph(t,n);for(let a of["","-wal","-shm"])try{Th(i+a)}catch{}e++}}}catch{}return e}function Oh(t,e){let r=0;try{if(!Eh(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=pk(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=Ph(t,s),c=qc(i).mtimeMs<n;if(!c){let u=i+"-wal";if(Eh(u))try{let l=qc(u);l.size>0&&Date.now()-l.mtimeMs>36e5&&(c=!0)}catch{}}if(c){for(let u of["","-wal","-shm"])try{Th(i+u)}catch{}r++}}catch{}}catch{}return r}function cj(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function uj(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 Wo,dk,Bc,hk=v(()=>{"use strict";gi();Wo=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"]);dk=4096;Bc=class t{#e;#t;#n;#o;#i;#a;#s;#c;#u;#p;#m;#f;#h;#g;#_;#y;#x;#v;#S;#b;#k;#w;#$;#E;#T;#P;#R;#O;#C;#I;#A;#N;#z=0;static OPTIMIZE_EVERY=50;#r=new Map;static FUZZY_CACHE_SIZE=256;constructor(e){let r=Un();this.#t=e??Ph(mk(),`context-mode-${process.pid}.db`),Bo(this.#t);let n;try{n=new r(this.#t,{timeout:3e4}),qo(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(Hc(s)){Uc(this.#t),Bo(this.#t);try{n=new r(this.#t,{timeout:3e4}),qo(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.#Z(),this.#U()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{Th(this.#t+e)}catch{}}#Z(){this.#e.exec(`
129
128
  CREATE TABLE IF NOT EXISTS sources (
130
129
  id INTEGER PRIMARY KEY AUTOINCREMENT,
131
130
  label TEXT NOT NULL,
132
131
  chunk_count INTEGER NOT NULL DEFAULT 0,
133
132
  code_chunk_count INTEGER NOT NULL DEFAULT 0,
134
- indexed_at TEXT NOT NULL DEFAULT (datetime('now'))
133
+ indexed_at TEXT NOT NULL DEFAULT (datetime('now')),
134
+ file_path TEXT,
135
+ content_hash TEXT
135
136
  );
136
137
 
137
138
  CREATE VIRTUAL TABLE IF NOT EXISTS chunks USING fts5(
@@ -155,7 +156,7 @@ ${n}`}}}});var lk={};Le(lk,{BunSQLiteAdapter:()=>Lc,NodeSQLiteAdapter:()=>Fc,SQL
155
156
  );
156
157
 
157
158
  CREATE INDEX IF NOT EXISTS idx_sources_label ON sources(label);
158
- `)}#Z(){this.#r=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, 0, 0)"),this.#n=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, ?, ?)"),this.#s=this.#e.prepare("INSERT INTO chunks (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#i=this.#e.prepare("INSERT INTO chunks_trigram (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#o=this.#e.prepare("INSERT OR IGNORE INTO vocabulary (word) VALUES (?)"),this.#a=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#c=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#d=this.#e.prepare("DELETE FROM sources WHERE label = ?"),this.#p=this.#e.prepare(`
159
+ `);try{this.#e.exec("ALTER TABLE sources ADD COLUMN file_path TEXT")}catch{}try{this.#e.exec("ALTER TABLE sources ADD COLUMN content_hash TEXT")}catch{}}#U(){this.#n=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count, file_path, content_hash) VALUES (?, 0, 0, ?, ?)"),this.#o=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count, file_path, content_hash) VALUES (?, ?, ?, ?, ?)"),this.#i=this.#e.prepare("INSERT INTO chunks (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#a=this.#e.prepare("INSERT INTO chunks_trigram (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#s=this.#e.prepare("INSERT OR IGNORE INTO vocabulary (word) VALUES (?)"),this.#c=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#u=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#p=this.#e.prepare("DELETE FROM sources WHERE label = ?"),this.#m=this.#e.prepare(`
159
160
  SELECT
160
161
  chunks.title,
161
162
  chunks.content,
@@ -168,7 +169,7 @@ ${n}`}}}});var lk={};Le(lk,{BunSQLiteAdapter:()=>Lc,NodeSQLiteAdapter:()=>Fc,SQL
168
169
  WHERE chunks MATCH ?
169
170
  ORDER BY rank
170
171
  LIMIT ?
171
- `),this.#m=this.#e.prepare(`
172
+ `),this.#f=this.#e.prepare(`
172
173
  SELECT
173
174
  chunks.title,
174
175
  chunks.content,
@@ -181,7 +182,7 @@ ${n}`}}}});var lk={};Le(lk,{BunSQLiteAdapter:()=>Lc,NodeSQLiteAdapter:()=>Fc,SQL
181
182
  WHERE chunks MATCH ? AND sources.label LIKE ?
182
183
  ORDER BY rank
183
184
  LIMIT ?
184
- `),this.#f=this.#e.prepare(`
185
+ `),this.#h=this.#e.prepare(`
185
186
  SELECT
186
187
  chunks.title,
187
188
  chunks.content,
@@ -194,7 +195,7 @@ ${n}`}}}});var lk={};Le(lk,{BunSQLiteAdapter:()=>Lc,NodeSQLiteAdapter:()=>Fc,SQL
194
195
  WHERE chunks MATCH ? AND sources.label = ?
195
196
  ORDER BY rank
196
197
  LIMIT ?
197
- `),this.#h=this.#e.prepare(`
198
+ `),this.#g=this.#e.prepare(`
198
199
  SELECT
199
200
  chunks_trigram.title,
200
201
  chunks_trigram.content,
@@ -207,7 +208,7 @@ ${n}`}}}});var lk={};Le(lk,{BunSQLiteAdapter:()=>Lc,NodeSQLiteAdapter:()=>Fc,SQL
207
208
  WHERE chunks_trigram MATCH ?
208
209
  ORDER BY rank
209
210
  LIMIT ?
210
- `),this.#g=this.#e.prepare(`
211
+ `),this.#_=this.#e.prepare(`
211
212
  SELECT
212
213
  chunks_trigram.title,
213
214
  chunks_trigram.content,
@@ -220,7 +221,7 @@ ${n}`}}}});var lk={};Le(lk,{BunSQLiteAdapter:()=>Lc,NodeSQLiteAdapter:()=>Fc,SQL
220
221
  WHERE chunks_trigram MATCH ? AND sources.label LIKE ?
221
222
  ORDER BY rank
222
223
  LIMIT ?
223
- `),this.#_=this.#e.prepare(`
224
+ `),this.#y=this.#e.prepare(`
224
225
  SELECT
225
226
  chunks_trigram.title,
226
227
  chunks_trigram.content,
@@ -246,7 +247,7 @@ ${n}`}}}});var lk={};Le(lk,{BunSQLiteAdapter:()=>Lc,NodeSQLiteAdapter:()=>Fc,SQL
246
247
  WHERE chunks MATCH ? AND chunks.content_type = ?
247
248
  ORDER BY rank
248
249
  LIMIT ?
249
- `),this.#x=this.#e.prepare(`
250
+ `),this.#S=this.#e.prepare(`
250
251
  SELECT
251
252
  chunks.title,
252
253
  chunks.content,
@@ -272,7 +273,7 @@ ${n}`}}}});var lk={};Le(lk,{BunSQLiteAdapter:()=>Lc,NodeSQLiteAdapter:()=>Fc,SQL
272
273
  WHERE chunks MATCH ? AND sources.label = ? AND chunks.content_type = ?
273
274
  ORDER BY rank
274
275
  LIMIT ?
275
- `),this.#S=this.#e.prepare(`
276
+ `),this.#k=this.#e.prepare(`
276
277
  SELECT
277
278
  chunks_trigram.title,
278
279
  chunks_trigram.content,
@@ -285,7 +286,7 @@ ${n}`}}}});var lk={};Le(lk,{BunSQLiteAdapter:()=>Lc,NodeSQLiteAdapter:()=>Fc,SQL
285
286
  WHERE chunks_trigram MATCH ? AND chunks_trigram.content_type = ?
286
287
  ORDER BY rank
287
288
  LIMIT ?
288
- `),this.#k=this.#e.prepare(`
289
+ `),this.#w=this.#e.prepare(`
289
290
  SELECT
290
291
  chunks_trigram.title,
291
292
  chunks_trigram.content,
@@ -298,7 +299,7 @@ ${n}`}}}});var lk={};Le(lk,{BunSQLiteAdapter:()=>Lc,NodeSQLiteAdapter:()=>Fc,SQL
298
299
  WHERE chunks_trigram MATCH ? AND sources.label LIKE ? AND chunks_trigram.content_type = ?
299
300
  ORDER BY rank
300
301
  LIMIT ?
301
- `),this.#w=this.#e.prepare(`
302
+ `),this.#$=this.#e.prepare(`
302
303
  SELECT
303
304
  chunks_trigram.title,
304
305
  chunks_trigram.content,
@@ -311,45 +312,45 @@ ${n}`}}}});var lk={};Le(lk,{BunSQLiteAdapter:()=>Lc,NodeSQLiteAdapter:()=>Fc,SQL
311
312
  WHERE chunks_trigram MATCH ? AND sources.label = ? AND chunks_trigram.content_type = ?
312
313
  ORDER BY rank
313
314
  LIMIT ?
314
- `),this.#y=this.#e.prepare("SELECT word FROM vocabulary WHERE length(word) BETWEEN ? AND ?"),this.#$=this.#e.prepare("SELECT label, chunk_count as chunkCount FROM sources ORDER BY id DESC"),this.#E=this.#e.prepare(`SELECT c.title, c.content, c.content_type, s.label
315
+ `),this.#x=this.#e.prepare("SELECT word FROM vocabulary WHERE length(word) BETWEEN ? AND ?"),this.#E=this.#e.prepare("SELECT label, chunk_count as chunkCount FROM sources ORDER BY id DESC"),this.#T=this.#e.prepare(`SELECT c.title, c.content, c.content_type, s.label
315
316
  FROM chunks c
316
317
  JOIN sources s ON s.id = c.source_id
317
318
  WHERE c.source_id = ?
318
- ORDER BY c.rowid`),this.#T=this.#e.prepare("SELECT chunk_count FROM sources WHERE id = ?"),this.#P=this.#e.prepare("SELECT content FROM chunks WHERE source_id = ?"),this.#O=this.#e.prepare("SELECT label, chunk_count, code_chunk_count, indexed_at FROM sources WHERE label = ?"),this.#R=this.#e.prepare(`
319
+ ORDER BY c.rowid`),this.#P=this.#e.prepare("SELECT chunk_count FROM sources WHERE id = ?"),this.#R=this.#e.prepare("SELECT content FROM chunks WHERE source_id = ?"),this.#C=this.#e.prepare("SELECT label, chunk_count, code_chunk_count, indexed_at, file_path, content_hash FROM sources WHERE label = ?"),this.#O=this.#e.prepare(`
319
320
  SELECT
320
321
  (SELECT COUNT(*) FROM sources) AS sources,
321
322
  (SELECT COUNT(*) FROM chunks) AS chunks,
322
323
  (SELECT COUNT(*) FROM chunks WHERE content_type = 'code') AS codeChunks
323
- `),this.#C=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),this.#I=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;if(!r&&!n)throw new Error("Either content or path must be provided");let s=r??Hz(n,"utf-8"),i=o??n??"untitled",a=this.#H(s);return Wr(()=>this.#u(a,i,s))}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#u([],r,"");let o=this.#q(e,n);return Wr(()=>this.#u(o.map(s=>({...s,hasCode:!1})),r,e))}indexJSON(e,r,n=pk){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.#L(o,[],s,n),s.length===0?this.indexPlainText(e,r):Wr(()=>this.#u(s,r,e))}#u(e,r,n){let o=e.filter(a=>a.hasCode).length,i=this.#e.transaction(()=>{if(this.#a.run(r),this.#c.run(r),this.#d.run(r),e.length===0){let u=this.#r.run(r);return Number(u.lastInsertRowid)}let a=this.#n.run(r,e.length,o),c=Number(a.lastInsertRowid);for(let u of e){let l=u.hasCode?"code":"prose";this.#s.run(u.title,u.content,c,l),this.#i.run(u.title,u.content,c,l)}return c})();return n&&this.#U(n),this.#N++,this.#N%t.OPTIMIZE_EVERY===0&&this.#D(),{sourceId:i,label:r,totalChunks:e.length,codeChunks:o}}#z(e){return e.map(r=>({title:r.title,content:r.content,source:r.label,rank:r.rank,contentType:r.content_type,highlighted:r.highlighted}))}#l(e,r){return r==="exact"?e:`%${e}%`}search(e,r=3,n,o="AND",s,i="like"){let a=qz(e,o),c,u;return n&&s?(c=i==="exact"?this.#b:this.#x,u=[a,this.#l(n,i),s,r]):n?(c=i==="exact"?this.#f:this.#m,u=[a,this.#l(n,i),r]):s?(c=this.#v,u=[a,s,r]):(c=this.#p,u=[a,r]),Wr(()=>this.#z(c.all(...u)))}searchTrigram(e,r=3,n,o="AND",s,i="like"){let a=Bz(e,o);if(!a)return[];let c,u;return n&&s?(c=i==="exact"?this.#w:this.#k,u=[a,this.#l(n,i),s,r]):n?(c=i==="exact"?this.#_:this.#g,u=[a,this.#l(n,i),r]):s?(c=this.#S,u=[a,s,r]):(c=this.#h,u=[a,r]),Wr(()=>this.#z(c.all(...u)))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;let n=Wz(r.length),o=this.#y.all(r.length-n,r.length+n),s=null,i=n+1;for(let{word:a}of o){if(a===r)return null;let c=Vz(r,a);c<i&&(i=c,s=a)}return i<=n?s:null}#j(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=m=>`${m.source}::${m.title}`;for(let[m,f]of c.entries()){let p=d(f),h=l.get(p);h?h.score+=1/(60+m+1):l.set(p,{result:f,score:1/(60+m+1)})}for(let[m,f]of u.entries()){let p=d(f),h=l.get(p);h?h.score+=1/(60+m+1):l.set(p,{result:f,score:1/(60+m+1)})}return Array.from(l.values()).sort((m,f)=>f.score-m.score).slice(0,r).map(({result:m,score:f})=>({...m,rank:-f}))}#M(e,r){let n=r.toLowerCase().split(/\s+/).filter(i=>i.length>=2),o=n.filter(i=>!qo.has(i)),s=o.length>0?o:n;return e.map(i=>{let a=i.title.toLowerCase(),c=s.filter(m=>a.includes(m)).length,u=i.contentType==="code"?.6:.3,l=c>0?u*(c/s.length):0,d=0;if(s.length>=2){let m=i.content.toLowerCase(),f=s.map(p=>Gz(m,p));f.some(p=>p.length===0)||(d=1/(1+Kz(f)/Math.max(m.length,1)))}return{result:i,boost:l+d}}).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"){let i=this.#j(e,r,n,o,s);if(i.length>0)return this.#M(i,e).map(m=>({...m,matchLayer:"rrf"}));let a=e.toLowerCase().trim().split(/\s+/).filter(d=>d.length>=3&&!qo.has(d)),c=a.join(" "),l=a.map(d=>this.fuzzyCorrect(d)??d).join(" ");if(l!==c){let d=this.#j(l,r,n,o,s);if(d.length>0)return this.#M(d,l).map(f=>({...f,matchLayer:"rrf-fuzzy"}))}return[]}getSourceMeta(e){let r=this.#O.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at}:null}listSources(){return this.#$.all()}getChunksBySource(e){return this.#E.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.#T.get(e);if(!n||n.chunk_count<3)return[];let o=n.chunk_count,s=2,i=Math.max(3,Math.ceil(o*.4)),a=new Map;for(let l of this.#P.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(m=>m.length>=3&&!qo.has(m)));for(let m of d)a.set(m,(a.get(m)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let m=Math.log(o/d),f=Math.min(l.length/20,.5),p=/[_]/.test(l),h=l.length>=12,g=p?1.5:h?.8:0;return{word:l,score:m+f+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#R.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}cleanupStaleSources(e){return this.#e.transaction(o=>(this.#C.run(o),this.#I.run(o),this.#A.run(o)))(e).changes}getDBSizeBytes(){try{return kh(this.#t).size}catch{return 0}}#D(){try{this.#e.exec("INSERT INTO chunks(chunks) VALUES('optimize')"),this.#e.exec("INSERT INTO chunks_trigram(chunks_trigram) VALUES('optimize')")}catch{}}close(){this.#D(),Ho(this.#e)}#U(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(o=>o.length>=3&&!qo.has(o)),n=[...new Set(r)];this.#e.transaction(()=>{for(let o of n)this.#o.run(o)})()}#H(e,r=pk){let n=[],o=e.split(`
324
+ `),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;if(!r&&!n)throw new Error("Either content or path must be provided");let s=r??uk(n,"utf-8"),i=o??n??"untitled",a=this.#B(s),c=n??void 0,u=c?lk("sha256").update(s).digest("hex"):void 0;return Jr(()=>this.#l(a,i,s,c,u))}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#l([],r,"");let o=this.#V(e,n);return Jr(()=>this.#l(o.map(s=>({...s,hasCode:!1})),r,e))}indexJSON(e,r,n=dk){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):Jr(()=>this.#l(s,r,e))}#l(e,r,n,o,s){let i=e.filter(u=>u.hasCode).length,c=this.#e.transaction(()=>{if(this.#c.run(r),this.#u.run(r),this.#p.run(r),e.length===0){let d=this.#n.run(r,o??null,s??null);return Number(d.lastInsertRowid)}let u=this.#o.run(r,e.length,i,o??null,s??null),l=Number(u.lastInsertRowid);for(let d of e){let m=d.hasCode?"code":"prose";this.#i.run(d.title,d.content,l,m),this.#a.run(d.title,d.content,l,m)}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}))}#d(e,r){return r==="exact"?e:`%${e}%`}search(e,r=3,n,o="AND",s,i="like"){let a=oj(e,o),c,u;return n&&s?(c=i==="exact"?this.#b:this.#S,u=[a,this.#d(n,i),s,r]):n?(c=i==="exact"?this.#h:this.#f,u=[a,this.#d(n,i),r]):s?(c=this.#v,u=[a,s,r]):(c=this.#m,u=[a,r]),Jr(()=>this.#j(c.all(...u)))}searchTrigram(e,r=3,n,o="AND",s,i="like"){let a=sj(e,o);if(!a)return[];let c,u;return n&&s?(c=i==="exact"?this.#$:this.#w,u=[a,this.#d(n,i),s,r]):n?(c=i==="exact"?this.#y:this.#_,u=[a,this.#d(n,i),r]):s?(c=this.#k,u=[a,s,r]):(c=this.#g,u=[a,r]),Jr(()=>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=aj(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=ij(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}#M(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=m=>`${m.source}::${m.title}`;for(let[m,h]of c.entries()){let p=d(h),f=l.get(p);f?f.score+=1/(60+m+1):l.set(p,{result:h,score:1/(60+m+1)})}for(let[m,h]of u.entries()){let p=d(h),f=l.get(p);f?f.score+=1/(60+m+1):l.set(p,{result:h,score:1/(60+m+1)})}return Array.from(l.values()).sort((m,h)=>h.score-m.score).slice(0,r).map(({result:m,score:h})=>({...m,rank:-h}))}#D(e,r){let n=r.toLowerCase().split(/\s+/).filter(i=>i.length>=2),o=n.filter(i=>!Wo.has(i)),s=o.length>0?o:n;return e.map(i=>{let a=i.title.toLowerCase(),c=s.filter(m=>a.includes(m)).length,u=i.contentType==="code"?.6:.3,l=c>0?u*(c/s.length):0,d=0;if(s.length>=2){let m=i.content.toLowerCase(),h=s.map(p=>cj(m,p));h.some(p=>p.length===0)||(d=1/(1+uj(h)/Math.max(m.length,1)))}return{result:i,boost:l+d}}).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.#M(e,r,n,o,s);if(i.length>0)return this.#D(i,e).map(m=>({...m,matchLayer:"rrf"}));let a=e.toLowerCase().trim().split(/\s+/).filter(d=>d.length>=3&&!Wo.has(d)),c=a.join(" "),l=a.map(d=>this.fuzzyCorrect(d)??d).join(" ");if(l!==c){let d=this.#M(l,r,n,o,s);if(d.length>0)return this.#D(d,l).map(h=>({...h,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(!Eh(r.file_path))continue;let n=qc(r.file_path).mtime,o=new Date(r.indexed_at+"Z");if(n<=o)continue;let s=uk(r.file_path,"utf-8");if(lk("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.#C.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(m=>m.length>=3&&!Wo.has(m)));for(let m of d)a.set(m,(a.get(m)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let m=Math.log(o/d),h=Math.min(l.length/20,.5),p=/[_]/.test(l),f=l.length>=12,g=p?1.5:f?.8:0;return{word:l,score:m+h+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#O.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 qc(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(),Vo(this.#e)}#q(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(s=>s.length>=3&&!Wo.has(s)),n=[...new Set(r)],o=0;this.#e.transaction(()=>{for(let s of n){let i=this.#s.run(s);o+=i.changes}})(),o>0&&this.#r.clear()}#B(e,r=dk){let n=[],o=e.split(`
324
325
  `),s=[],i=[],a="",c=()=>{let l=i.join(`
325
- `).trim();if(l.length===0)return;let d=this.#G(s,a),m=i.some(_=>/^`{3,}/.test(_));if(Buffer.byteLength(l)<=r){n.push({title:d,content:l,hasCode:m}),i=[];return}let f=l.split(/\n\n+/),p=[],h=1,g=()=>{if(p.length===0)return;let _=p.join(`
326
+ `).trim();if(l.length===0)return;let d=this.#J(s,a),m=i.some(_=>/^`{3,}/.test(_));if(Buffer.byteLength(l)<=r){n.push({title:d,content:l,hasCode:m}),i=[];return}let h=l.split(/\n\n+/),p=[],f=1,g=()=>{if(p.length===0)return;let _=p.join(`
326
327
 
327
- `).trim();if(_.length===0)return;let y=f.length>1?`${d} (${h})`:d;h++,n.push({title:y,content:_,hasCode:_.includes("```")}),p=[]};for(let _ of f){p.push(_);let y=p.join(`
328
+ `).trim();if(_.length===0)return;let y=h.length>1?`${d} (${f})`:d;f++,n.push({title:y,content:_,hasCode:_.includes("```")}),p=[]};for(let _ of h){p.push(_);let y=p.join(`
328
329
 
329
- `);Buffer.byteLength(y)>r&&p.length>1&&(p.pop(),g(),p=[_])}g(),i=[]},u=0;for(;u<o.length;){let l=o[u];if(/^[-_*]{3,}\s*$/.test(l)){c(),u++;continue}let d=l.match(/^(#{1,4})\s+(.+)$/);if(d){c();let f=d[1].length,p=d[2].trim();for(;s.length>0&&s[s.length-1].level>=f;)s.pop();s.push({level:f,text:p}),a=p,i.push(l),u++;continue}let m=l.match(/^(`{3,})(.*)?$/);if(m){let f=m[1],p=[l];for(u++;u<o.length;){if(p.push(o[u]),o[u].startsWith(f)&&o[u].trim()===f){u++;break}u++}i.push(...p);continue}i.push(l),u++}return c(),n}#q(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(`
330
+ `);Buffer.byteLength(y)>r&&p.length>1&&(p.pop(),g(),p=[_])}g(),i=[]},u=0;for(;u<o.length;){let l=o[u];if(/^[-_*]{3,}\s*$/.test(l)){c(),u++;continue}let d=l.match(/^(#{1,4})\s+(.+)$/);if(d){c();let h=d[1].length,p=d[2].trim();for(;s.length>0&&s[s.length-1].level>=h;)s.pop();s.push({level:h,text:p}),a=p,i.push(l),u++;continue}let m=l.match(/^(`{3,})(.*)?$/);if(m){let h=m[1],p=[l];for(u++;u<o.length;){if(p.push(o[u]),o[u].startsWith(h)&&o[u].trim()===h){u++;break}u++}i.push(...p);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(`
330
331
  `)[0].slice(0,80)||`Section ${u+1}`,content:l}}).filter(c=>c.content.length>0);let o=e.split(`
331
332
  `);if(o.length<=r)return[{title:"Output",content:e}];let s=[],a=Math.max(r-2,1);for(let c=0;c<o.length;c+=a){let u=o.slice(c,c+r);if(u.length===0)break;let l=c+1,d=Math.min(c+u.length,o.length),m=u[0]?.trim().slice(0,80);s.push({title:m||`Lines ${l}-${d}`,content:u.join(`
332
- `)})}return s}#L(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.#L(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#W(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#B(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}#V(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])}`}#W(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#B(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#V(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)}#G(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}}});import{readFileSync as _k}from"node:fs";import{resolve as Bo}from"node:path";import{homedir as yk}from"node:os";function vk(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function Jz(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function Yz(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function gk(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function Xz(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=Yz(o),a=gk(s);r=`^${i}(\\s${a})?$`}else r=`^${gk(t)}$`;return new RegExp(r,e?"i":"")}function Qz(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 ej(t,e,r=!1){for(let n of e){let o=vk(n);if(o&&Xz(o,r).test(t))return n}return null}function tj(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 Ph(t){let e;try{e=_k(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"&&vk(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function Rh(t,e){let r=[];if(t){let s=Bo(t,".claude","settings.local.json"),i=Ph(s);i&&r.push(i);let a=Bo(t,".claude","settings.json"),c=Ph(a);c&&r.push(c)}let n=e??Bo(yk(),".claude","settings.json"),o=Ph(n);return o&&r.push(o),r}function xk(t,e,r){let n=[],o=a=>{let c;try{c=_k(a,"utf-8")}catch{return null}let u;try{u=JSON.parse(c)}catch{return null}let l=u?.permissions?.deny;if(!Array.isArray(l))return[];let d=[];for(let m of l){if(typeof m!="string")continue;let f=Jz(m);f&&f.tool===t&&d.push(f.glob)}return d};if(e){let a=o(Bo(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Bo(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Bo(yk(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function Oh(t,e,r=process.platform==="win32"){let n=tj(t);for(let o of n)for(let s of e){let i=ej(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function bk(t,e,r=process.platform==="win32"){let n=t.replace(/\\/g,"/");for(let o of e)for(let s of o)if(Qz(s,r).test(n))return{denied:!0,matchedPattern:s};return{denied:!1}}function nj(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 Sk(t,e){let r=rj[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(...nj(t)),n}var rj,kk=b(()=>{"use strict";rj={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 Ch(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}
333
+ `)})}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(" > ")}}});import{readFileSync as _k,realpathSync as lj}from"node:fs";import{resolve as Hn}from"node:path";import{homedir as yk}from"node:os";function xk(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function dj(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function pj(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function gk(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function mj(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=pj(o),a=gk(s);r=`^${i}(\\s${a})?$`}else r=`^${gk(t)}$`;return new RegExp(r,e?"i":"")}function fj(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 hj(t,e,r=!1){for(let n of e){let o=xk(n);if(o&&mj(o,r).test(t))return n}return null}function gj(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 Ch(t){let e;try{e=_k(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"&&xk(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function Ih(t,e){let r=[];if(t){let s=Hn(t,".claude","settings.local.json"),i=Ch(s);i&&r.push(i);let a=Hn(t,".claude","settings.json"),c=Ch(a);c&&r.push(c)}let n=e??Hn(yk(),".claude","settings.json"),o=Ch(n);return o&&r.push(o),r}function vk(t,e,r){let n=[],o=a=>{let c;try{c=_k(a,"utf-8")}catch{return null}let u;try{u=JSON.parse(c)}catch{return null}let l=u?.permissions?.deny;if(!Array.isArray(l))return[];let d=[];for(let m of l){if(typeof m!="string")continue;let h=dj(m);h&&h.tool===t&&d.push(h.glob)}return d};if(e){let a=o(Hn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Hn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Hn(yk(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function Ah(t,e,r=process.platform==="win32"){let n=gj(t);for(let o of n)for(let s of e){let i=hj(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function Sk(t,e,r=process.platform==="win32",n){let o=i=>i.replace(/\\/g,"/"),s=new Set;if(s.add(o(t)),n){let i=Hn(n,t);s.add(o(i));try{s.add(o(lj(i)))}catch{}}for(let i of e)for(let a of i){let c=fj(a,r);for(let u of s)if(c.test(u))return{denied:!0,matchedPattern:a}}return{denied:!1}}function yj(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 bk(t,e){let r=_j[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(...yj(t)),n}var _j,kk=v(()=>{"use strict";_j={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 Nh(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}
333
334
 
334
335
  stdout:
335
336
  ${n}
336
337
 
337
338
  stderr:
338
- ${o}`}}var wk=b(()=>{"use strict"});function sj(){let t=process.ppid;return!(t!==oj||t===0||t===1)}function $k(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??sj,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 a of i)process.on(a,o);return()=>{n=!0,clearInterval(s);for(let a of i)process.removeListener(a,o)}}var oj,Ek=b(()=>{"use strict";oj=process.ppid});import{createHash as ij}from"node:crypto";import{execFileSync as aj}from"node:child_process";function Ih(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=aj("git",["worktree","list","--porcelain"],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).split(/\r?\n/).find(n=>n.startsWith("worktree "))?.replace("worktree ","")?.trim();if(r&&e!==r)return`__${ij("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var Tk=b(()=>{"use strict";fi()});function hi(t){return t>=1024*1024?`${(t/1024/1024).toFixed(1)} MB`:t>=1024?`${(t/1024).toFixed(1)} KB`:`${t} B`}function lj(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 dj(t,e){let n="#".repeat(40),o=t>0?Math.max(1,Math.round(e/t*40)):40,s="#".repeat(o)+" ".repeat(40-o);return{withoutBar:n,withBar:s}}function Bc(t,e,r){let n=[],o=lj(t.session.uptime_min),s=t.savings.kept_out+(t.cache?t.cache.bytes_saved:0),i=t.savings.total_bytes_returned,a=t.savings.total_calls;if(s===0){if(n.push(`context-mode -- session (${o})`),n.push(""),a===0)n.push("No tool calls yet.");else{let _=a===1?"1 tool call":`${a} tool calls`;n.push(`${_} | ${hi(i)} in context | no savings yet`)}return n.push(""),n.push("Tip: Use ctx_execute to analyze files in sandbox -- savings start there."),n.push(""),n.push(e?`v${e}`:"context-mode"),e&&r&&r!=="unknown"&&r!==e&&n.push(`Update available: v${e} -> v${r} | Run: ctx_upgrade`),n.join(`
339
- `)}let c=s+i,u=c>0?(s/c*100).toFixed(1):"0.0",l=Math.round(s/4/1e3);n.push(`context-mode -- session (${o})`),n.push("");let{withoutBar:d,withBar:m}=dj(c,i);n.push(`Without context-mode: |${d}| ${hi(c)} in your conversation`),n.push(`With context-mode: |${m}| ${hi(i)} in your conversation`),n.push("");let f=`${hi(s)} processed in sandbox, never entered your conversation. (${u}% reduction)`;if(n.push(f),l>0){let _=l>=60?`+${Math.floor(l/60)}h ${l%60}m`:`+${l}m`;n.push(`${_} session time gained.`)}let p=t.savings.by_tool.filter(_=>_.calls>0);if(p.length>=2){n.push("");for(let _ of p){let y=_.context_kb*1024,v=`${_.calls} call${_.calls!==1?"s":""}`;n.push(` ${_.tool.padEnd(22)} ${v.padEnd(10)} ${hi(y)} used`)}}if(t.continuity.by_category.length>0){n.push(""),n.push(`Session continuity: ${t.continuity.total_events} events preserved across ${t.continuity.compact_count} compaction${t.continuity.compact_count!==1?"s":""}`),n.push("");for(let _ of t.continuity.by_category){let y=_.category.padEnd(9),v=String(_.count).padStart(3),$=_.preview.length>45?_.preview.slice(0,42)+"...":_.preview;n.push(` ${y} ${v} ${$.padEnd(47)} ${_.why}`)}}let h=[];t.continuity.by_category.length===0&&t.continuity.compact_count>0&&h.push(`${t.continuity.compact_count} compaction${t.continuity.compact_count!==1?"s":""}`),t.continuity.by_category.length===0&&t.continuity.total_events>0&&h.push(`${t.continuity.total_events} event${t.continuity.total_events!==1?"s":""} preserved`);let g=e?`v${e}`:"context-mode";return h.push(g),n.push(""),n.push(h.join(" | ")),e&&r&&r!=="unknown"&&r!==e&&n.push(`Update available: v${e} -> v${r} | Run: ctx_upgrade`),n.join(`
340
- `)}var cj,uj,Vo,Pk=b(()=>{"use strict";cj={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"},uj={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"},Vo=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}}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,Pe)=>N+Pe,0),s=Object.values(e.calls).reduce((N,Pe)=>N+Pe,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),p;if(e.cacheHits>0||e.cacheBytesSaved>0){let N=a+e.cacheBytesSaved,Pe=N/Math.max(o,1),de=Math.max(0,24-Math.floor((Date.now()-e.sessionStart)/(3600*1e3)));p={hits:e.cacheHits,bytes_saved:e.cacheBytesSaved,ttl_hours_left:de,total_with_cache:N,total_savings_ratio:Pe}}let h=this.db.prepare("SELECT COUNT(*) as cnt FROM session_events").get().cnt,g=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all(),y=this.db.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get()?.compact_count??0,v=this.db.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get(),$=v?!v.consumed:!1,T=this.db.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),J=new Map;for(let N of T){J.has(N.category)||J.set(N.category,new Set);let Pe=J.get(N.category);if(Pe.size<5){let de=N.data;N.category==="file"?de=N.data.split("/").pop()||N.data:N.category==="prompt"&&(de=de.length>50?de.slice(0,47)+"...":de),de.length>40&&(de=de.slice(0,37)+"..."),Pe.add(de)}}let B=g.map(N=>({category:N.category,count:N.cnt,label:cj[N.category]||N.category,preview:J.get(N.category)?Array.from(J.get(N.category)).join(", "):"",why:uj[N.category]||"Survives context resets"}));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:p,session:{id:n,uptime_min:f},continuity:{total_events:h,by_category:B,compact_count:y,resume_ready:$}}}}});var Zk={};Le(Zk,{extractSnippet:()=>Uh,formatBatchQueryResults:()=>Lk,positionsFromHighlight:()=>Dk});import{createRequire as Nk}from"node:module";import{createHash as pj}from"node:crypto";import{existsSync as gt,unlinkSync as Gr,readdirSync as mj,readFileSync as zk,writeFileSync as jk,rmSync as fj,mkdirSync as Mh,cpSync as hj,statSync as Rk}from"node:fs";import{execSync as gi}from"node:child_process";import{join as Ne,dirname as Fn,resolve as xr}from"node:path";import{fileURLToPath as gj}from"node:url";import{homedir as Dh,tmpdir as Lh}from"node:os";import{request as _j}from"node:https";function yj(t){try{let e=yi();if(!gt(e))return;let r=mj(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=Ne(e,n);try{t.index({path:o,source:"session-events"}),Gr(o)}catch{}}}catch{}}function yi(){if(Gc)return Gc.getSessionDir();let t=Ne(Dh(),".claude","context-mode","sessions");return Mh(t,{recursive:!0}),t}function vj(){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.CONTEXT_MODE_PROJECT_DIR||process.cwd()}function Kc(){let e=vj().replace(/\\/g,"/");return pj("sha256").update(e).digest("hex").slice(0,16)}function jh(){let t=Kc(),e=yi(),r=Ne(Fn(e),"content");return Mh(r,{recursive:!0}),Ne(r,`${t}.db`)}function Zn(){if(!sr){let t=jh();sr=new qc(t);try{let e=Fn(jh());Th(e,14),sr.cleanupStaleSources(14);let r=Ne(Dh(),".context-mode","content");gt(r)&&Th(r,0)}catch{}Eh()}return yj(sr),sr}async function Sj(){return new Promise(t=>{let e=_j("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 kj(){let t=Gc?.name;return t==="Claude Code"?"/ctx-upgrade":t==="OpenClaw"?"npm run install:openclaw":t==="Pi"?"npm run build":"npm update -g context-mode"}function wj(){return!Jr||Jr==="unknown"?!1:Jr!==Kr}function $j(){if(!wj())return!1;let t=Date.now();if(Vc>=xj){if(t-Ok<bj)return!1;Vc=0}return Vc===0&&(Ok=t),Vc++,!0}function H(t,e){if($j()&&e.content.length>0){let n=kj();e.content[0].text=`\u26A0\uFE0F context-mode v${Kr} outdated \u2192 v${Jr} available. Upgrade: ${n}
339
+ ${o}`}}var wk=v(()=>{"use strict"});import{execFileSync as xj}from"node:child_process";function vj(){if(process.platform==="win32")return NaN;let t=process.ppid;if(!t||t<=1)return NaN;try{let e=xj("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 Sj(t={}){let e=t.getPpid??(()=>process.ppid),r=t.readGrandparentPpid??vj,n=e(),o=r();return()=>{let s=e();return!(s!==n||s===0||s===1||!Number.isNaN(o)&&o>1&&r()===1)}}function $k(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??bj,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 a of i)process.on(a,o);return()=>{n=!0,clearInterval(s);for(let a of i)process.removeListener(a,o)}}var bj,Ek=v(()=>{"use strict";bj=Sj()});import{createHash as kj}from"node:crypto";import{execFileSync as wj}from"node:child_process";function zh(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=wj("git",["worktree","list","--porcelain"],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).split(/\r?\n/).find(n=>n.startsWith("worktree "))?.replace("worktree ","")?.trim();if(r&&e!==r)return`__${kj("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var Tk=v(()=>{"use strict";gi()});function Go(t){return t>=1024*1024?`${(t/1024/1024).toFixed(1)} MB`:t>=1024?`${(t/1024).toFixed(1)} KB`:`${Math.round(t)} B`}function Tj(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 jh(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}K`:String(t)}function Pk(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 Vc(t,e,r){let n=[],o=Tj(t.session.uptime_min),s=t.savings.kept_out+(t.cache?t.cache.bytes_saved:0),i=t.savings.total_bytes_returned,a=t.savings.total_calls,c=s+i,u=c>0?s/c*100:0,l=Math.round(s/4);if(s===0){n.push(`context-mode ${o} ${a} calls`),n.push(""),a===0?n.push("No tool calls yet. Use batch_execute or execute to start saving tokens."):n.push(`${Go(i)} entered context | 0 tokens saved`),n.push("");let p=e?`v${e}`:"context-mode";return n.push(p),e&&r&&r!=="unknown"&&r!==e&&n.push(`Update available: v${e} -> v${r} | ctx_upgrade`),n.join(`
340
+ `)}n.push(`${jh(l)} tokens saved \xB7 ${u.toFixed(1)}% reduction \xB7 ${o}`),n.push(""),n.push(`Without context-mode |${Pk(c,c)}| ${Go(c)}`),n.push(`With context-mode |${Pk(i,c)}| ${Go(i)}`),n.push(""),n.push(`${Go(s)} kept out of your conversation. Never entered context.`),n.push("");let d=[`${a} calls`];t.cache&&t.cache.hits>0&&d.push(`${t.cache.hits} cache hits (+${Go(t.cache.bytes_saved)})`),n.push(d.join(" \xB7 "));let m=t.savings.by_tool.filter(p=>p.calls>0);if(m.length>=2){n.push("");let p=m.map(f=>{let g=f.context_kb*1024,_=u<100?g/(1-u/100):g,y=Math.max(0,_-g);return{...f,returnedBytes:g,estimatedSaved:y}}).sort((f,g)=>g.estimatedSaved-f.estimatedSaved);for(let f of p){let g=f.tool.length>22?f.tool.slice(0,19)+"...":f.tool;n.push(` ${g.padEnd(22)} ${String(f.calls).padStart(4)} calls ${Go(f.estimatedSaved).padStart(8)} saved`)}}if(t.continuity.total_events>0){n.push("");let p=t.continuity.by_category,f=[],g=p.find(Z=>Z.category==="file")?.count,_=p.find(Z=>Z.category==="git")?.count,y=p.find(Z=>Z.category==="prompt")?.count,x=p.find(Z=>Z.category==="error")?.count,k=p.find(Z=>Z.category==="task")?.count;g&&f.push(`${g} files`),_&&f.push(`${_} git ops`),y&&f.push(`${y} prompts`),x&&f.push(`${x} errors`),k&&f.push(`${k} tasks`);let T=f.length>0?` \xB7 ${f.join(", ")}`:"";t.continuity.compact_count>0?(n.push(`${jh(t.continuity.total_events)} events remembered across ${t.continuity.compact_count} compaction${t.continuity.compact_count!==1?"s":""}${T}`),n.push("Zero knowledge lost \u2014 picks up exactly where you left off.")):n.push(`${jh(t.continuity.total_events)} events tracked${T}`)}n.push("");let h=e?`v${e}`:"context-mode";return n.push(h),e&&r&&r!=="unknown"&&r!==e&&n.push(`Update available: v${e} -> v${r} | ctx_upgrade`),n.join(`
341
+ `)}var $j,Ej,Ko,Rk=v(()=>{"use strict";$j={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"},Ej={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"},Ko=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}}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,Re)=>N+Re,0),s=Object.values(e.calls).reduce((N,Re)=>N+Re,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)})),h=((Date.now()-e.sessionStart)/6e4).toFixed(1),p;if(e.cacheHits>0||e.cacheBytesSaved>0){let N=a+e.cacheBytesSaved,Re=N/Math.max(o,1),de=Math.max(0,24-Math.floor((Date.now()-e.sessionStart)/(3600*1e3)));p={hits:e.cacheHits,bytes_saved:e.cacheBytesSaved,ttl_hours_left:de,total_with_cache:N,total_savings_ratio:Re}}let f=this.db.prepare("SELECT COUNT(*) as cnt FROM session_events").get().cnt,g=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all(),y=this.db.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get()?.compact_count??0,x=this.db.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get(),k=x?!x.consumed:!1,T=this.db.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),Z=new Map;for(let N of T){Z.has(N.category)||Z.set(N.category,new Set);let Re=Z.get(N.category);if(Re.size<5){let de=N.data;N.category==="file"?de=N.data.split("/").pop()||N.data:N.category==="prompt"&&(de=de.length>50?de.slice(0,47)+"...":de),de.length>40&&(de=de.slice(0,37)+"..."),Re.add(de)}}let V=g.map(N=>({category:N.category,count:N.cnt,label:$j[N.category]||N.category,preview:Z.get(N.category)?Array.from(Z.get(N.category)).join(", "):"",why:Ej[N.category]||"Survives context resets"}));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:p,session:{id:n,uptime_min:h},continuity:{total_events:f,by_category:V,compact_count:y,resume_ready:k}}}}});var Uk={};je(Uk,{extractSnippet:()=>Wh,formatBatchQueryResults:()=>Fk,positionsFromHighlight:()=>Lk});import{createRequire as zk}from"node:module";import{createHash as Pj}from"node:crypto";import{existsSync as ot,unlinkSync as Xr,readdirSync as Rj,readFileSync as jk,writeFileSync as Mk,rmSync as Fh,mkdirSync as Uh,cpSync as Oj,statSync as Ok}from"node:fs";import{execSync as Yr}from"node:child_process";import{join as xe,dirname as Qr,resolve as kr}from"node:path";import{fileURLToPath as Cj}from"node:url";import{homedir as Hh,tmpdir as qh}from"node:os";import{request as Ij}from"node:https";function Aj(t){try{let e=Bn();if(!ot(e))return;let r=Rj(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=xe(e,n);try{t.index({path:o,source:"session-events"}),Xr(o)}catch{}}}catch{}}function Bn(){if(Kc)return Kc.getSessionDir();let t=xe(Hh(),".claude","context-mode","sessions");return Uh(t,{recursive:!0}),t}function Nj(){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.CONTEXT_MODE_PROJECT_DIR||process.cwd()}function Jc(){let e=Nj().replace(/\\/g,"/");return Pj("sha256").update(e).digest("hex").slice(0,16)}function Zh(){let t=Jc(),e=Bn(),r=xe(Qr(e),"content");return Uh(r,{recursive:!0}),xe(r,`${t}.db`)}function Vn(){if(!cr){let t=Zh();cr=new Bc(t);try{let e=Qr(Zh());Oh(e,14),cr.cleanupStaleSources(14);let r=xe(Hh(),".context-mode","content");ot(r)&&Oh(r,0)}catch{}Rh()}return Aj(cr),cr}async function Mj(){return new Promise(t=>{let e=Ij("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 Dj(){let t=Kc?.name;return t==="Claude Code"?"/ctx-upgrade":t==="OpenClaw"?"npm run install:openclaw":t==="Pi"?"npm run build":"npm update -g context-mode"}function Lj(){return!tn||tn==="unknown"?!1:tn!==en}function Fj(){if(!Lj())return!1;let t=Date.now();if(Wc>=zj){if(t-Ck<jj)return!1;Wc=0}return Wc===0&&(Ck=t),Wc++,!0}function H(t,e){if(Fj()&&e.content.length>0){let n=Dj();e.content[0].text=`\u26A0\uFE0F context-mode v${en} outdated \u2192 v${tn} available. Upgrade: ${n}
341
342
 
342
- `+e.content[0].text}let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return ze.calls[t]=(ze.calls[t]||0)+1,ze.bytesReturned[t]=(ze.bytesReturned[t]||0)+r,e}function Ht(t){ze.bytesIndexed+=t}function Zh(t,e){try{let r=Rh(process.env.CLAUDE_PROJECT_DIR),n=Oh(t,r);if(n.decision==="deny")return H(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function Mk(t,e,r){try{let n=Sk(t,e);if(n.length===0)return null;let o=Rh(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=Oh(s,o);if(i.decision==="deny")return H(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 Ej(t,e){try{let r=xk("Read",process.env.CLAUDE_PROJECT_DIR),n=bk(t,r);if(n.denied)return H(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function Dk(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===Rj){for(e.push(r),n++;n<t.length&&t[n]!==Oj;)r++,n++;n<t.length&&n++}else r++,n++;return e}function Uh(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of Dk(n))o.push(u);if(o.length===0){let u=e.toLowerCase().split(/\s+/).filter(d=>d.length>2),l=t.toLowerCase();for(let d of u){let m=l.indexOf(d);for(;m!==-1;)o.push(m),m=l.indexOf(d,m+1)}}if(o.length===0)return t.slice(0,r)+`
343
+ `+e.content[0].text}let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return ze.calls[t]=(ze.calls[t]||0)+1,ze.bytesReturned[t]=(ze.bytesReturned[t]||0)+r,e}function Gt(t){ze.bytesIndexed+=t}function Vh(t,e){try{let r=Ih(process.env.CLAUDE_PROJECT_DIR),n=Ah(t,r);if(n.decision==="deny")return H(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function Dk(t,e,r){try{let n=bk(t,e);if(n.length===0)return null;let o=Ih(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=Ah(s,o);if(i.decision==="deny")return H(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 Zj(t,e){try{let r=process.env.CLAUDE_PROJECT_DIR??process.cwd(),n=vk("Read",r),o=Sk(t,n,process.platform==="win32",r);if(o.denied)return H(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${o.matchedPattern}`}],isError:!0})}catch{}return null}function Lk(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===qj){for(e.push(r),n++;n<t.length&&t[n]!==Bj;)r++,n++;n<t.length&&n++}else r++,n++;return e}function Wh(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of Lk(n))o.push(u);if(o.length===0){let u=e.toLowerCase().split(/\s+/).filter(d=>d.length>2),l=t.toLowerCase();for(let d of u){let m=l.indexOf(d);for(;m!==-1;)o.push(m),m=l.indexOf(d,m+1)}}if(o.length===0)return t.slice(0,r)+`
343
344
  \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(`
344
345
 
345
- `)}function Lk(t,e,r,n=80*1024){let o=[],s=0;for(let i of e){if(s>n){o.push(`## ${i}
346
+ `)}function Fk(t,e,r,n=80*1024){let o=[],s=0;for(let i of e){if(s>n){o.push(`## ${i}
346
347
  (output cap reached \u2014 use search(queries: ["${i}"]) for details)
347
- `);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=Uh(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 Fk(t,e){let r=Zn();Ht(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}
348
- Use search(queries: ["..."]) to query this content. Use source: "${n.label}" to scope results.`}]}}function Wo(t,e,r,n=5){let o=t.split(`
349
- `).length,s=Buffer.byteLength(t),i=Zn(),a=i.indexPlainText(t,r),c=i.searchWithFallback(e,n,r),u=i.getDistinctiveTerms(a.sourceId);if(c.length===0){let d=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`No sections matched intent "${e}" in ${o}-line output (${(s/1024).toFixed(1)}KB).`];return u.length>0&&(d.push(""),d.push(`Searchable terms: ${u.join(", ")}`)),d.push(""),d.push("Use search() to explore the indexed content."),d.join(`
348
+ `);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=Wh(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 Zk(t,e){let r=Vn();Gt(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}
349
+ Use search(queries: ["..."]) to query this content. Use source: "${n.label}" to scope results.`}]}}function Jo(t,e,r,n=5){let o=t.split(`
350
+ `).length,s=Buffer.byteLength(t),i=Vn(),a=i.indexPlainText(t,r),c=i.searchWithFallback(e,n,r),u=i.getDistinctiveTerms(a.sourceId);if(c.length===0){let d=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`No sections matched intent "${e}" in ${o}-line output (${(s/1024).toFixed(1)}KB).`];return u.length>0&&(d.push(""),d.push(`Searchable terms: ${u.join(", ")}`)),d.push(""),d.push("Use search() to explore the indexed content."),d.join(`
350
351
  `)}let l=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`${c.length} sections matched "${e}" (${o} lines, ${(s/1024).toFixed(1)}KB):`,""];for(let d of c){let m=d.content.split(`
351
352
  `)[0].slice(0,120);l.push(` - ${d.title}: ${m}`)}return u.length>0&&(l.push(""),l.push(`Searchable terms: ${u.join(", ")}`)),l.push(""),l.push("Use search(queries: [...]) to retrieve full content of any section."),l.join(`
352
- `)}function Hh(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function Ij(t){let e=Hh(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}function Aj(){return Nh||(Nh=Nk(import.meta.url).resolve("turndown")),Nh}function Nj(){return zh||(zh=Nk(import.meta.url).resolve("turndown-plugin-gfm")),zh}function zj(t,e){let r=JSON.stringify(Aj()),n=JSON.stringify(Nj()),o=JSON.stringify(e);return`
353
+ `)}function Gh(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function Wj(t){let e=Gh(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}function Gj(){return Dh||(Dh=zk(import.meta.url).resolve("turndown")),Dh}function Kj(){return Lh||(Lh=zk(import.meta.url).resolve("turndown-plugin-gfm")),Lh}function Jj(t,e){let r=JSON.stringify(Gj()),n=JSON.stringify(Kj()),o=JSON.stringify(e);return`
353
354
  const TurndownService = require(${r});
354
355
  const { gfm } = require(${n});
355
356
  const fs = require('fs');
@@ -395,18 +396,20 @@ async function main() {
395
396
  emit('text', text);
396
397
  }
397
398
  main();
398
- `}function Ak(){return{prepare:()=>({run:()=>{},get:(...t)=>({cnt:0,compact_count:0,minutes:null,rate:0,avg:0,outcome:"exploratory"}),all:()=>[]})}}async function jj(){let t=Eh();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=Ne(Lh(),`context-mode-mcp-ready-${process.ppid}`),r=()=>{_i.cleanupBackgrounded(),sr&&sr.close();try{Gr(Fh)}catch{}try{Gr(e)}catch{}},n=async()=>{r(),process.exit(0)};process.on("exit",r),process.on("SIGINT",()=>{n()}),process.on("SIGTERM",()=>{n()}),$k({onShutdown:()=>n()});let o=new Mc;await We.connect(o);try{jk(e,String(process.pid))}catch{}try{let{detectPlatform:s,getAdapter:i}=await Promise.resolve().then(()=>(Xu(),E_)),a=We.server.getClientVersion(),c=s(a??void 0);Gc=await i(c.platform),a&&console.error(`MCP client: ${a.name} v${a.version} \u2192 ${c.platform}`)}catch{}Sj().then(s=>{s!=="unknown"&&(Jr=s)}),console.error(`Context Mode MCP server v${Kr} running on stdio`),console.error(`Detected runtimes:
399
- ${Ri(Xc)}`),Vn()||(console.error(`
400
- Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}var ir,Kr,Xc,Wc,We,_i,Fh,sr,Gc,ze,Jr,Vc,Ok,xj,bj,Tj,Pj,Rj,Oj,Jc,Yc,Ln,Ah,Cj,Ck,Ik,Nh,zh,Uk=b(()=>{"use strict";JS();ek();yh();bh();hk();kk();Ci();wk();Ek();Tk();fi();Pk();Tn();ir=Fn(gj(import.meta.url)),Kr=(()=>{for(let t of["../package.json","./package.json"]){let e=xr(ir,t);if(gt(e))try{return JSON.parse(zk(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
399
+ `}function Nk(){return{prepare:()=>({run:()=>{},get:(...t)=>({cnt:0,compact_count:0,minutes:null,rate:0,avg:0,outcome:"exploratory"}),all:()=>[]})}}async function Yj(){let t=Rh();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=xe(qh(),`context-mode-mcp-ready-${process.ppid}`),r=()=>{_i.cleanupBackgrounded(),cr&&cr.close();try{Xr(Bh)}catch{}try{Xr(e)}catch{}if(br&&br.pid&&!br.killed)try{br.kill("SIGTERM")}catch{}},n=async()=>{r(),process.exit(0)};process.on("exit",r),process.on("SIGINT",()=>{n()}),process.on("SIGTERM",()=>{n()}),$k({onShutdown:()=>n()});let o=new Mc;await We.connect(o);try{Mk(e,String(process.pid))}catch{}try{let{detectPlatform:s,getAdapter:i}=await Promise.resolve().then(()=>(Qu(),E_)),a=We.server.getClientVersion(),c=s(a??void 0);Kc=await i(c.platform),a&&console.error(`MCP client: ${a.name} v${a.version} \u2192 ${c.platform}`)}catch{}Mj().then(s=>{s!=="unknown"&&(tn=s)}),console.error(`Context Mode MCP server v${en} running on stdio`),console.error(`Detected runtimes:
400
+ ${Ri(Qc)}`),Jn()||(console.error(`
401
+ Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}var ur,en,Qc,Gc,We,_i,Bh,cr,Kc,br,ze,tn,Wc,Ck,zj,jj,Uj,Hj,qj,Bj,Yc,Xc,qn,Mh,Vj,Ik,Ak,Dh,Lh,Hk=v(()=>{"use strict";Gb();Xb();Sh();wh();hk();kk();Ci();wk();Ek();Tk();gi();Rk();wo();ur=Qr(Cj(import.meta.url)),en=(()=>{for(let t of["../package.json","./package.json"]){let e=kr(ur,t);if(ot(e))try{return JSON.parse(jk(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
401
402
  `)});process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
402
- `)});Xc=Bn(),Wc=Oi(Xc),We=new zc({name:"context-mode",version:Kr});We.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});We.server.setRequestHandler(vo,async()=>({prompts:[]}));We.server.setRequestHandler(_o,async()=>({resources:[]}));We.server.setRequestHandler(yo,async()=>({resourceTemplates:[]}));_i=new Lo({runtimes:Xc,projectRoot:process.env.CLAUDE_PROJECT_DIR}),Fh=Ne(Lh(),`cm-fs-preload-${process.pid}.js`);jk(Fh,`(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){}})();
403
- `);sr=null;Gc=null;ze={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()},Jr=null,Vc=0,Ok=0,xj=3,bj=3600*1e3;Tj=Wc.join(", "),Pj=Vn()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",Rj="",Oj="";We.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.${Pj} Available: ${Tj}.
403
+ `)});Qc=Kn(),Gc=Oi(Qc),We=new zc({name:"context-mode",version:en});We.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});We.server.setRequestHandler(bo,async()=>({prompts:[]}));We.server.setRequestHandler(vo,async()=>({resources:[]}));We.server.setRequestHandler(So,async()=>({resourceTemplates:[]}));_i=new Uo({runtimes:Qc,projectRoot:process.env.CLAUDE_PROJECT_DIR}),Bh=xe(qh(),`cm-fs-preload-${process.pid}.js`);Mk(Bh,`(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){}})();
404
+ `);cr=null;Kc=null,br=null;ze={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()},tn=null,Wc=0,Ck=0,zj=3,jj=3600*1e3;Uj=Gc.join(", "),Hj=Jn()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",qj="",Bj="";We.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.${Hj} Available: ${Uj}.
404
405
 
405
406
  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.
406
407
 
407
- THINK IN CODE: When you need to analyze, count, filter, compare, or process data \u2014 write code that does the work and console.log() only the answer. Do NOT read raw data into context to process mentally. Program the analysis, don't compute it in your reasoning. Write robust, pure JavaScript (no npm dependencies). Use only Node.js built-ins (fs, path, child_process). Always wrap in try/catch. Handle null/undefined. Works on both Node.js and Bun.`,inputSchema:U.object({language:U.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:U.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:U.number().optional().default(3e4).describe("Max execution time in ms"),background:U.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:U.string().optional().describe(`What you're looking for in the output. When provided and output is large (>5KB), indexes output into knowledge base and returns section titles + previews \u2014 not full content. Use search(queries: [...]) to retrieve specific sections. Example: 'failing tests', 'HTTP 500 errors'.
408
+ THINK IN CODE: When you need to analyze, count, filter, compare, or process data \u2014 write code that does the work and console.log() only the answer. Do NOT read raw data into context to process mentally. Program the analysis, don't compute it in your reasoning. Write robust, pure JavaScript (no npm dependencies). Use only Node.js built-ins (fs, path, child_process). Always wrap in try/catch. Handle null/undefined. Works on both Node.js and Bun.
409
+
410
+ When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:q.object({language:q.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:q.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:q.coerce.number().optional().default(3e4).describe("Max execution time in ms"),background:q.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:q.string().optional().describe(`What you're looking for in the output. When provided and output is large (>5KB), indexes output into knowledge base and returns section titles + previews \u2014 not full content. Use search(queries: [...]) to retrieve specific sections. Example: 'failing tests', 'HTTP 500 errors'.
408
411
 
409
- 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=Zh(e,"execute");if(s)return s}else{let s=Mk(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
412
+ 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=Vh(e,"execute");if(s)return s}else{let s=Dk(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
410
413
  // FS read instrumentation \u2014 count bytes read via fs.readFileSync/readFile
411
414
  let __cm_fs=0;
412
415
  process.on('exit',()=>{if(__cm_fs>0)try{process.stderr.write('__CM_FS__:'+__cm_fs+'\\n')}catch{}});
@@ -472,11 +475,13 @@ _(process backgrounded after ${r}ms \u2014 still running)_`}]}):l?H("ctx_execute
472
475
  _(timed out after ${r}ms \u2014 partial output shown above)_`}]}):H("ctx_execute",{content:[{type:"text",text:`Execution timed out after ${r}ms
473
476
 
474
477
  stderr:
475
- ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:l,output:d}=Ch({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(d)>Jc?(Ht(Buffer.byteLength(d)),H("ctx_execute",{content:[{type:"text",text:Wo(d,o,l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):Buffer.byteLength(d)>Yc?(Ht(Buffer.byteLength(d)),H("ctx_execute",{content:[{type:"text",text:Wo(d,"errors failures exceptions",l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):H("ctx_execute",{content:[{type:"text",text:d}],isError:l})}let u=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(u)>Jc?(Ht(Buffer.byteLength(u)),H("ctx_execute",{content:[{type:"text",text:Wo(u,o,`execute:${t}`)}]})):Buffer.byteLength(u)>Yc?H("ctx_execute",Fk(u,`execute:${t}`)):H("ctx_execute",{content:[{type:"text",text:u}]})}catch(s){let i=s instanceof Error?s.message:String(s);return H("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});Jc=5e3,Yc=102400;We.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.
478
+ ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:l,output:d}=Nh({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(d)>Yc?(Gt(Buffer.byteLength(d)),H("ctx_execute",{content:[{type:"text",text:Jo(d,o,l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):Buffer.byteLength(d)>Xc?(Gt(Buffer.byteLength(d)),H("ctx_execute",{content:[{type:"text",text:Jo(d,"errors failures exceptions",l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):H("ctx_execute",{content:[{type:"text",text:d}],isError:l})}let u=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(u)>Yc?(Gt(Buffer.byteLength(u)),H("ctx_execute",{content:[{type:"text",text:Jo(u,o,`execute:${t}`)}]})):Buffer.byteLength(u)>Xc?H("ctx_execute",Zk(u,`execute:${t}`)):H("ctx_execute",{content:[{type:"text",text:u}]})}catch(s){let i=s instanceof Error?s.message:String(s);return H("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});Yc=5e3,Xc=102400;We.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.
476
479
 
477
480
  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.
478
481
 
479
- 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.`,inputSchema:U.object({path:U.string().describe("Absolute file path or relative to project root"),language:U.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:U.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:U.number().optional().default(3e4).describe("Max execution time in ms"),intent:U.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=Ej(t,"execute_file");if(s)return s;if(e==="shell"){let i=Zh(r,"execute_file");if(i)return i}else{let i=Mk(r,e,"execute_file");if(i)return i}try{let i=await _i.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return H("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}=Ch({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>Jc?(Ht(Buffer.byteLength(u)),H("ctx_execute_file",{content:[{type:"text",text:Wo(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):Buffer.byteLength(u)>Yc?(Ht(Buffer.byteLength(u)),H("ctx_execute_file",{content:[{type:"text",text:Wo(u,"errors failures exceptions",c?`file:${t}:error`:`file:${t}`)}],isError:c})):H("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)>Jc?(Ht(Buffer.byteLength(a)),H("ctx_execute_file",{content:[{type:"text",text:Wo(a,o,`file:${t}`)}]})):Buffer.byteLength(a)>Yc?H("ctx_execute_file",Fk(a,`file:${t}`)):H("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return H("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});We.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.
482
+ 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.
483
+
484
+ When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:q.object({path:q.string().describe("Absolute file path or relative to project root"),language:q.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:q.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:q.coerce.number().optional().default(3e4).describe("Max execution time in ms"),intent:q.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=Zj(t,"execute_file");if(s)return s;if(e==="shell"){let i=Vh(r,"execute_file");if(i)return i}else{let i=Dk(r,e,"execute_file");if(i)return i}try{let i=await _i.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return H("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}=Nh({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>Yc?(Gt(Buffer.byteLength(u)),H("ctx_execute_file",{content:[{type:"text",text:Jo(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):Buffer.byteLength(u)>Xc?(Gt(Buffer.byteLength(u)),H("ctx_execute_file",{content:[{type:"text",text:Jo(u,"errors failures exceptions",c?`file:${t}:error`:`file:${t}`)}],isError:c})):H("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)>Yc?(Gt(Buffer.byteLength(a)),H("ctx_execute_file",{content:[{type:"text",text:Jo(a,o,`file:${t}`)}]})):Buffer.byteLength(a)>Xc?H("ctx_execute_file",Zk(a,`file:${t}`)):H("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return H("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});We.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.
480
485
 
481
486
  WHEN TO USE:
482
487
  - Documentation from Context7, Skills, or MCP tools (API docs, framework guides, code examples)
@@ -487,102 +492,118 @@ WHEN TO USE:
487
492
  - Any content with code examples you may need to reference precisely
488
493
 
489
494
  After indexing, use 'search' to retrieve specific sections on-demand.
490
- Do NOT use for: log files, test output, CSV, build output \u2014 use 'execute_file' for those.`,inputSchema:U.object({content:U.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:U.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:U.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 H("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)Ht(Buffer.byteLength(t));else if(e)try{let s=await import("fs");Ht(s.readFileSync(e).byteLength)}catch{}let o=Zn().index({content:t,path:e,source:r});return H("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
491
- Use search(queries: ["..."]) to query this content. Use source: "${o.label}" to scope results.`}]})}catch(n){let o=n instanceof Error?n.message:String(n);return H("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});Ln=0,Ah=Date.now(),Cj=6e4,Ck=3,Ik=8;We.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.
495
+ When \`path\` is provided, a content hash is stored for automatic stale detection in search results.
496
+ Do NOT use for: log files, test output, CSV, build output \u2014 use 'execute_file' for those.`,inputSchema:q.object({content:q.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:q.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:q.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 H("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)Gt(Buffer.byteLength(t));else if(e)try{let s=await import("fs");Gt(s.readFileSync(e).byteLength)}catch{}let o=Vn().index({content:t,path:e,source:r});return H("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
497
+ Use search(queries: ["..."]) to query this content. Use source: "${o.label}" to scope results.`}]})}catch(n){let o=n instanceof Error?n.message:String(n);return H("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});qn=0,Mh=Date.now(),Vj=6e4,Ik=3,Ak=8;We.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.
498
+
499
+ TIPS: 2-4 specific terms per query. Use 'source' to scope results.
492
500
 
493
- TIPS: 2-4 specific terms per query. Use 'source' to scope results.`,inputSchema:U.object({queries:U.preprocess(Hh,U.array(U.string()).optional().describe("Array of search queries. Batch ALL questions in one call.")),limit:U.number().optional().default(3).describe("Results per query (default: 3)"),source:U.string().optional().describe("Filter to a specific indexed source (partial match)."),contentType:U.enum(["code","prose"]).optional().describe("Filter results by content type: 'code' or 'prose'.")})},async t=>{try{let e=Zn();if(e.getStats().chunks===0)return H("ctx_search",{content:[{type:"text",text:`Knowledge base is empty \u2014 no content has been indexed yet.
501
+ When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:q.object({queries:q.preprocess(Gh,q.array(q.string()).optional().describe("Array of search queries. Batch ALL questions in one call.")),limit:q.number().optional().default(3).describe("Results per query (default: 3)"),source:q.string().optional().describe("Filter to a specific indexed source (partial match)."),contentType:q.enum(["code","prose"]).optional().describe("Filter results by content type: 'code' or 'prose'.")})},async t=>{try{let e=Vn();if(e.getStats().chunks===0)return H("ctx_search",{content:[{type:"text",text:`Knowledge base is empty \u2014 no content has been indexed yet.
494
502
 
495
503
  ctx_search is a follow-up tool that queries previously indexed content. To gather and index content first, use:
496
504
  \u2022 ctx_batch_execute(commands, queries) \u2014 run commands, auto-index output, and search in one call
497
505
  \u2022 ctx_fetch_and_index(url) \u2014 fetch a URL, index it, then search with ctx_search
498
506
  \u2022 ctx_index(content, source) \u2014 manually index text content
499
507
 
500
- After indexing, ctx_search becomes available for follow-up queries.`}],isError:!0});let r=t,n=[];if(Array.isArray(r.queries)&&r.queries.length>0?n.push(...r.queries):typeof r.query=="string"&&r.query.length>0&&n.push(r.query),n.length===0)return H("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:o=3,source:s,contentType:i}=t,a=Date.now();if(a-Ah>Cj&&(Ln=0,Ah=a),Ln++,Ln>Ik)return H("ctx_search",{content:[{type:"text",text:`BLOCKED: ${Ln} search calls in ${Math.round((a-Ah)/1e3)}s. You're flooding context. STOP making individual search calls. Use batch_execute(commands, queries) for your next research step.`}],isError:!0});let c=Ln>Ck?1:Math.min(o,2),u=40*1024,l=0,d=[];for(let f of n){if(l>u){d.push(`## ${f}
508
+ After indexing, ctx_search becomes available for follow-up queries.`}],isError:!0});let r=t,n=[];if(Array.isArray(r.queries)&&r.queries.length>0?n.push(...r.queries):typeof r.query=="string"&&r.query.length>0&&n.push(r.query),n.length===0)return H("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:o=3,source:s,contentType:i}=t,a=Date.now();if(a-Mh>Vj&&(qn=0,Mh=a),qn++,qn>Ak)return H("ctx_search",{content:[{type:"text",text:`BLOCKED: ${qn} search calls in ${Math.round((a-Mh)/1e3)}s. You're flooding context. STOP making individual search calls. Use batch_execute(commands, queries) for your next research step.`}],isError:!0});let c=qn>Ik?1:Math.min(o,2),u=40*1024,l=0,d=[];for(let h of n){if(l>u){d.push(`## ${h}
501
509
  (output cap reached)
502
- `);continue}let p=e.searchWithFallback(f,c,s,i);if(p.length===0){d.push(`## ${f}
503
- No results found.`);continue}let h=p.map((g,_)=>{let y=`--- [${g.source}] ---`,v=`### ${g.title}`,$=Uh(g.content,f,1500,g.highlighted);return`${y}
504
- ${v}
510
+ `);continue}let p=e.searchWithFallback(h,c,s,i);if(p.length===0){d.push(`## ${h}
511
+ No results found.`);continue}let f=p.map((g,_)=>{let y=`--- [${g.source}] ---`,x=`### ${g.title}`,k=Wh(g.content,h,1500,g.highlighted);return`${y}
512
+ ${x}
505
513
 
506
- ${$}`}).join(`
514
+ ${k}`}).join(`
507
515
 
508
- `);d.push(`## ${f}
516
+ `);d.push(`## ${h}
509
517
 
510
- ${h}`),l+=h.length}let m=d.join(`
518
+ ${f}`),l+=f.length}let m=d.join(`
511
519
 
512
520
  ---
513
521
 
514
- `);if(Ln>=Ck&&(m+=`
522
+ `);if(e.lastRefreshCount>0&&(m=`> Auto-refreshed ${e.lastRefreshCount} stale source${e.lastRefreshCount>1?"s":""} (file changed since indexing).
523
+
524
+ `+m),qn>=Ik&&(m+=`
515
525
 
516
- \u26A0 search call #${Ln}/${Ik} in this window. Results limited to ${c}/query. Batch queries: search(queries: ["q1","q2","q3"]) or use batch_execute.`),m.trim().length===0){let f=e.listSources(),p=f.length>0?`
517
- Indexed sources: ${f.map(h=>`"${h.label}" (${h.chunkCount} sections)`).join(", ")}`:"";return H("ctx_search",{content:[{type:"text",text:`No results found.${p}`}]})}return H("ctx_search",{content:[{type:"text",text:m}]})}catch(e){let r=e instanceof Error?e.message:String(e);return H("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});Nh=null,zh=null;We.registerTool("ctx_fetch_and_index",{title:"Fetch & Index URL",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 search() for deeper lookups.
526
+ \u26A0 search call #${qn}/${Ak} in this window. Results limited to ${c}/query. Batch queries: search(queries: ["q1","q2","q3"]) or use batch_execute.`),m.trim().length===0){let h=e.listSources(),p=h.length>0?`
527
+ Indexed sources: ${h.map(f=>`"${f.label}" (${f.chunkCount} sections)`).join(", ")}`:"";return H("ctx_search",{content:[{type:"text",text:`No results found.${p}`}]})}return H("ctx_search",{content:[{type:"text",text:m}]})}catch(e){let r=e instanceof Error?e.message:String(e);return H("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});Dh=null,Lh=null;We.registerTool("ctx_fetch_and_index",{title:"Fetch & Index URL",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 search() for deeper lookups.
518
528
 
519
529
  Better than WebFetch: preview is immediate, full content is searchable, raw HTML never enters context.
520
530
 
521
- Content-type aware: HTML is converted to markdown, JSON is chunked by key paths, plain text is indexed directly.`,inputSchema:U.object({url:U.string().describe("The URL to fetch and index"),source:U.string().optional().describe("Label for the indexed content (e.g., 'React useEffect docs', 'Supabase Auth API')"),force:U.boolean().optional().describe("Skip cache and re-fetch even if content was recently indexed")})},async({url:t,source:e,force:r})=>{if(!r){let o=Zn(),s=e??t,i=o.getSourceMeta(s);if(i){let a=new Date(i.indexedAt+"Z"),c=Date.now()-a.getTime(),u=1440*60*1e3;if(c<u){let l=Math.floor(c/36e5),d=Math.floor(c/(60*1e3)),m=l>0?`${l}h ago`:d>0?`${d}m ago`:"just now",f=i.chunkCount*1600;return ze.cacheHits++,ze.cacheBytesSaved+=f,H("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${i.label}** \u2014 ${i.chunkCount} sections, indexed ${m} (fresh, TTL: 24h).
531
+ Content-type aware: HTML is converted to markdown, JSON is chunked by key paths, plain text is indexed directly.
532
+
533
+ When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:q.object({url:q.string().describe("The URL to fetch and index"),source:q.string().optional().describe("Label for the indexed content (e.g., 'React useEffect docs', 'Supabase Auth API')"),force:q.boolean().optional().describe("Skip cache and re-fetch even if content was recently indexed")})},async({url:t,source:e,force:r})=>{if(!r){let o=Vn(),s=e??t,i=o.getSourceMeta(s);if(i){let a=new Date(i.indexedAt+"Z"),c=Date.now()-a.getTime(),u=1440*60*1e3;if(c<u){let l=Math.floor(c/36e5),d=Math.floor(c/(60*1e3)),m=l>0?`${l}h ago`:d>0?`${d}m ago`:"just now",h=i.chunkCount*1600;return ze.cacheHits++,ze.cacheBytesSaved+=h,H("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${i.label}** \u2014 ${i.chunkCount} sections, indexed ${m} (fresh, TTL: 24h).
522
534
  To refresh: call ctx_fetch_and_index again with \`force: true\`.
523
535
 
524
536
  You MUST call search() to answer questions about this content \u2014 this cached response contains no content.
525
- Use: search(queries: [...], source: "${i.label}")`}]})}}}let n=Ne(Lh(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let o=zj(t,n),s=await _i.execute({language:"javascript",code:o,timeout:3e4});if(s.exitCode!==0)return H("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${s.stderr||s.stdout}`}],isError:!0});let i=Zn(),a=(s.stdout||"").trim(),c;try{c=zk(n,"utf-8").trim()}catch{return H("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(c.length===0)return H("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});Ht(Buffer.byteLength(c));let u;a==="__CM_CT__:json"?u=i.indexJSON(c,e??t):a==="__CM_CT__:text"?u=i.indexPlainText(c,e??t):u=i.index({content:c,source:e??t});let l=3072,d=c.length>l?c.slice(0,l)+`
537
+ Use: search(queries: [...], source: "${i.label}")`}]})}}}let n=xe(qh(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let o=Jj(t,n),s=await _i.execute({language:"javascript",code:o,timeout:3e4});if(s.exitCode!==0)return H("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${s.stderr||s.stdout}`}],isError:!0});let i=Vn(),a=(s.stdout||"").trim(),c;try{c=jk(n,"utf-8").trim()}catch{return H("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(c.length===0)return H("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});Gt(Buffer.byteLength(c));let u;a==="__CM_CT__:json"?u=i.indexJSON(c,e??t):a==="__CM_CT__:text"?u=i.indexPlainText(c,e??t):u=i.index({content:c,source:e??t});let l=3072,d=c.length>l?c.slice(0,l)+`
526
538
 
527
- \u2026[truncated \u2014 use search() for full content]`:c,m=(Buffer.byteLength(c)/1024).toFixed(1),f=[`Fetched and indexed **${u.totalChunks} sections** (${m}KB) from: ${u.label}`,`Full content indexed in sandbox \u2014 use search(queries: [...], source: "${u.label}") for specific lookups.`,"","---","",d].join(`
528
- `);return H("ctx_fetch_and_index",{content:[{type:"text",text:f}]})}catch(o){let s=o instanceof Error?o.message:String(o);return H("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${s}`}],isError:!0})}finally{try{fj(n)}catch{}}});We.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.
539
+ \u2026[truncated \u2014 use search() for full content]`:c,m=(Buffer.byteLength(c)/1024).toFixed(1),h=[`Fetched and indexed **${u.totalChunks} sections** (${m}KB) from: ${u.label}`,`Full content indexed in sandbox \u2014 use search(queries: [...], source: "${u.label}") for specific lookups.`,"","---","",d].join(`
540
+ `);return H("ctx_fetch_and_index",{content:[{type:"text",text:h}]})}catch(o){let s=o instanceof Error?o.message:String(o);return H("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${s}`}],isError:!0})}finally{try{Fh(n)}catch{}}});We.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.
529
541
 
530
542
  THIS IS THE PRIMARY TOOL. Use this instead of multiple execute() calls.
531
543
 
532
544
  One batch_execute call replaces 30+ execute calls + 10+ search calls.
533
545
  Provide all commands to run and all queries to search \u2014 everything happens in one round trip.
534
546
 
535
- THINK IN CODE: When commands produce data you need to analyze, add processing commands that filter and summarize. Don't pull raw output into context \u2014 let the sandbox do the work.`,inputSchema:U.object({commands:U.preprocess(Ij,U.array(U.object({label:U.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:U.string().describe("Shell command to execute")})).min(1).describe("Commands to execute as a batch. Each runs sequentially, output is labeled with the section header.")),queries:U.preprocess(Hh,U.array(U.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:U.number().optional().default(6e4).describe("Max execution time in ms (default: 60s)")})},async({commands:t,queries:e,timeout:r})=>{for(let n of t){let o=Zh(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1,i=`NODE_OPTIONS="--require ${Fh}" `;for(let v of t){let $=Date.now()-o,T=r-$;if(T<=0){n.push(`# ${v.label}
547
+ THINK IN CODE: When commands produce data you need to analyze, add processing commands that filter and summarize. Don't pull raw output into context \u2014 let the sandbox do the work.
548
+
549
+ When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:q.object({commands:q.preprocess(Wj,q.array(q.object({label:q.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:q.string().describe("Shell command to execute")})).min(1).describe("Commands to execute as a batch. Each runs sequentially, output is labeled with the section header.")),queries:q.preprocess(Gh,q.array(q.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:q.coerce.number().optional().default(6e4).describe("Max execution time in ms (default: 60s)")})},async({commands:t,queries:e,timeout:r})=>{for(let n of t){let o=Vh(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1,i=`NODE_OPTIONS="--require ${Bh}" `;for(let x of t){let k=Date.now()-o,T=r-k;if(T<=0){n.push(`# ${x.label}
536
550
 
537
551
  (skipped \u2014 batch timeout exceeded)
538
- `),s=!0;continue}let J=await _i.execute({language:"shell",code:`${i}${v.command} 2>&1`,timeout:T}),B=J.stdout||"(no output)",N=B.matchAll(/__CM_FS__:(\d+)/g),Pe=0;for(let de of N)Pe+=parseInt(de[1]);if(Pe>0&&(ze.bytesSandboxed+=Pe,B=B.replace(/__CM_FS__:\d+\n?/g,"")),n.push(`# ${v.label}
552
+ `),s=!0;continue}let Z=await _i.execute({language:"shell",code:`${i}${x.command} 2>&1`,timeout:T}),V=Z.stdout||"(no output)",N=V.matchAll(/__CM_FS__:(\d+)/g),Re=0;for(let de of N)Re+=parseInt(de[1]);if(Re>0&&(ze.bytesSandboxed+=Re,V=V.replace(/__CM_FS__:\d+\n?/g,"")),n.push(`# ${x.label}
539
553
 
540
- ${B}
541
- `),J.timedOut){s=!0;let de=t.indexOf(v);for(let pt=de+1;pt<t.length;pt++)n.push(`# ${t[pt].label}
554
+ ${V}
555
+ `),Z.timedOut){s=!0;let de=t.indexOf(x);for(let ft=de+1;ft<t.length;ft++)n.push(`# ${t[ft].label}
542
556
 
543
557
  (skipped \u2014 batch timeout exceeded)
544
558
  `);break}}let a=n.join(`
545
559
  `),c=Buffer.byteLength(a),u=a.split(`
546
- `).length;if(s&&n.length===0)return H("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});Ht(c);let l=Zn(),d=`batch:${t.map(v=>v.label).join(",").slice(0,80)}`,m=l.index({content:a,source:d}),f=l.getChunksBySource(m.sourceId),p=["## Indexed Sections",""],h=[];for(let v of f){let $=Buffer.byteLength(v.content);p.push(`- ${v.title} (${($/1024).toFixed(1)}KB)`),h.push(v.title)}let g=Lk(l,e,d),_=l.getDistinctiveTerms?l.getDistinctiveTerms(m.sourceId):[],y=[`Executed ${t.length} commands (${u} lines, ${(c/1024).toFixed(1)}KB). Indexed ${m.totalChunks} sections. Searched ${e.length} queries.`,"",...p,"",...g,_.length>0?`
560
+ `).length;if(s&&n.length===0)return H("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});Gt(c);let l=Vn(),d=`batch:${t.map(x=>x.label).join(",").slice(0,80)}`,m=l.index({content:a,source:d}),h=l.getChunksBySource(m.sourceId),p=["## Indexed Sections",""],f=[];for(let x of h){let k=Buffer.byteLength(x.content);p.push(`- ${x.title} (${(k/1024).toFixed(1)}KB)`),f.push(x.title)}let g=Fk(l,e,d),_=l.getDistinctiveTerms?l.getDistinctiveTerms(m.sourceId):[],y=[`Executed ${t.length} commands (${u} lines, ${(c/1024).toFixed(1)}KB). Indexed ${m.totalChunks} sections. Searched ${e.length} queries.`,"",...p,"",...g,_.length>0?`
547
561
  Searchable terms for follow-up: ${_.join(", ")}`:""].join(`
548
- `);return H("ctx_batch_execute",{content:[{type:"text",text:y}]})}catch(n){let o=n instanceof Error?n.message:String(n);return H("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});We.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:U.object({})},async()=>{let t;try{let e=Kc(),r=Ih(),n=Ne(yi(),`${e}${r}.db`);if(gt(n)){let o=Dn(),s=new o(n,{readonly:!0});try{let a=new Vo(s).queryAll(ze);t=Bc(a,Kr,Jr)}finally{s.close()}}else{let s=new Vo(Ak()).queryAll(ze);t=Bc(s,Kr,Jr)}}catch{let r=new Vo(Ak()).queryAll(ze);t=Bc(r,Kr,Jr)}return H("ctx_stats",{content:[{type:"text",text:t}]})});We.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Runs all checks server-side and returns results as a markdown checklist. No CLI execution needed.",inputSchema:U.object({})},async()=>{let t=["## context-mode doctor",""],e=gt(xr(ir,"package.json"))?ir:Fn(ir),r=11,n=(Wc.length/r*100).toFixed(0);t.push(`- [x] Runtimes: ${Wc.length}/${r} (${n}%) \u2014 ${Wc.join(", ")}`),Vn()?t.push("- [x] Performance: FAST (Bun)"):t.push("- [-] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");{let s=new Lo({runtimes:Xc});try{let i=await s.execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(i.exitCode===0&&i.stdout.trim()==="ok")t.push("- [x] Server test: PASS");else{let a=i.stderr?.trim()?` (${i.stderr.trim().slice(0,200)})`:"";t.push(`- [ ] Server test: FAIL \u2014 exit ${i.exitCode}${a}`)}}catch(i){t.push(`- [ ] Server test: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{s.cleanupBackgrounded()}}{let s;try{let i=Dn();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("- [x] FTS5 / SQLite: PASS \u2014 native module works"):t.push("- [ ] FTS5 / SQLite: FAIL \u2014 unexpected result")}catch(i){t.push(`- [ ] FTS5 / SQLite: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{try{s?.close()}catch{}}}let o=xr(e,"hooks","pretooluse.mjs");return gt(o)?t.push(`- [x] Hook script: PASS \u2014 ${o}`):t.push(`- [ ] Hook script: FAIL \u2014 not found at ${o}`),t.push(`- [x] Version: v${Kr}`),H("ctx_doctor",{content:[{type:"text",text:t.join(`
549
- `)}]})});We.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:U.object({})},async()=>{let t=gt(xr(ir,"package.json"))?ir:Fn(ir),e=xr(t,"cli.bundle.mjs"),r=xr(t,"build","cli.js"),n;if(gt(e))n=`node "${e}" upgrade`;else if(gt(r))n=`node "${r}" upgrade`;else{let s="https://github.com/mksglu/context-mode.git",i=["build","hooks","skills","scripts",".claude-plugin"],a=["start.mjs","server.bundle.mjs","cli.bundle.mjs","package.json"],c=['import{execFileSync}from"node:child_process";','import{cpSync,rmSync,existsSync,mkdtempSync}from"node:fs";','import{join}from"node:path";','import{tmpdir}from"node:os";',`const P=${JSON.stringify(t)};`,'const T=mkdtempSync(join(tmpdir(),"ctx-upgrade-"));',"try{",'console.log("- [x] Starting inline upgrade (no CLI found)");',`execFileSync("git",["clone","--depth","1","${s}",T],{stdio:"inherit"});`,'console.log("- [x] Cloned latest source");','execFileSync("npm",["install"],{cwd:T,stdio:"inherit"});','execFileSync("npm",["run","build"],{cwd:T,stdio:"inherit"});','console.log("- [x] Built from source");',...i.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{recursive:true,force:true});`),...a.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{force:true});`),'console.log("- [x] Copied build artifacts");','execFileSync("npm",["install","--production"],{cwd:P,stdio:"inherit"});','console.log("- [x] Installed production dependencies");','console.log("## context-mode upgrade complete");',"}catch(e){",'console.error("- [ ] Upgrade failed:",e.message);',"process.exit(1);","}finally{","try{rmSync(T,{recursive:true,force:true})}catch{}","}"].join(`
550
- `),u=xr(t,".ctx-upgrade-inline.mjs"),{writeFileSync:l}=await import("node:fs");l(u,c),n=`node "${u}"`}let o=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",n,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for success, `[ ]` for failure","- Example format:"," ```"," ## context-mode upgrade"," - [x] Pulled latest from GitHub"," - [x] Built and installed v0.9.24"," - [x] npm global updated"," - [x] Hooks configured"," - [x] Doctor: all checks PASS"," ```","- Tell the user to restart their session to pick up the new version."].join(`
551
- `);return H("ctx_upgrade",{content:[{type:"text",text:o}]})});We.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:U.object({confirm:U.boolean().describe("Must be true to confirm the destructive operation.")})},async({confirm:t})=>{if(!t)return H("ctx_purge",{content:[{type:"text",text:"Purge cancelled. Pass confirm: true to proceed."}]});let e=[];if(sr){let r=!1;try{sr.cleanup(),r=!0}catch{}sr=null,r&&e.push("knowledge base (FTS5)")}else{let r=jh(),n=!1;for(let o of["","-wal","-shm"])try{Gr(r+o),n=!0}catch{}n&&e.push("knowledge base (FTS5)")}try{let r=Ne(Dh(),".context-mode","content",`${Kc()}.db`);for(let n of["","-wal","-shm"])try{Gr(r+n)}catch{}}catch{}try{let r=Kc(),n=Ih(),o=yi(),s=Ne(o,`${r}${n}.db`),i=Ne(o,`${r}${n}-events.md`),a=Ne(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{}return ze.calls={},ze.bytesReturned={},ze.bytesIndexed=0,ze.bytesSandboxed=0,ze.cacheHits=0,ze.cacheBytesSaved=0,ze.sessionStart=Date.now(),e.push("session stats"),H("ctx_purge",{content:[{type:"text",text:`Purged: ${e.join(", ")}. All session data for this project has been permanently deleted.`}]})});We.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:U.object({port:U.number().optional().describe("Port to serve on (default: 4747)")})},async({port:t})=>{let e=t||4747,r=gt(xr(ir,"package.json"))?ir:Fn(ir),n=xr(r,"insight"),o=yi(),s=Ne(Fn(o),"insight-cache");if(!gt(Ne(n,"server.mjs")))return H("ctx_insight",{content:[{type:"text",text:"Error: Insight source not found in plugin. Try upgrading context-mode."}]});try{let i=[];Mh(s,{recursive:!0});let a=Rk(Ne(n,"server.mjs")).mtimeMs,c=gt(Ne(s,"server.mjs"))?Rk(Ne(s,"server.mjs")).mtimeMs:0;a>c&&(i.push("Copying source files..."),hj(n,s,{recursive:!0,force:!0}),i.push("Source files copied.")),gt(Ne(s,"node_modules"))||(i.push("Installing dependencies (first run, ~30s)..."),gi("npm install --production=false",{cwd:s,stdio:"pipe",timeout:12e4}),i.push("Dependencies installed.")),i.push("Building dashboard..."),gi("npx vite build",{cwd:s,stdio:"pipe",timeout:3e4}),i.push("Build complete.");let{spawn:l}=await import("node:child_process"),d=l("node",[Ne(s,"server.mjs")],{cwd:s,env:{...process.env,PORT:String(e)},detached:!0,stdio:"ignore"});d.unref(),await new Promise(p=>setTimeout(p,1500));let m=`http://localhost:${e}`,f=process.platform;try{f==="darwin"?gi(`open "${m}"`,{stdio:"pipe"}):f==="win32"?gi(`start "" "${m}"`,{stdio:"pipe"}):gi(`xdg-open "${m}" 2>/dev/null || sensible-browser "${m}" 2>/dev/null`,{stdio:"pipe"})}catch{}return i.push(`Dashboard running at ${m}`),H("ctx_insight",{content:[{type:"text",text:i.map(p=>`- ${p}`).join(`
562
+ `);return H("ctx_batch_execute",{content:[{type:"text",text:y}]})}catch(n){let o=n instanceof Error?n.message:String(n);return H("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});We.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:q.object({})},async()=>{let t;try{let e=Jc(),r=zh(),n=xe(Bn(),`${e}${r}.db`);if(ot(n)){let o=Un(),s=new o(n,{readonly:!0});try{let a=new Ko(s).queryAll(ze);t=Vc(a,en,tn)}finally{s.close()}}else{let s=new Ko(Nk()).queryAll(ze);t=Vc(s,en,tn)}}catch{let r=new Ko(Nk()).queryAll(ze);t=Vc(r,en,tn)}return H("ctx_stats",{content:[{type:"text",text:t}]})});We.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Runs all checks server-side and returns results as a markdown checklist. No CLI execution needed.",inputSchema:q.object({})},async()=>{let t=["## context-mode doctor",""],e=ot(kr(ur,"package.json"))?ur:Qr(ur),r=11,n=(Gc.length/r*100).toFixed(0);t.push(`- [x] Runtimes: ${Gc.length}/${r} (${n}%) \u2014 ${Gc.join(", ")}`),Jn()?t.push("- [x] Performance: FAST (Bun)"):t.push("- [-] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");{let s=new Uo({runtimes:Qc});try{let i=await s.execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(i.exitCode===0&&i.stdout.trim()==="ok")t.push("- [x] Server test: PASS");else{let a=i.stderr?.trim()?` (${i.stderr.trim().slice(0,200)})`:"";t.push(`- [ ] Server test: FAIL \u2014 exit ${i.exitCode}${a}`)}}catch(i){t.push(`- [ ] Server test: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{s.cleanupBackgrounded()}}{let s;try{let i=Un();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("- [x] FTS5 / SQLite: PASS \u2014 native module works"):t.push("- [ ] FTS5 / SQLite: FAIL \u2014 unexpected result")}catch(i){t.push(`- [ ] FTS5 / SQLite: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{try{s?.close()}catch{}}}let o=kr(e,"hooks","pretooluse.mjs");return ot(o)?t.push(`- [x] Hook script: PASS \u2014 ${o}`):t.push(`- [ ] Hook script: FAIL \u2014 not found at ${o}`),t.push(`- [x] Version: v${en}`),H("ctx_doctor",{content:[{type:"text",text:t.join(`
563
+ `)}]})});We.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:q.object({})},async()=>{let t=ot(kr(ur,"package.json"))?ur:Qr(ur),e=kr(t,"cli.bundle.mjs"),r=kr(t,"build","cli.js"),n;if(ot(e))n=`node "${e}" upgrade`;else if(ot(r))n=`node "${r}" upgrade`;else{let s="https://github.com/mksglu/context-mode.git",i=["build","hooks","skills","scripts",".claude-plugin"],a=["start.mjs","server.bundle.mjs","cli.bundle.mjs","package.json"],c=['import{execFileSync}from"node:child_process";','import{cpSync,rmSync,existsSync,mkdtempSync}from"node:fs";','import{join}from"node:path";','import{tmpdir}from"node:os";',`const P=${JSON.stringify(t)};`,'const T=mkdtempSync(join(tmpdir(),"ctx-upgrade-"));',"try{",'console.log("- [x] Starting inline upgrade (no CLI found)");',`execFileSync("git",["clone","--depth","1","${s}",T],{stdio:"inherit"});`,'console.log("- [x] Cloned latest source");','execFileSync("npm",["install"],{cwd:T,stdio:"inherit"});','execFileSync("npm",["run","build"],{cwd:T,stdio:"inherit"});','console.log("- [x] Built from source");',...i.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{recursive:true,force:true});`),...a.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{force:true});`),'console.log("- [x] Copied build artifacts");','execFileSync("npm",["install","--production"],{cwd:P,stdio:"inherit"});','console.log("- [x] Installed production dependencies");','console.log("## context-mode upgrade complete");',"}catch(e){",'console.error("- [ ] Upgrade failed:",e.message);',"process.exit(1);","}finally{","try{rmSync(T,{recursive:true,force:true})}catch{}","}"].join(`
564
+ `),u=kr(t,".ctx-upgrade-inline.mjs"),{writeFileSync:l}=await import("node:fs");l(u,c),n=`node "${u}"`}let o=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",n,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for success, `[ ]` for failure","- Example format:"," ```"," ## context-mode upgrade"," - [x] Pulled latest from GitHub"," - [x] Built and installed v0.9.24"," - [x] npm global updated"," - [x] Hooks configured"," - [x] Doctor: all checks PASS"," ```","- Tell the user to restart their session to pick up the new version."].join(`
565
+ `);return H("ctx_upgrade",{content:[{type:"text",text:o}]})});We.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:q.object({confirm:q.boolean().describe("Must be true to confirm the destructive operation.")})},async({confirm:t})=>{if(!t)return H("ctx_purge",{content:[{type:"text",text:"Purge cancelled. Pass confirm: true to proceed."}]});let e=[];if(cr){let r=!1;try{cr.cleanup(),r=!0}catch{}cr=null,r&&e.push("knowledge base (FTS5)")}else{let r=Zh(),n=!1;for(let o of["","-wal","-shm"])try{Xr(r+o),n=!0}catch{}n&&e.push("knowledge base (FTS5)")}try{let r=xe(Hh(),".context-mode","content",`${Jc()}.db`);for(let n of["","-wal","-shm"])try{Xr(r+n)}catch{}}catch{}try{let r=Jc(),n=zh(),o=Bn(),s=xe(o,`${r}${n}.db`),i=xe(o,`${r}${n}-events.md`),a=xe(o,`${r}${n}.cleanup`),c=!1;for(let l of["","-wal","-shm"])try{Xr(s+l),c=!0}catch{}c&&e.push("session events DB");let u=!1;try{Xr(i),u=!0}catch{}u&&e.push("session events markdown");try{Xr(a)}catch{}}catch{}return ze.calls={},ze.bytesReturned={},ze.bytesIndexed=0,ze.bytesSandboxed=0,ze.cacheHits=0,ze.cacheBytesSaved=0,ze.sessionStart=Date.now(),e.push("session stats"),H("ctx_purge",{content:[{type:"text",text:`Purged: ${e.join(", ")}. All session data for this project has been permanently deleted.`}]})});We.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:q.object({port:q.coerce.number().optional().describe("Port to serve on (default: 4747)")})},async({port:t})=>{let e=t||4747,r=ot(kr(ur,"package.json"))?ur:Qr(ur),n=kr(r,"insight"),o=Bn(),s=xe(Qr(o),"insight-cache");if(!ot(xe(n,"server.mjs")))return H("ctx_insight",{content:[{type:"text",text:"Error: Insight source not found in plugin. Try upgrading context-mode."}]});try{let i=[];Uh(s,{recursive:!0});let a=Ok(xe(n,"server.mjs")).mtimeMs,c=ot(xe(s,"server.mjs"))?Ok(xe(s,"server.mjs")).mtimeMs:0;if(a>c&&(i.push("Copying source files..."),Oj(n,s,{recursive:!0,force:!0}),i.push("Source files copied.")),!ot(xe(s,"node_modules"))){i.push("Installing dependencies (first run, ~30s)...");try{Yr("npm install --production=false",{cwd:s,stdio:"pipe",timeout:3e5})}catch{try{Fh(xe(s,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!ot(xe(s,"node_modules","vite"))||!ot(xe(s,"node_modules","better-sqlite3")))throw Fh(xe(s,"node_modules"),{recursive:!0,force:!0}),new Error("npm install incomplete \u2014 please retry");i.push("Dependencies installed.")}i.push("Building dashboard..."),Yr("npx vite build",{cwd:s,stdio:"pipe",timeout:6e4}),i.push("Build complete.");try{let{request:p}=await import("node:http");await new Promise((_,y)=>{let x=p(`http://127.0.0.1:${e}/api/overview`,{timeout:2e3},k=>{k.resume(),_()});x.on("error",()=>y()),x.on("timeout",()=>{x.destroy(),y()}),x.end()}),i.push("Dashboard already running.");let f=`http://localhost:${e}`,g=process.platform;try{g==="darwin"?Yr(`open "${f}"`,{stdio:"pipe"}):g==="win32"?Yr(`start "" "${f}"`,{stdio:"pipe"}):Yr(`xdg-open "${f}" 2>/dev/null || sensible-browser "${f}" 2>/dev/null`,{stdio:"pipe"})}catch{}return H("ctx_insight",{content:[{type:"text",text:`Dashboard already running at http://localhost:${e}`}]})}catch{}if(br&&br.pid&&!br.killed)try{br.kill("SIGTERM")}catch{}let{spawn:l}=await import("node:child_process"),d=l("node",[xe(s,"server.mjs")],{cwd:s,env:{...process.env,PORT:String(e),INSIGHT_SESSION_DIR:Bn(),INSIGHT_CONTENT_DIR:xe(Qr(Bn()),"content"),INSIGHT_PARENT_PID:String(process.pid)},detached:!0,stdio:"ignore"});d.on("error",()=>{}),d.unref(),br=d,await new Promise(p=>setTimeout(p,1500));try{let{request:p}=await import("node:http");await new Promise((f,g)=>{let _=p(`http://127.0.0.1:${e}/api/overview`,{timeout:3e3},y=>{f(),y.resume()});_.on("error",g),_.on("timeout",()=>{_.destroy(),g(new Error("timeout"))}),_.end()})}catch{return H("ctx_insight",{content:[{type:"text",text:`Port ${e} appears to be in use. Either a previous dashboard is still running, or another service is using this port.
566
+
567
+ To fix:
568
+ - Kill the existing process: ${process.platform==="win32"?`netstat -ano | findstr :${e}`:`lsof -ti:${e} | xargs kill`}
569
+ - Or use a different port: ctx_insight({ port: ${e+1} })`}]})}let m=`http://localhost:${e}`,h=process.platform;try{h==="darwin"?Yr(`open "${m}"`,{stdio:"pipe"}):h==="win32"?Yr(`start "" "${m}"`,{stdio:"pipe"}):Yr(`xdg-open "${m}" 2>/dev/null || sensible-browser "${m}" 2>/dev/null`,{stdio:"pipe"})}catch{}return i.push(`Dashboard running at ${m}`),H("ctx_insight",{content:[{type:"text",text:i.map(p=>`- ${p}`).join(`
552
570
  `)+`
553
571
 
554
572
  Open: ${m}
555
- PID: ${d.pid} \xB7 Stop: kill ${d.pid}`}]})}catch(i){let a=i instanceof Error?i.message:String(i);return H("ctx_insight",{content:[{type:"text",text:`Insight setup failed: ${a}`}]})}});jj().catch(t=>{console.error("Fatal:",t),process.exit(1)})});import{stdout as pw,stdin as mw}from"node:process";import*as kr from"node:readline";var qh=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,Bh=t=>t===12288||t>=65281&&t<=65376||t>=65504&&t<=65510,Vh=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 nu=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,Si=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,ki=/\t{1,1000}/y,ou=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"),wi=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,tw=new RegExp("\\p{M}+","gu"),rw={limit:1/0,ellipsis:""},Wh=(t,e={},r={})=>{let n=e.limit??1/0,o=e.ellipsis??"",s=e?.ellipsisWidth??(o?Wh(o,rw,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,m=r.regularWidth??1,f=r.wideWidth??2,p=0,h=0,g=t.length,_=0,y=!1,v=g,$=Math.max(0,n-s),T=0,J=0,B=0,N=0;e:for(;;){if(J>T||h>=g&&h>p){let Pe=t.slice(T,J)||t.slice(p,h);_=0;for(let de of Pe.replaceAll(tw,"")){let pt=de.codePointAt(0)||0;if(Bh(pt)?N=d:Vh(pt)?N=f:u!==m&&qh(pt)?N=u:N=m,B+N>$&&(v=Math.min(v,Math.max(T,p)+_)),B+N>n){y=!0;break e}_+=de.length,B+=N}T=J=0}if(h>=g)break;if(wi.lastIndex=h,wi.test(t)){if(_=wi.lastIndex-h,N=_*m,B+N>$&&(v=Math.min(v,h+Math.floor(($-B)/m))),B+N>n){y=!0;break}B+=N,T=p,J=h,h=p=wi.lastIndex;continue}if(nu.lastIndex=h,nu.test(t)){if(B+i>$&&(v=Math.min(v,h)),B+i>n){y=!0;break}B+=i,T=p,J=h,h=p=nu.lastIndex;continue}if(Si.lastIndex=h,Si.test(t)){if(_=Si.lastIndex-h,N=_*a,B+N>$&&(v=Math.min(v,h+Math.floor(($-B)/a))),B+N>n){y=!0;break}B+=N,T=p,J=h,h=p=Si.lastIndex;continue}if(ki.lastIndex=h,ki.test(t)){if(_=ki.lastIndex-h,N=_*c,B+N>$&&(v=Math.min(v,h+Math.floor(($-B)/c))),B+N>n){y=!0;break}B+=N,T=p,J=h,h=p=ki.lastIndex;continue}if(ou.lastIndex=h,ou.test(t)){if(B+l>$&&(v=Math.min(v,h)),B+l>n){y=!0;break}B+=l,T=p,J=h,h=p=ou.lastIndex;continue}h+=1}return{width:y?$:B,index:y?v:g,truncated:y,ellipsed:y&&n>=s}},Gh=Wh;var nw={limit:1/0,ellipsis:"",ellipsisWidth:0},ow=(t,e={})=>Gh(t,nw,e).width,Xe=ow;var $i="\x1B",Qh="\x9B",sw=39,iu="\x07",eg="[",iw="]",tg="m",au=`${iw}8;;`,Kh=new RegExp(`(?:\\${eg}(?<code>\\d+)m|\\${au}(?<uri>.*)${iu})`,"y"),Jh=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},Yh=t=>`${$i}${eg}${t}${tg}`,Xh=t=>`${$i}${au}${t}${iu}`,su=(t,e,r)=>{let n=e[Symbol.iterator](),o=!1,s=!1,i=t.at(-1),a=i===void 0?0:Xe(i),c=n.next(),u=n.next(),l=0;for(;!c.done;){let d=c.value,m=Xe(d);a+m<=r?t[t.length-1]+=d:(t.push(d),a=0),(d===$i||d===Qh)&&(o=!0,s=e.startsWith(au,l+1)),o?s?d===iu&&(o=!1,s=!1):d===tg&&(o=!1):(a+=m,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())},aw=t=>{let e=t.split(" "),r=e.length;for(;r&&!Xe(e[r-1]);)r--;return r===e.length?t:e.slice(0,r).join(" ")+e.slice(r).join("")},cw=(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 m=i[d];if(r.trim!==!1){let p=a.at(-1)??"",h=p.trimStart();p.length!==h.length&&(a[a.length-1]=h,c=Xe(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=Xe(m);if(r.hard&&f>e){let p=e-c,h=1+Math.floor((f-p-1)/e);Math.floor((f-1)/e)<h&&a.push(""),su(a,m,e),c=Xe(a.at(-1)??"");continue}if(c+f>e&&c&&f){if(r.wordWrap===!1&&c<e){su(a,m,e),c=Xe(a.at(-1)??"");continue}a.push(""),c=0}if(c+f>e&&r.wordWrap===!1){su(a,m,e),c=Xe(a.at(-1)??"");continue}a[a.length-1]+=m,c+=f}r.trim!==!1&&(a=a.map(d=>aw(d)));let u=a.join(`
556
- `),l=!1;for(let d=0;d<u.length;d++){let m=u[d];if(n+=m,!l)l=m>="\uD800"&&m<="\uDBFF";else continue;if(m===$i||m===Qh){Kh.lastIndex=d+1;let p=Kh.exec(u)?.groups;if(p?.code!==void 0){let h=Number.parseFloat(p.code);o=h===sw?void 0:h}else p?.uri!==void 0&&(s=p.uri.length===0?void 0:p.uri)}if(u[d+1]===`
557
- `){s&&(n+=Xh(""));let f=o?Jh(o):void 0;o&&f&&(n+=Yh(f))}else m===`
558
- `&&(o&&Jh(o)&&(n+=Yh(o)),s&&(n+=Xh(s)))}return n},uw=/\r?\n/;function qn(t,e,r){return String(t).normalize().split(uw).map(n=>cw(n,e,r)).join(`
559
- `)}var Ko=Go(uu(),1);import{ReadStream as ng}from"node:tty";var fw=["up","down","left","right","space","enter","cancel"],hw=["January","February","March","April","May","June","July","August","September","October","November","December"],qt={actions:new Set(fw),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:[...hw],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 og(t,e){if(typeof t=="string")return qt.aliases.get(t)===e;for(let r of t)if(r!==void 0&&og(r,e))return!0;return!1}var gw=globalThis.process.platform.startsWith("win");function sg({input:t=mw,output:e=pw,overwrite:r=!0,hideCursor:n=!0}={}){let o=kr.createInterface({input:t,output:e,prompt:"",tabSize:1});kr.emitKeypressEvents(t,o),t instanceof ng&&t.isTTY&&t.setRawMode(!0);let s=(i,{name:a,sequence:c})=>{let u=String(i);if(og([u,a,c],"cancel")){n&&e.write(Ko.cursor.show),process.exit(0);return}if(!r)return;kr.moveCursor(e,a==="return"?0:-1,a==="return"?-1:0,()=>{kr.clearLine(e,1,()=>{t.once("keypress",s)})})};return n&&e.write(Ko.cursor.hide),t.once("keypress",s),()=>{t.off("keypress",s),n&&e.write(Ko.cursor.show),t instanceof ng&&t.isTTY&&!gw&&t.setRawMode(!1),o.terminal=!1,o.close()}}var lu=t=>"columns"in t&&typeof t.columns=="number"?t.columns:80;import{styleText as Se,stripVTControlCharacters as PM}from"node:util";import yt from"node:process";var Jo=Go(uu(),1);function yw(){return yt.platform!=="win32"?yt.env.TERM!=="linux":!!yt.env.CI||!!yt.env.WT_SESSION||!!yt.env.TERMINUS_SUBLIME||yt.env.ConEmuTask==="{cmd::Cmder}"||yt.env.TERM_PROGRAM==="Terminus-Sublime"||yt.env.TERM_PROGRAM==="vscode"||yt.env.TERM==="xterm-256color"||yt.env.TERM==="alacritty"||yt.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var du=yw(),vw=()=>process.env.CI==="true";var ce=(t,e)=>du?t:e,IM=ce("\u25C6","*"),xw=ce("\u25A0","x"),bw=ce("\u25B2","x"),pu=ce("\u25C7","o"),Sw=ce("\u250C","T"),wr=ce("\u2502","|"),kw=ce("\u2514","\u2014"),AM=ce("\u2510","T"),NM=ce("\u2518","\u2014"),zM=ce("\u25CF",">"),jM=ce("\u25CB"," "),MM=ce("\u25FB","[\u2022]"),DM=ce("\u25FC","[+]"),LM=ce("\u25FB","[ ]"),FM=ce("\u25AA","\u2022"),ig=ce("\u2500","-"),ww=ce("\u256E","+"),$w=ce("\u251C","+"),Ew=ce("\u256F","+"),Tw=ce("\u2570","+"),ZM=ce("\u256D","+"),Pw=ce("\u25CF","\u2022"),Rw=ce("\u25C6","*"),Ow=ce("\u25B2","!"),Cw=ce("\u25A0","x");var I={message:(t=[],{symbol:e=Se("gray",wr),secondarySymbol:r=Se("gray",wr),output:n=process.stdout,spacing:o=1,withGuide:s}={})=>{let i=[],a=s??qt.withGuide,c=a?r:"",u=a?`${e} `:"",l=a?`${r} `:"";for(let m=0;m<o;m++)i.push(c);let d=Array.isArray(t)?t:t.split(`
560
- `);if(d.length>0){let[m,...f]=d;m.length>0?i.push(`${u}${m}`):i.push(a?e:"");for(let p of f)p.length>0?i.push(`${l}${p}`):i.push(a?r:"")}n.write(`${i.join(`
573
+ PID: ${d.pid} \xB7 Stop: ${process.platform==="win32"?`taskkill /PID ${d.pid} /F`:`kill ${d.pid}`}`}]})}catch(i){let a=i instanceof Error?i.message:String(i);return H("ctx_insight",{content:[{type:"text",text:`Insight setup failed: ${a}`}]})}});Yj().catch(t=>{console.error("Fatal:",t),process.exit(1)})});import{stdout as fw,stdin as hw}from"node:process";import*as Er from"node:readline";var Yh=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,Xh=t=>t===12288||t>=65281&&t<=65376||t>=65504&&t<=65510,Qh=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 ru=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,Si=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,bi=/\t{1,1000}/y,nu=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"),ki=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,nw=new RegExp("\\p{M}+","gu"),ow={limit:1/0,ellipsis:""},eg=(t,e={},r={})=>{let n=e.limit??1/0,o=e.ellipsis??"",s=e?.ellipsisWidth??(o?eg(o,ow,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,m=r.regularWidth??1,h=r.wideWidth??2,p=0,f=0,g=t.length,_=0,y=!1,x=g,k=Math.max(0,n-s),T=0,Z=0,V=0,N=0;e:for(;;){if(Z>T||f>=g&&f>p){let Re=t.slice(T,Z)||t.slice(p,f);_=0;for(let de of Re.replaceAll(nw,"")){let ft=de.codePointAt(0)||0;if(Xh(ft)?N=d:Qh(ft)?N=h:u!==m&&Yh(ft)?N=u:N=m,V+N>k&&(x=Math.min(x,Math.max(T,p)+_)),V+N>n){y=!0;break e}_+=de.length,V+=N}T=Z=0}if(f>=g)break;if(ki.lastIndex=f,ki.test(t)){if(_=ki.lastIndex-f,N=_*m,V+N>k&&(x=Math.min(x,f+Math.floor((k-V)/m))),V+N>n){y=!0;break}V+=N,T=p,Z=f,f=p=ki.lastIndex;continue}if(ru.lastIndex=f,ru.test(t)){if(V+i>k&&(x=Math.min(x,f)),V+i>n){y=!0;break}V+=i,T=p,Z=f,f=p=ru.lastIndex;continue}if(Si.lastIndex=f,Si.test(t)){if(_=Si.lastIndex-f,N=_*a,V+N>k&&(x=Math.min(x,f+Math.floor((k-V)/a))),V+N>n){y=!0;break}V+=N,T=p,Z=f,f=p=Si.lastIndex;continue}if(bi.lastIndex=f,bi.test(t)){if(_=bi.lastIndex-f,N=_*c,V+N>k&&(x=Math.min(x,f+Math.floor((k-V)/c))),V+N>n){y=!0;break}V+=N,T=p,Z=f,f=p=bi.lastIndex;continue}if(nu.lastIndex=f,nu.test(t)){if(V+l>k&&(x=Math.min(x,f)),V+l>n){y=!0;break}V+=l,T=p,Z=f,f=p=nu.lastIndex;continue}f+=1}return{width:y?k:V,index:y?x:g,truncated:y,ellipsed:y&&n>=s}},tg=eg;var sw={limit:1/0,ellipsis:"",ellipsisWidth:0},iw=(t,e={})=>tg(t,sw,e).width,Xe=iw;var wi="\x1B",ig="\x9B",aw=39,su="\x07",ag="[",cw="]",cg="m",iu=`${cw}8;;`,rg=new RegExp(`(?:\\${ag}(?<code>\\d+)m|\\${iu}(?<uri>.*)${su})`,"y"),ng=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},og=t=>`${wi}${ag}${t}${cg}`,sg=t=>`${wi}${iu}${t}${su}`,ou=(t,e,r)=>{let n=e[Symbol.iterator](),o=!1,s=!1,i=t.at(-1),a=i===void 0?0:Xe(i),c=n.next(),u=n.next(),l=0;for(;!c.done;){let d=c.value,m=Xe(d);a+m<=r?t[t.length-1]+=d:(t.push(d),a=0),(d===wi||d===ig)&&(o=!0,s=e.startsWith(iu,l+1)),o?s?d===su&&(o=!1,s=!1):d===cg&&(o=!1):(a+=m,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())},uw=t=>{let e=t.split(" "),r=e.length;for(;r&&!Xe(e[r-1]);)r--;return r===e.length?t:e.slice(0,r).join(" ")+e.slice(r).join("")},lw=(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 m=i[d];if(r.trim!==!1){let p=a.at(-1)??"",f=p.trimStart();p.length!==f.length&&(a[a.length-1]=f,c=Xe(f))}d!==0&&(c>=e&&(r.wordWrap===!1||r.trim===!1)&&(a.push(""),c=0),(c||r.trim===!1)&&(a[a.length-1]+=" ",c++));let h=Xe(m);if(r.hard&&h>e){let p=e-c,f=1+Math.floor((h-p-1)/e);Math.floor((h-1)/e)<f&&a.push(""),ou(a,m,e),c=Xe(a.at(-1)??"");continue}if(c+h>e&&c&&h){if(r.wordWrap===!1&&c<e){ou(a,m,e),c=Xe(a.at(-1)??"");continue}a.push(""),c=0}if(c+h>e&&r.wordWrap===!1){ou(a,m,e),c=Xe(a.at(-1)??"");continue}a[a.length-1]+=m,c+=h}r.trim!==!1&&(a=a.map(d=>uw(d)));let u=a.join(`
574
+ `),l=!1;for(let d=0;d<u.length;d++){let m=u[d];if(n+=m,!l)l=m>="\uD800"&&m<="\uDBFF";else continue;if(m===wi||m===ig){rg.lastIndex=d+1;let p=rg.exec(u)?.groups;if(p?.code!==void 0){let f=Number.parseFloat(p.code);o=f===aw?void 0:f}else p?.uri!==void 0&&(s=p.uri.length===0?void 0:p.uri)}if(u[d+1]===`
575
+ `){s&&(n+=sg(""));let h=o?ng(o):void 0;o&&h&&(n+=og(h))}else m===`
576
+ `&&(o&&ng(o)&&(n+=og(o)),s&&(n+=sg(s)))}return n},dw=/\r?\n/;function Gn(t,e,r){return String(t).normalize().split(dw).map(n=>lw(n,e,r)).join(`
577
+ `)}var Qo=Xo(cu(),1);import{ReadStream as lg}from"node:tty";var gw=["up","down","left","right","space","enter","cancel"],_w=["January","February","March","April","May","June","July","August","September","October","November","December"],Kt={actions:new Set(gw),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:[..._w],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 dg(t,e){if(typeof t=="string")return Kt.aliases.get(t)===e;for(let r of t)if(r!==void 0&&dg(r,e))return!0;return!1}var yw=globalThis.process.platform.startsWith("win");function pg({input:t=hw,output:e=fw,overwrite:r=!0,hideCursor:n=!0}={}){let o=Er.createInterface({input:t,output:e,prompt:"",tabSize:1});Er.emitKeypressEvents(t,o),t instanceof lg&&t.isTTY&&t.setRawMode(!0);let s=(i,{name:a,sequence:c})=>{let u=String(i);if(dg([u,a,c],"cancel")){n&&e.write(Qo.cursor.show),process.exit(0);return}if(!r)return;Er.moveCursor(e,a==="return"?0:-1,a==="return"?-1:0,()=>{Er.clearLine(e,1,()=>{t.once("keypress",s)})})};return n&&e.write(Qo.cursor.hide),t.once("keypress",s),()=>{t.off("keypress",s),n&&e.write(Qo.cursor.show),t instanceof lg&&t.isTTY&&!yw&&t.setRawMode(!1),o.terminal=!1,o.close()}}var uu=t=>"columns"in t&&typeof t.columns=="number"?t.columns:80;import{styleText as Se,stripVTControlCharacters as UM}from"node:util";import xt from"node:process";var es=Xo(cu(),1);function vw(){return xt.platform!=="win32"?xt.env.TERM!=="linux":!!xt.env.CI||!!xt.env.WT_SESSION||!!xt.env.TERMINUS_SUBLIME||xt.env.ConEmuTask==="{cmd::Cmder}"||xt.env.TERM_PROGRAM==="Terminus-Sublime"||xt.env.TERM_PROGRAM==="vscode"||xt.env.TERM==="xterm-256color"||xt.env.TERM==="alacritty"||xt.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var lu=vw(),Sw=()=>process.env.CI==="true";var ce=(t,e)=>lu?t:e,VM=ce("\u25C6","*"),bw=ce("\u25A0","x"),kw=ce("\u25B2","x"),du=ce("\u25C7","o"),ww=ce("\u250C","T"),Tr=ce("\u2502","|"),$w=ce("\u2514","\u2014"),WM=ce("\u2510","T"),GM=ce("\u2518","\u2014"),KM=ce("\u25CF",">"),JM=ce("\u25CB"," "),YM=ce("\u25FB","[\u2022]"),XM=ce("\u25FC","[+]"),QM=ce("\u25FB","[ ]"),eD=ce("\u25AA","\u2022"),mg=ce("\u2500","-"),Ew=ce("\u256E","+"),Tw=ce("\u251C","+"),Pw=ce("\u256F","+"),Rw=ce("\u2570","+"),tD=ce("\u256D","+"),Ow=ce("\u25CF","\u2022"),Cw=ce("\u25C6","*"),Iw=ce("\u25B2","!"),Aw=ce("\u25A0","x");var I={message:(t=[],{symbol:e=Se("gray",Tr),secondarySymbol:r=Se("gray",Tr),output:n=process.stdout,spacing:o=1,withGuide:s}={})=>{let i=[],a=s??Kt.withGuide,c=a?r:"",u=a?`${e} `:"",l=a?`${r} `:"";for(let m=0;m<o;m++)i.push(c);let d=Array.isArray(t)?t:t.split(`
578
+ `);if(d.length>0){let[m,...h]=d;m.length>0?i.push(`${u}${m}`):i.push(a?e:"");for(let p of h)p.length>0?i.push(`${l}${p}`):i.push(a?r:"")}n.write(`${i.join(`
561
579
  `)}
562
- `)},info:(t,e)=>{I.message(t,{...e,symbol:Se("blue",Pw)})},success:(t,e)=>{I.message(t,{...e,symbol:Se("green",Rw)})},step:(t,e)=>{I.message(t,{...e,symbol:Se("green",pu)})},warn:(t,e)=>{I.message(t,{...e,symbol:Se("yellow",Ow)})},warning:(t,e)=>{I.warn(t,e)},error:(t,e)=>{I.message(t,{...e,symbol:Se("red",Cw)})}};var mu=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??qt.withGuide?`${Se("gray",Sw)} `:"";r.write(`${n}${t}
563
- `)},Ei=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??qt.withGuide?`${Se("gray",wr)}
564
- ${Se("gray",kw)} `:"";r.write(`${n}${t}
565
-
566
- `)};var Iw=t=>Se("dim",t),Aw=(t,e,r)=>{let n={hard:!0,trim:!1},o=qn(t,e,n).split(`
567
- `),s=o.reduce((c,u)=>Math.max(Xe(u),c),0),i=o.map(r).reduce((c,u)=>Math.max(Xe(u),c),0),a=e-(i-s);return qn(t,a,n)},fu=(t="",e="",r)=>{let n=r?.output??yt.stdout,o=r?.withGuide??qt.withGuide,s=r?.format??Iw,i=["",...Aw(t,lu(n)-6,s).split(`
568
- `).map(s),""],a=Xe(e),c=Math.max(i.reduce((m,f)=>{let p=Xe(f);return p>m?p:m},0),a)+2,u=i.map(m=>`${Se("gray",wr)} ${m}${" ".repeat(c-Xe(m))}${Se("gray",wr)}`).join(`
569
- `),l=o?`${Se("gray",wr)}
570
- `:"",d=o?$w:Tw;n.write(`${l}${Se("green",pu)} ${Se("reset",e)} ${Se("gray",ig.repeat(Math.max(c-a-1,1))+ww)}
580
+ `)},info:(t,e)=>{I.message(t,{...e,symbol:Se("blue",Ow)})},success:(t,e)=>{I.message(t,{...e,symbol:Se("green",Cw)})},step:(t,e)=>{I.message(t,{...e,symbol:Se("green",du)})},warn:(t,e)=>{I.message(t,{...e,symbol:Se("yellow",Iw)})},warning:(t,e)=>{I.warn(t,e)},error:(t,e)=>{I.message(t,{...e,symbol:Se("red",Aw)})}};var pu=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??Kt.withGuide?`${Se("gray",ww)} `:"";r.write(`${n}${t}
581
+ `)},$i=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??Kt.withGuide?`${Se("gray",Tr)}
582
+ ${Se("gray",$w)} `:"";r.write(`${n}${t}
583
+
584
+ `)};var Nw=t=>Se("dim",t),zw=(t,e,r)=>{let n={hard:!0,trim:!1},o=Gn(t,e,n).split(`
585
+ `),s=o.reduce((c,u)=>Math.max(Xe(u),c),0),i=o.map(r).reduce((c,u)=>Math.max(Xe(u),c),0),a=e-(i-s);return Gn(t,a,n)},mu=(t="",e="",r)=>{let n=r?.output??xt.stdout,o=r?.withGuide??Kt.withGuide,s=r?.format??Nw,i=["",...zw(t,uu(n)-6,s).split(`
586
+ `).map(s),""],a=Xe(e),c=Math.max(i.reduce((m,h)=>{let p=Xe(h);return p>m?p:m},0),a)+2,u=i.map(m=>`${Se("gray",Tr)} ${m}${" ".repeat(c-Xe(m))}${Se("gray",Tr)}`).join(`
587
+ `),l=o?`${Se("gray",Tr)}
588
+ `:"",d=o?Tw:Rw;n.write(`${l}${Se("green",du)} ${Se("reset",e)} ${Se("gray",mg.repeat(Math.max(c-a-1,1))+Ew)}
571
589
  ${u}
572
- ${Se("gray",d+ig.repeat(c+2)+Ew)}
573
- `)};var Nw=t=>Se("magenta",t),hu=({indicator:t="dots",onCancel:e,output:r=process.stdout,cancelMessage:n,errorMessage:o,frames:s=du?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],delay:i=du?80:120,signal:a,...c}={})=>{let u=vw(),l,d,m=!1,f=!1,p="",h,g=performance.now(),_=lu(r),y=c?.styleFrame??Nw,v=be=>{let _t=be>1?o??qt.messages.error:n??qt.messages.cancel;f=be===1,m&&(Sr(_t,be),f&&typeof e=="function"&&e())},$=()=>v(2),T=()=>v(1),J=()=>{process.on("uncaughtExceptionMonitor",$),process.on("unhandledRejection",$),process.on("SIGINT",T),process.on("SIGTERM",T),process.on("exit",v),a&&a.addEventListener("abort",T)},B=()=>{process.removeListener("uncaughtExceptionMonitor",$),process.removeListener("unhandledRejection",$),process.removeListener("SIGINT",T),process.removeListener("SIGTERM",T),process.removeListener("exit",v),a&&a.removeEventListener("abort",T)},N=()=>{if(h===void 0)return;u&&r.write(`
574
- `);let be=qn(h,_,{hard:!0,trim:!1}).split(`
575
- `);be.length>1&&r.write(Jo.cursor.up(be.length-1)),r.write(Jo.cursor.to(0)),r.write(Jo.erase.down())},Pe=be=>be.replace(/\.+$/,""),de=be=>{let _t=(performance.now()-be)/1e3,ar=Math.floor(_t/60),cr=Math.floor(_t%60);return ar>0?`[${ar}m ${cr}s]`:`[${cr}s]`},pt=c.withGuide??qt.withGuide,xi=(be="")=>{m=!0,l=sg({output:r}),p=Pe(be),g=performance.now(),pt&&r.write(`${Se("gray",wr)}
576
- `);let _t=0,ar=0;J(),d=setInterval(()=>{if(u&&p===h)return;N(),h=p;let cr=y(s[_t]),bi;if(u)bi=`${cr} ${p}...`;else if(t==="timer")bi=`${cr} ${p} ${de(g)}`;else{let Gk=".".repeat(Math.floor(ar)).slice(0,3);bi=`${cr} ${p}${Gk}`}let Wk=qn(bi,_,{hard:!0,trim:!1});r.write(Wk),_t=_t+1<s.length?_t+1:0,ar=ar<4?ar+.125:0},i)},Sr=(be="",_t=0,ar=!1)=>{if(!m)return;m=!1,clearInterval(d),N();let cr=_t===0?Se("green",pu):_t===1?Se("red",xw):Se("red",bw);p=be??p,ar||(t==="timer"?r.write(`${cr} ${p} ${de(g)}
577
- `):r.write(`${cr} ${p}
578
- `)),B(),l()};return{start:xi,stop:(be="")=>Sr(be,0),message:(be="")=>{p=Pe(be??p)},cancel:(be="")=>Sr(be,1),error:(be="")=>Sr(be,2),clear:()=>Sr("",0,!0),get isCancelled(){return f}}},UM={light:ce("\u2500","-"),heavy:ce("\u2501","="),block:ce("\u2588","#")};var HM=`${Se("gray",wr)} `;var E=Go(ug(),1);Ci();Xu();import{execFileSync as Un}from"node:child_process";import{readFileSync as eu,writeFileSync as Mj,cpSync as Hk,accessSync as qk,existsSync as Hn,rmSync as Qc,closeSync as Dj,openSync as Lj,chmodSync as Fj,constants as Bk}from"node:fs";import{request as Zj}from"node:https";import{resolve as Ie,dirname as Uj,join as br}from"node:path";import{tmpdir as Hj,devNull as qj,homedir as tu}from"node:os";import{fileURLToPath as Bj,pathToFileURL as Vj}from"node:url";var Wj={"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"},codex:{pretooluse:"hooks/codex/pretooluse.mjs",posttooluse:"hooks/codex/posttooluse.mjs",sessionstart:"hooks/codex/sessionstart.mjs"},kiro:{pretooluse:"hooks/kiro/pretooluse.mjs",posttooluse:"hooks/kiro/posttooluse.mjs"}};async function Gj(t,e){try{Dj(2),Lj(qj,"w")}catch{process.stderr.write=(()=>!0)}let r=Wj[t]?.[e];r||process.exit(1);let n=vi();await import(Vj(br(n,r)).href)}var Yr=process.argv.slice(2);Yr[0]==="doctor"?Xj().then(t=>process.exit(t)):Yr[0]==="upgrade"?eM():Yr[0]==="hook"?Gj(Yr[1],Yr[2]):Yr[0]==="insight"?Qj(Yr[1]?Number(Yr[1]):4747):Promise.resolve().then(()=>(Uk(),Zk));function b9(t){return t.replace(/\\/g,"/")}function Kj(){let t=Bj(import.meta.url),e=Uj(t);return e.endsWith("/build")||e.endsWith("\\build")||e.endsWith("/src")||e.endsWith("\\src")?Ie(e,".."):e}function Jj(t){if(process.platform==="win32"){let e=process.env.LOCALAPPDATA;return e?Ie(e,t,"node_modules","context-mode"):Ie(tu(),"AppData","Local",t,"node_modules","context-mode")}return Ie(tu(),".cache",t,"node_modules","context-mode")}function vi(){let t=Qn().platform;return t==="opencode"||t==="kilo"?Jj(t):Kj()}function Vk(){try{return JSON.parse(eu(Ie(vi(),"package.json"),"utf-8")).version??"unknown"}catch{return"unknown"}}async function Yj(){return new Promise(t=>{let e=Zj("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 Xj(){process.stdout.isTTY&&console.clear();let t=Qn(),e=await Fi(t.platform);mu(E.default.bgMagenta(E.default.white(" context-mode doctor "))),I.info(`Platform: ${E.default.cyan(e.name)}`+E.default.dim(` (${t.confidence} confidence \u2014 ${t.reason})`));let r=0,n=hu();n.start("Running diagnostics");let o,s;try{o=Bn(),s=Oi(o)}catch{return n.stop("Diagnostics partial"),I.warn(E.default.yellow("Could not detect runtimes")+E.default.dim(" \u2014 module may be missing, restart session after upgrade")),Ei(E.default.yellow("Doctor could not fully run \u2014 try again after restarting")),1}n.stop("Diagnostics complete"),fu(Ri(o),"Runtimes"),Vn()?I.success(E.default.green("Performance: FAST")+" \u2014 Bun detected for JS/TS execution"):I.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++,I.error(E.default.red(`Language coverage: ${s.length}/${i} (${a}%)`)+" \u2014 too few runtimes detected"+E.default.dim(` \u2014 ${s.join(", ")||"none"}`))):I.info(`Language coverage: ${s.length}/${i} (${a}%)`+E.default.dim(` \u2014 ${s.join(", ")}`)),I.step("Testing server initialization...");try{let{PolyglotExecutor:h}=await Promise.resolve().then(()=>(bh(),ik)),_=await new h({runtimes:o}).execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(_.exitCode===0&&_.stdout.trim()==="ok")I.success(E.default.green("Server test: PASS"));else{r++;let y=_.stderr?.trim()?` (${_.stderr.trim().slice(0,200)})`:"";I.error(E.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")?I.warn(E.default.yellow("Server test: SKIP")+E.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,I.error(E.default.red("Server test: FAIL")+` \u2014 ${g}`))}I.step(`Checking ${e.name} hooks configuration...`);let c=vi(),u=e.validateHooks(c);for(let h of u)h.status==="pass"?I.success(E.default.green(`${h.check}: PASS`)+` \u2014 ${h.message}`):I.error(E.default.red(`${h.check}: FAIL`)+` \u2014 ${h.message}`+(h.fix?E.default.dim(`
579
- Run: ${h.fix}`):""));I.step("Checking hook script...");let l=Ie(c,"hooks","pretooluse.mjs");try{qk(l,Bk.R_OK),I.success(E.default.green("Hook script exists: PASS")+E.default.dim(` \u2014 ${l}`))}catch{I.error(E.default.red("Hook script exists: FAIL")+E.default.dim(` \u2014 not found at ${l}`))}I.step(`Checking ${e.name} plugin registration...`);let d=e.checkPluginRegistration();d.status==="pass"?I.success(E.default.green("Plugin enabled: PASS")+E.default.dim(` \u2014 ${d.message}`)):I.warn(E.default.yellow("Plugin enabled: WARN")+` \u2014 ${d.message}`),I.step("Checking FTS5 / SQLite...");try{let h=(await Promise.resolve().then(()=>(fi(),lk))).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"?I.success(E.default.green("FTS5 / SQLite: PASS")+" \u2014 native module works"):(r++,I.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")?I.warn(E.default.yellow("FTS5 / better-sqlite3: SKIP")+E.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,I.error(E.default.red("FTS5 / better-sqlite3: FAIL")+` \u2014 ${g}`+E.default.dim(`
580
- Try: npm rebuild better-sqlite3`)))}I.step("Checking versions...");let m=Vk(),f=await Yj(),p=e.getInstalledVersion();return f==="unknown"?I.warn(E.default.yellow("npm (MCP): WARN")+` \u2014 local v${m}, could not reach npm registry`):m===f?I.success(E.default.green("npm (MCP): PASS")+` \u2014 v${m}`):I.warn(E.default.yellow("npm (MCP): WARN")+` \u2014 local v${m}, latest v${f}`+E.default.dim(`
581
- Run: /context-mode:ctx-upgrade`)),p==="not installed"?I.info(E.default.dim(`${e.name}: not installed`)+" \u2014 using standalone MCP mode"):f!=="unknown"&&p===f?I.success(E.default.green(`${e.name}: PASS`)+` \u2014 v${p}`):f!=="unknown"?I.warn(E.default.yellow(`${e.name}: WARN`)+` \u2014 v${p}, latest v${f}`+E.default.dim(`
582
- Run: /context-mode:ctx-upgrade`)):I.info(`${e.name}: v${p}`+E.default.dim(" \u2014 could not verify against npm registry")),r>0?(Ei(E.default.red(`Diagnostics failed \u2014 ${r} critical issue(s) found`)),1):(Ei(s.length>=4?E.default.green("Diagnostics complete!"):E.default.yellow("Some checks need attention \u2014 see above for details")),0)}async function Qj(t){let{execSync:e,spawn:r}=await import("node:child_process"),{statSync:n,mkdirSync:o,cpSync:s}=await import("node:fs"),i=Ie(vi(),"insight"),a=br(tu(),".claude","context-mode","insight-cache");Hn(br(i,"server.mjs"))||(console.error("Error: Insight source not found. Try upgrading context-mode."),process.exit(1)),o(a,{recursive:!0});let c=n(br(i,"server.mjs")).mtimeMs,u=Hn(br(a,"server.mjs"))?n(br(a,"server.mjs")).mtimeMs:0;c>u&&(console.log("Copying Insight source..."),s(i,a,{recursive:!0,force:!0})),Hn(br(a,"node_modules"))||(console.log("Installing dependencies (first run)..."),e("npm install --production=false",{cwd:a,stdio:"inherit",timeout:12e4})),console.log("Building dashboard..."),e("npx vite build",{cwd:a,stdio:"pipe",timeout:3e4});let l=`http://localhost:${t}`;console.log(`
590
+ ${Se("gray",d+mg.repeat(c+2)+Pw)}
591
+ `)};var jw=t=>Se("magenta",t),fu=({indicator:t="dots",onCancel:e,output:r=process.stdout,cancelMessage:n,errorMessage:o,frames:s=lu?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],delay:i=lu?80:120,signal:a,...c}={})=>{let u=Sw(),l,d,m=!1,h=!1,p="",f,g=performance.now(),_=uu(r),y=c?.styleFrame??jw,x=ve=>{let yt=ve>1?o??Kt.messages.error:n??Kt.messages.cancel;h=ve===1,m&&($r(yt,ve),h&&typeof e=="function"&&e())},k=()=>x(2),T=()=>x(1),Z=()=>{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)},V=()=>{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)},N=()=>{if(f===void 0)return;u&&r.write(`
592
+ `);let ve=Gn(f,_,{hard:!0,trim:!1}).split(`
593
+ `);ve.length>1&&r.write(es.cursor.up(ve.length-1)),r.write(es.cursor.to(0)),r.write(es.erase.down())},Re=ve=>ve.replace(/\.+$/,""),de=ve=>{let yt=(performance.now()-ve)/1e3,lr=Math.floor(yt/60),dr=Math.floor(yt%60);return lr>0?`[${lr}m ${dr}s]`:`[${dr}s]`},ft=c.withGuide??Kt.withGuide,xi=(ve="")=>{m=!0,l=pg({output:r}),p=Re(ve),g=performance.now(),ft&&r.write(`${Se("gray",Tr)}
594
+ `);let yt=0,lr=0;Z(),d=setInterval(()=>{if(u&&p===f)return;N(),f=p;let dr=y(s[yt]),vi;if(u)vi=`${dr} ${p}...`;else if(t==="timer")vi=`${dr} ${p} ${de(g)}`;else{let Kk=".".repeat(Math.floor(lr)).slice(0,3);vi=`${dr} ${p}${Kk}`}let Gk=Gn(vi,_,{hard:!0,trim:!1});r.write(Gk),yt=yt+1<s.length?yt+1:0,lr=lr<4?lr+.125:0},i)},$r=(ve="",yt=0,lr=!1)=>{if(!m)return;m=!1,clearInterval(d),N();let dr=yt===0?Se("green",du):yt===1?Se("red",bw):Se("red",kw);p=ve??p,lr||(t==="timer"?r.write(`${dr} ${p} ${de(g)}
595
+ `):r.write(`${dr} ${p}
596
+ `)),V(),l()};return{start:xi,stop:(ve="")=>$r(ve,0),message:(ve="")=>{p=Re(ve??p)},cancel:(ve="")=>$r(ve,1),error:(ve="")=>$r(ve,2),clear:()=>$r("",0,!0),get isCancelled(){return h}}},rD={light:ce("\u2500","-"),heavy:ce("\u2501","="),block:ce("\u2588","#")};var nD=`${Se("gray",Tr)} `;var E=Xo(gg(),1);Ci();Qu();import{execFileSync as Wn}from"node:child_process";import{readFileSync as eu,writeFileSync as Xj,cpSync as qk,accessSync as Bk,existsSync as wr,rmSync as Yo,closeSync as Qj,openSync as eM,chmodSync as tM,constants as Vk}from"node:fs";import{request as rM}from"node:https";import{resolve as Ae,dirname as Kh,join as mt}from"node:path";import{tmpdir as nM,devNull as oM,homedir as Jh}from"node:os";import{fileURLToPath as sM,pathToFileURL as iM}from"node:url";var aM={"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"},codex:{pretooluse:"hooks/codex/pretooluse.mjs",posttooluse:"hooks/codex/posttooluse.mjs",sessionstart:"hooks/codex/sessionstart.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 cM(t,e){try{Qj(2),eM(oM,"w")}catch{process.stderr.write=(()=>!0)}let r=aM[t]?.[e];r||process.exit(1);let n=yi();await import(iM(mt(n,r)).href)}var rn=process.argv.slice(2);rn[0]==="doctor"?pM().then(t=>process.exit(t)):rn[0]==="upgrade"?fM():rn[0]==="hook"?cM(rn[1],rn[2]):rn[0]==="insight"?mM(rn[1]?Number(rn[1]):4747):Promise.resolve().then(()=>(Hk(),Uk));function iB(t){return t.replace(/\\/g,"/")}function uM(){let t=sM(import.meta.url),e=Kh(t);return e.endsWith("/build")||e.endsWith("\\build")||e.endsWith("/src")||e.endsWith("\\src")?Ae(e,".."):e}function lM(t){if(process.platform==="win32"){let e=process.env.LOCALAPPDATA;return e?Ae(e,t,"node_modules","context-mode"):Ae(Jh(),"AppData","Local",t,"node_modules","context-mode")}return Ae(Jh(),".cache",t,"node_modules","context-mode")}function yi(){let t=cn().platform;return t==="opencode"||t==="kilo"?lM(t):uM()}function Wk(){try{return JSON.parse(eu(Ae(yi(),"package.json"),"utf-8")).version??"unknown"}catch{return"unknown"}}async function dM(){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 pM(){process.stdout.isTTY&&console.clear();let t=cn(),e=await cs(t.platform);pu(E.default.bgMagenta(E.default.white(" context-mode doctor "))),I.info(`Platform: ${E.default.cyan(e.name)}`+E.default.dim(` (${t.confidence} confidence \u2014 ${t.reason})`));let r=0,n=fu();n.start("Running diagnostics");let o,s;try{o=Kn(),s=Oi(o)}catch{return n.stop("Diagnostics partial"),I.warn(E.default.yellow("Could not detect runtimes")+E.default.dim(" \u2014 module may be missing, restart session after upgrade")),$i(E.default.yellow("Doctor could not fully run \u2014 try again after restarting")),1}n.stop("Diagnostics complete"),mu(Ri(o),"Runtimes"),Jn()?I.success(E.default.green("Performance: FAST")+" \u2014 Bun detected for JS/TS execution"):I.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++,I.error(E.default.red(`Language coverage: ${s.length}/${i} (${a}%)`)+" \u2014 too few runtimes detected"+E.default.dim(` \u2014 ${s.join(", ")||"none"}`))):I.info(`Language coverage: ${s.length}/${i} (${a}%)`+E.default.dim(` \u2014 ${s.join(", ")}`)),I.step("Testing server initialization...");try{let{PolyglotExecutor:f}=await Promise.resolve().then(()=>(wh(),ok)),_=await new f({runtimes:o}).execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(_.exitCode===0&&_.stdout.trim()==="ok")I.success(E.default.green("Server test: PASS"));else{r++;let y=_.stderr?.trim()?` (${_.stderr.trim().slice(0,200)})`:"";I.error(E.default.red("Server test: FAIL")+` \u2014 exit ${_.exitCode}${y}`)}}catch(f){let g=f instanceof Error?f.message:String(f);g.includes("Cannot find module")||g.includes("MODULE_NOT_FOUND")?I.warn(E.default.yellow("Server test: SKIP")+E.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,I.error(E.default.red("Server test: FAIL")+` \u2014 ${g}`))}I.step(`Checking ${e.name} hooks configuration...`);let c=yi(),u=e.validateHooks(c);for(let f of u)f.status==="pass"?I.success(E.default.green(`${f.check}: PASS`)+` \u2014 ${f.message}`):I.error(E.default.red(`${f.check}: FAIL`)+` \u2014 ${f.message}`+(f.fix?E.default.dim(`
597
+ Run: ${f.fix}`):""));I.step("Checking hook script...");let l=Ae(c,"hooks","pretooluse.mjs");try{Bk(l,Vk.R_OK),I.success(E.default.green("Hook script exists: PASS")+E.default.dim(` \u2014 ${l}`))}catch{I.error(E.default.red("Hook script exists: FAIL")+E.default.dim(` \u2014 not found at ${l}`))}I.step(`Checking ${e.name} plugin registration...`);let d=e.checkPluginRegistration();d.status==="pass"?I.success(E.default.green("Plugin enabled: PASS")+E.default.dim(` \u2014 ${d.message}`)):I.warn(E.default.yellow("Plugin enabled: WARN")+` \u2014 ${d.message}`),I.step("Checking FTS5 / SQLite...");try{let f=(await Promise.resolve().then(()=>(gi(),ck))).loadDatabase(),g=new f(":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"?I.success(E.default.green("FTS5 / SQLite: PASS")+" \u2014 native module works"):(r++,I.error(E.default.red("FTS5 / SQLite: FAIL")+" \u2014 query returned unexpected result"))}catch(f){let g=f instanceof Error?f.message:String(f);g.includes("Cannot find module")||g.includes("MODULE_NOT_FOUND")?I.warn(E.default.yellow("FTS5 / better-sqlite3: SKIP")+E.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,I.error(E.default.red("FTS5 / better-sqlite3: FAIL")+` \u2014 ${g}`+E.default.dim(`
598
+ Try: npm rebuild better-sqlite3`)))}I.step("Checking versions...");let m=Wk(),h=await dM(),p=e.getInstalledVersion();return h==="unknown"?I.warn(E.default.yellow("npm (MCP): WARN")+` \u2014 local v${m}, could not reach npm registry`):m===h?I.success(E.default.green("npm (MCP): PASS")+` \u2014 v${m}`):I.warn(E.default.yellow("npm (MCP): WARN")+` \u2014 local v${m}, latest v${h}`+E.default.dim(`
599
+ Run: /context-mode:ctx-upgrade`)),p==="not installed"?I.info(E.default.dim(`${e.name}: not installed`)+" \u2014 using standalone MCP mode"):h!=="unknown"&&p===h?I.success(E.default.green(`${e.name}: PASS`)+` \u2014 v${p}`):h!=="unknown"?I.warn(E.default.yellow(`${e.name}: WARN`)+` \u2014 v${p}, latest v${h}`+E.default.dim(`
600
+ Run: /context-mode:ctx-upgrade`)):I.info(`${e.name}: v${p}`+E.default.dim(" \u2014 could not verify against npm registry")),r>0?($i(E.default.red(`Diagnostics failed \u2014 ${r} critical issue(s) found`)),1):($i(s.length>=4?E.default.green("Diagnostics complete!"):E.default.yellow("Some checks need attention \u2014 see above for details")),0)}async function mM(t){try{let{execSync:e,spawn:r}=await import("node:child_process"),{statSync:n,mkdirSync:o,cpSync:s}=await import("node:fs"),i=Ae(yi(),"insight"),a=cn(),u=(await cs(a.platform)).getSessionDir(),l=mt(Kh(u),"content"),d=mt(Kh(u),"insight-cache");wr(mt(i,"server.mjs"))||(console.error("Error: Insight source not found. Try upgrading context-mode."),process.exit(1)),o(d,{recursive:!0});let m=n(mt(i,"server.mjs")).mtimeMs,h=wr(mt(d,"server.mjs"))?n(mt(d,"server.mjs")).mtimeMs:0;if(m>h&&(console.log("Copying Insight source..."),s(i,d,{recursive:!0,force:!0})),!wr(mt(d,"node_modules"))){console.log("Installing dependencies (first run)...");try{e("npm install --production=false",{cwd:d,stdio:"inherit",timeout:3e5})}catch{try{Yo(mt(d,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!wr(mt(d,"node_modules","vite"))||!wr(mt(d,"node_modules","better-sqlite3")))throw Yo(mt(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 p=`http://localhost:${t}`;console.log(`
583
601
  context-mode Insight
584
- ${l}
585
- `);let d=r("node",[br(a,"server.mjs")],{cwd:a,env:{...process.env,PORT:String(t)},stdio:"inherit"}),m=process.platform;try{m==="darwin"?e(`open "${l}"`,{stdio:"pipe"}):m==="win32"?e(`start "" "${l}"`,{stdio:"pipe"}):e(`xdg-open "${l}" 2>/dev/null || sensible-browser "${l}" 2>/dev/null`,{stdio:"pipe"})}catch{}process.on("SIGINT",()=>{d.kill(),process.exit(0)}),process.on("SIGTERM",()=>{d.kill(),process.exit(0)})}async function eM(){process.stdout.isTTY&&console.clear();let t=Qn(),e=await Fi(t.platform);mu(E.default.bgCyan(E.default.black(" context-mode upgrade "))),I.info(`Platform: ${E.default.cyan(e.name)}`+E.default.dim(` (${t.confidence} confidence)`));let r=vi(),n=[],o=hu();I.step("Pulling latest from GitHub...");let s=Vk(),i=br(Hj(),`context-mode-upgrade-${Date.now()}`);o.start("Cloning mksglu/context-mode");try{Un("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(eu(Ie(d,"package.json"),"utf-8")).version??"unknown";if(f===s){I.success(E.default.green("Already on latest")+` \u2014 v${s}`),Qc(i,{recursive:!0,force:!0});return}else I.info(`Update available: ${E.default.yellow("v"+s)} \u2192 ${E.default.green("v"+f)}`);o.start("Installing dependencies & building"),Un("npm",["install","--no-audit","--no-fund"],{cwd:d,stdio:"pipe",timeout:12e4}),Un("npm",["run","build"],{cwd:d,stdio:"pipe",timeout:6e4}),o.stop("Built successfully"),o.start("Updating files in-place");let h=[...JSON.parse(eu(Ie(d,"package.json"),"utf-8")).files||[],"src","package.json"];for(let _ of h)try{Qc(Ie(r,_),{recursive:!0,force:!0}),Hk(Ie(d,_),Ie(r,_),{recursive:!0})}catch{}let g={mcpServers:{"context-mode":{command:"node",args:[Ie(r,"start.mjs")]}}};if(Mj(Ie(r,".mcp.json"),JSON.stringify(g,null,2)+`
586
- `),o.stop(E.default.green(`Updated in-place to v${f}`)),e.updatePluginRegistry(r,f),I.info(E.default.dim(" Registry synced to "+r)),o.start("Installing production dependencies"),Un("npm",["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{Un("npm",["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 y=_ instanceof Error?_.message:String(_);o.stop(E.default.yellow("Native addon rebuild warning")),I.warn(E.default.yellow("better-sqlite3 rebuild issue")+` \u2014 ${y}`+E.default.dim(`
587
- Try manually: cd "${r}" && npm rebuild better-sqlite3`))}}o.start("Updating npm global package");try{Un("npm",["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")),I.info(E.default.dim(" Could not update global npm \u2014 may need sudo or standalone install"))}Qc(i,{recursive:!0,force:!0});try{let _=Ie(tu(),".claude","plugins","installed_plugins.json");if(Hn(_)){let v=JSON.parse(eu(_,"utf-8"))?.plugins?.["context-mode@context-mode"];if(Array.isArray(v))for(let $ of v){let T=$.installPath;if(T&&T!==r&&Hn(T)){let J=Ie(d,"skills");Hn(J)&&(Hk(J,Ie(T,"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`),I.success(E.default.green("Plugin reinstalled from GitHub!")+E.default.dim(` \u2014 v${f}`))}catch(d){let m=d instanceof Error?d.message:String(d);o.stop(E.default.red("Update failed")),I.error(E.default.red("GitHub pull failed")+` \u2014 ${m}`),I.info(E.default.dim("Continuing with hooks/settings fix..."));try{Qc(i,{recursive:!0,force:!0})}catch{}}I.step(`Backing up ${e.name} settings...`);let a=e.backupSettings();a?.endsWith(".bak")?(I.success(E.default.green("Backup created")+E.default.dim(" -> "+a)),n.push("Backed up settings")):a?I.success(E.default.green("Backup skipped")+E.default.dim(" \u2014 no changes needed")):I.warn(E.default.yellow("No existing settings to backup")+" \u2014 a new one will be created"),I.step(`Configuring ${e.name} hooks...`);let c=e.configureAllHooks(r);for(let d of c)I.info(E.default.dim(` ${d}`)),n.push(d);I.success(E.default.green("Hooks configured")+E.default.dim(` \u2014 ${e.name}`)),I.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 m=Ie(r,d);try{qk(m,Bk.F_OK),Fj(m,493),u.push(m)}catch{}}u.length>0?(I.success(E.default.green("Permissions set")+E.default.dim(` \u2014 ${u.length} hook script(s)`)),n.push(`Set ${u.length} hook scripts as executable`)):I.error(E.default.red("No hook scripts found")+E.default.dim(" \u2014 expected in "+Ie(r,"hooks"))),n.length>0?fu(n.map(d=>E.default.green(" + ")+d).join(`
588
- `),"Changes Applied"):I.info(E.default.dim("No changes were needed."));let l=e.name==="Claude Code"?"/reload-plugins, new terminal, or restart session":"new terminal or restart session";I.warn(E.default.yellow("Restart for new MCP tools to take effect.")+E.default.dim(` (${l})`)),I.step("Running doctor to verify..."),console.log();try{let d=Ie(r,"cli.bundle.mjs"),m=Ie(r,"build","cli.js"),f=Hn(d)?d:m;Un("node",[f,"doctor"],{stdio:"inherit",timeout:3e4,cwd:r})}catch{I.warn(E.default.yellow("Doctor had warnings")+E.default.dim(` \u2014 restart your ${e.name} session to pick up the new version`))}}export{b9 as toUnixPath};
602
+ ${p}
603
+ `);let f=r("node",[mt(d,"server.mjs")],{cwd:d,env:{...process.env,PORT:String(t),INSIGHT_SESSION_DIR:u,INSIGHT_CONTENT_DIR:l},stdio:"inherit"});f.on("error",()=>{}),await new Promise(_=>setTimeout(_,1500));try{let{request:_}=await import("node:http");await new Promise((y,x)=>{let k=_(`http://127.0.0.1:${t}/api/overview`,{timeout:3e3},T=>{y(),T.resume()});k.on("error",x),k.on("timeout",()=>{k.destroy(),x(new Error("timeout"))}),k.end()})}catch{console.error(`
604
+ Error: Port ${t} appears to be in use. Either a previous dashboard is still running, or another service is using this port.`),console.error(`
605
+ 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}`),f.kill(),process.exit(1)}let g=process.platform;try{g==="darwin"?e(`open "${p}"`,{stdio:"pipe"}):g==="win32"?e(`start "" "${p}"`,{stdio:"pipe"}):e(`xdg-open "${p}" 2>/dev/null || sensible-browser "${p}" 2>/dev/null`,{stdio:"pipe"})}catch{}process.on("SIGINT",()=>{f.kill(),process.exit(0)}),process.on("SIGTERM",()=>{f.kill(),process.exit(0)})}catch(e){let r=e instanceof Error?e.message:String(e);console.error(`
606
+ Insight error: ${r}`),process.exit(1)}}async function fM(){process.stdout.isTTY&&console.clear();let t=cn(),e=await cs(t.platform);pu(E.default.bgCyan(E.default.black(" context-mode upgrade "))),I.info(`Platform: ${E.default.cyan(e.name)}`+E.default.dim(` (${t.confidence} confidence)`));let r=yi(),n=[],o=fu();I.step("Pulling latest from GitHub...");let s=Wk(),i=mt(nM(),`context-mode-upgrade-${Date.now()}`);o.start("Cloning mksglu/context-mode");try{Wn("git",["clone","--depth","1","https://github.com/mksglu/context-mode.git",i],{stdio:"pipe",timeout:3e4}),o.stop("Downloaded");let d=i,h=JSON.parse(eu(Ae(d,"package.json"),"utf-8")).version??"unknown";if(h===s){I.success(E.default.green("Already on latest")+` \u2014 v${s}`),Yo(i,{recursive:!0,force:!0});return}else I.info(`Update available: ${E.default.yellow("v"+s)} \u2192 ${E.default.green("v"+h)}`);o.start("Installing dependencies & building"),Wn("npm",["install","--no-audit","--no-fund"],{cwd:d,stdio:"pipe",timeout:12e4}),Wn("npm",["run","build"],{cwd:d,stdio:"pipe",timeout:6e4}),o.stop("Built successfully"),o.start("Updating files in-place");let f=[...JSON.parse(eu(Ae(d,"package.json"),"utf-8")).files||[],"src","package.json"];for(let _ of f)try{Yo(Ae(r,_),{recursive:!0,force:!0}),qk(Ae(d,_),Ae(r,_),{recursive:!0})}catch{}let g={mcpServers:{"context-mode":{command:"node",args:[Ae(r,"start.mjs")]}}};if(Xj(Ae(r,".mcp.json"),JSON.stringify(g,null,2)+`
607
+ `),o.stop(E.default.green(`Updated in-place to v${h}`)),e.updatePluginRegistry(r,h),I.info(E.default.dim(" Registry synced to "+r)),o.start("Installing production dependencies"),Wn("npm",["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{Wn("npm",["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 y=_ instanceof Error?_.message:String(_);o.stop(E.default.yellow("Native addon rebuild warning")),I.warn(E.default.yellow("better-sqlite3 rebuild issue")+` \u2014 ${y}`+E.default.dim(`
608
+ Try manually: cd "${r}" && npm rebuild better-sqlite3`))}}o.start("Updating npm global package");try{Wn("npm",["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")),I.info(E.default.dim(" Could not update global npm \u2014 may need sudo or standalone install"))}Yo(i,{recursive:!0,force:!0});try{let _=Ae(Jh(),".claude","plugins","installed_plugins.json");if(wr(_)){let x=JSON.parse(eu(_,"utf-8"))?.plugins?.["context-mode@context-mode"];if(Array.isArray(x))for(let k of x){let T=k.installPath;if(T&&T!==r&&wr(T)){let Z=Ae(d,"skills");wr(Z)&&(qk(Z,Ae(T,"skills"),{recursive:!0}),n.push("Synced skills to active install path"))}}}}catch{}n.push(h!==s?`Updated v${s} \u2192 v${h}`:`Reinstalled v${s} from GitHub`),I.success(E.default.green("Plugin reinstalled from GitHub!")+E.default.dim(` \u2014 v${h}`))}catch(d){let m=d instanceof Error?d.message:String(d);o.stop(E.default.red("Update failed")),I.error(E.default.red("GitHub pull failed")+` \u2014 ${m}`),I.info(E.default.dim("Continuing with hooks/settings fix..."));try{Yo(i,{recursive:!0,force:!0})}catch{}}I.step(`Backing up ${e.name} settings...`);let a=e.backupSettings();a?.endsWith(".bak")?(I.success(E.default.green("Backup created")+E.default.dim(" -> "+a)),n.push("Backed up settings")):a?I.success(E.default.green("Backup skipped")+E.default.dim(" \u2014 no changes needed")):I.warn(E.default.yellow("No existing settings to backup")+" \u2014 a new one will be created"),I.step(`Configuring ${e.name} hooks...`);let c=e.configureAllHooks(r);for(let d of c)I.info(E.default.dim(` ${d}`)),n.push(d);I.success(E.default.green("Hooks configured")+E.default.dim(` \u2014 ${e.name}`)),I.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 m=Ae(r,d);try{Bk(m,Vk.F_OK),tM(m,493),u.push(m)}catch{}}u.length>0?(I.success(E.default.green("Permissions set")+E.default.dim(` \u2014 ${u.length} hook script(s)`)),n.push(`Set ${u.length} hook scripts as executable`)):I.error(E.default.red("No hook scripts found")+E.default.dim(" \u2014 expected in "+Ae(r,"hooks"))),n.length>0?mu(n.map(d=>E.default.green(" + ")+d).join(`
609
+ `),"Changes Applied"):I.info(E.default.dim("No changes were needed."));let l=e.name==="Claude Code"?"/reload-plugins, new terminal, or restart session":"new terminal or restart session";I.warn(E.default.yellow("Restart for new MCP tools to take effect.")+E.default.dim(` (${l})`)),I.step("Running doctor to verify..."),console.log();try{let d=Ae(r,"cli.bundle.mjs"),m=Ae(r,"build","cli.js"),h=wr(d)?d:m;Wn("node",[h,"doctor"],{stdio:"inherit",timeout:3e4,cwd:r})}catch{I.warn(E.default.yellow("Doctor had warnings")+E.default.dim(` \u2014 restart your ${e.name} session to pick up the new version`))}}export{iB as toUnixPath};