context-mode 1.0.90 → 1.0.91

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/cli.bundle.mjs CHANGED
@@ -1,18 +1,18 @@
1
1
  #!/usr/bin/env node
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)+`
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(($M,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((aD,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,xD,ts,$g,vD,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__"],xD=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],vD=[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
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)+`
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,TD,PD,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"},TD=[Oe.BEFORE_TOOL,Oe.SESSION_START],PD=[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
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)+`
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,zD,jD,Ag=v(()=>{"use strict";on={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},zD=[on.BEFORE,on.AFTER],jD=[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,HD,qD,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"},HD=[an.TOOL_CALL_BEFORE,an.TOOL_CALL_AFTER],qD=[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
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
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)+`
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,iL,aL,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"},iL=[vt.PRE_TOOL_USE,vt.SESSION_START],aL=[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,fL,hL,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"},fL=[St.PRE_TOOL_USE,St.SESSION_START],hL=[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
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
14
14
 
15
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});function 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
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,IL,AL,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("|"),IL=[Ce.PRE_TOOL_USE],AL=[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
16
16
 
17
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
18
18
 
@@ -43,7 +43,7 @@ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_inde
43
43
  path: iss.path ? [${$n(y)}, ...iss.path] : [${$n(y)}]
44
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>
45
45
 
46
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let 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
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,MF,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}}})},MF=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,QF,fR,hR,Tp,_t,Rs,Vx,He,Pt,Rt,qe,ba,Wx,Pp,Gx,Kx,Rp,Os,D,Op,Jx,Yx,eZ,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,tZ,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,rZ,rO,ko,nO,nZ,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,oZ,sZ,iZ,aZ,cZ,uZ,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(),QF=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]),eZ=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()})}),tZ=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()}),rZ=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()}),nZ=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()}),oZ=ge([$a,Cp,Da,Lp,Na,bo,vo,So,Aa,DR,FR,ko,za,Ta,Ra,Oa,Ia]),sZ=ge([wa,Ea,Ip,LO,zs]),iZ=ge([ka,Fp,Zp,Ma,Up,Pa,Ca,yo]),aZ=ge([$a,fO,OO,DO,Ta,Ra,Oa,Ia]),cZ=ge([wa,Ea,iO,UR,jR,nO,XR,zs,IO]),uZ=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
47
47
  ]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
48
48
  ]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
49
49
  `:`[${n[c]}\r
@@ -51,10 +51,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
51
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
52
  || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,G._)`+${o}`);return;case"integer":n.elseIf((0,G._)`${i} === "boolean" || ${o} === null
53
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},
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(($q,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((Eq,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((Iq,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((Aq,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((Nq,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((zq,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},
55
55
  missingProperty: ${n},
56
56
  depsCount: ${e},
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)+`
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((k4,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
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
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
60
60
 
@@ -336,11 +336,11 @@ stdout:
336
336
  ${n}
337
337
 
338
338
  stderr:
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(`
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 $j(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}function Go(t){return t>=1024*1024?`${(t/1024/1024).toFixed(1)} MB`:t>=1024?`${(t/1024).toFixed(1)} KB`:`${Math.round(t)} B`}function Pj(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=Pj(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"&&$j(r,e)&&n.push(`Update available: v${e} -> v${r} | ctx_upgrade`),n.join(`
340
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
+ `)}var Ej,Tj,Ko,Rk=v(()=>{"use strict";Ej={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"},Tj={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:Ej[N.category]||N.category,preview:Z.get(N.category)?Array.from(Z.get(N.category)).join(", "):"",why:Tj[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 Rj}from"node:crypto";import{existsSync as ot,unlinkSync as Xr,readdirSync as Oj,readFileSync as jk,writeFileSync as Mk,rmSync as Fh,mkdirSync as Uh,cpSync as Cj,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 Ij}from"node:url";import{homedir as Hh,tmpdir as qh}from"node:os";import{request as Aj}from"node:https";function Nj(t){try{let e=Bn();if(!ot(e))return;let r=Oj(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 zj(){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=zj().replace(/\\/g,"/");return Rj("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 Nj(cr),cr}async function Dj(){return new Promise(t=>{let e=Aj("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 Lj(){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 Fj(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}function Zj(){return!tn||tn==="unknown"?!1:Fj(tn,en)}function Uj(){if(!Zj())return!1;let t=Date.now();if(Wc>=jj){if(t-Ck<Mj)return!1;Wc=0}return Wc===0&&(Ck=t),Wc++,!0}function H(t,e){if(Uj()&&e.content.length>0){let n=Lj();e.content[0].text=`\u26A0\uFE0F context-mode v${en} outdated \u2192 v${tn} available. Upgrade: ${n}
342
342
 
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
+ `+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 Hj(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]===Vj){for(e.push(r),n++;n<t.length&&t[n]!==Wj;)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)+`
344
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(`
345
345
 
346
346
  `)}function Fk(t,e,r,n=80*1024){let o=[],s=0;for(let i of e){if(s>n){o.push(`## ${i}
@@ -350,7 +350,7 @@ Use search(queries: ["..."]) to query this content. Use source: "${n.label}" to
350
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(`
351
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(`
352
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(`
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
+ `)}function Gh(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function Kj(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 Jj(){return Dh||(Dh=zk(import.meta.url).resolve("turndown")),Dh}function Yj(){return Lh||(Lh=zk(import.meta.url).resolve("turndown-plugin-gfm")),Lh}function Xj(t,e){let r=JSON.stringify(Jj()),n=JSON.stringify(Yj()),o=JSON.stringify(e);return`
354
354
  const TurndownService = require(${r});
355
355
  const { gfm } = require(${n});
356
356
  const fs = require('fs');
@@ -396,12 +396,12 @@ async function main() {
396
396
  emit('text', text);
397
397
  }
398
398
  main();
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:
399
+ `}function Nk(){return{prepare:()=>({run:()=>{},get:(...t)=>({cnt:0,compact_count:0,minutes:null,rate:0,avg:0,outcome:"exploratory"}),all:()=>[]})}}async function Qj(){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{}Dj().then(s=>{s!=="unknown"&&(tn=s)}),console.error(`Context Mode MCP server v${en} running on stdio`),console.error(`Detected runtimes:
400
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
+ 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,jj,Mj,qj,Bj,Vj,Wj,Yc,Xc,qn,Mh,Gj,Ik,Ak,Dh,Lh,Hk=v(()=>{"use strict";Gb();Xb();Sh();wh();hk();kk();Ci();wk();Ek();Tk();gi();Rk();wo();ur=Qr(Ij(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}
402
402
  `)});process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
403
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
+ `);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,jj=3,Mj=3600*1e3;qj=Gc.join(", "),Bj=Jn()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",Vj="",Wj="";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.${Bj} Available: ${qj}.
405
405
 
406
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.
407
407
 
@@ -481,7 +481,7 @@ PREFER THIS OVER Read/cat for: log files, data files (CSV, JSON, XML), large sou
481
481
 
482
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
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.
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=Hj(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.
485
485
 
486
486
  WHEN TO USE:
487
487
  - Documentation from Context7, Skills, or MCP tools (API docs, framework guides, code examples)
@@ -494,7 +494,7 @@ WHEN TO USE:
494
494
  After indexing, use 'search' to retrieve specific sections on-demand.
495
495
  When \`path\` is provided, a content hash is stored for automatic stale detection in search results.
496
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.
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(),Gj=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
498
 
499
499
  TIPS: 2-4 specific terms per query. Use 'source' to scope results.
500
500
 
@@ -505,7 +505,7 @@ ctx_search is a follow-up tool that queries previously indexed content. To gathe
505
505
  \u2022 ctx_fetch_and_index(url) \u2014 fetch a URL, index it, then search with ctx_search
506
506
  \u2022 ctx_index(content, source) \u2014 manually index text content
507
507
 
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}
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>Gj&&(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}
509
509
  (output cap reached)
510
510
  `);continue}let p=e.searchWithFallback(h,c,s,i);if(p.length===0){d.push(`## ${h}
511
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}
@@ -534,7 +534,7 @@ When reporting results \u2014 terse like caveman. Technical substance exact. Onl
534
534
  To refresh: call ctx_fetch_and_index again with \`force: true\`.
535
535
 
536
536
  You MUST call search() to answer questions about this content \u2014 this cached response contains no content.
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)+`
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=Xj(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)+`
538
538
 
539
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
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.
@@ -546,7 +546,7 @@ Provide all commands to run and all queries to search \u2014 everything happens
546
546
 
547
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
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}
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(Kj,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}
550
550
 
551
551
  (skipped \u2014 batch timeout exceeded)
552
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}
@@ -562,7 +562,7 @@ Searchable terms for follow-up: ${_.join(", ")}`:""].join(`
562
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
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
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.
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..."),Cj(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
566
 
567
567
  To fix:
568
568
  - Kill the existing process: ${process.platform==="win32"?`netstat -ano | findstr :${e}`:`lsof -ti:${e} | xargs kill`}
@@ -570,11 +570,11 @@ To fix:
570
570
  `)+`
571
571
 
572
572
  Open: ${m}
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(`
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}`}]})}});Qj().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
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
575
  `){s&&(n+=sg(""));let h=o?ng(o):void 0;o&&h&&(n+=og(h))}else m===`
576
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(`
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 qM}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,GM=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"),KM=ce("\u2510","T"),JM=ce("\u2518","\u2014"),YM=ce("\u25CF",">"),XM=ce("\u25CB"," "),QM=ce("\u25FB","[\u2022]"),eD=ce("\u25FC","[+]"),tD=ce("\u25FB","[ ]"),rD=ce("\u25AA","\u2022"),mg=ce("\u2500","-"),Ew=ce("\u256E","+"),Tw=ce("\u251C","+"),Pw=ce("\u256F","+"),Rw=ce("\u2570","+"),nD=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
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(`
579
579
  `)}
580
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}
@@ -593,17 +593,17 @@ ${Se("gray",d+mg.repeat(c+2)+Pw)}
593
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
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
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(`
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}}},oD={light:ce("\u2500","-"),heavy:ce("\u2501","="),block:ce("\u2588","#")};var sD=`${Se("gray",Tr)} `;var E=Xo(gg(),1);Ci();Qu();import{execFileSync as Wn}from"node:child_process";import{readFileSync as eu,writeFileSync as eM,cpSync as qk,accessSync as Bk,existsSync as wr,rmSync as Yo,closeSync as tM,openSync as rM,chmodSync as nM,constants as Vk}from"node:fs";import{request as oM}from"node:https";import{resolve as Ae,dirname as Kh,join as mt}from"node:path";import{tmpdir as sM,devNull as iM,homedir as Jh}from"node:os";import{fileURLToPath as aM,pathToFileURL as cM}from"node:url";var uM={"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 lM(t,e){try{tM(2),rM(iM,"w")}catch{process.stderr.write=(()=>!0)}let r=uM[t]?.[e];r||process.exit(1);let n=yi();await import(cM(mt(n,r)).href)}var rn=process.argv.slice(2);rn[0]==="doctor"?fM().then(t=>process.exit(t)):rn[0]==="upgrade"?gM():rn[0]==="hook"?lM(rn[1],rn[2]):rn[0]==="insight"?hM(rn[1]?Number(rn[1]):4747):Promise.resolve().then(()=>(Hk(),Uk));function cB(t){return t.replace(/\\/g,"/")}function dM(){let t=aM(import.meta.url),e=Kh(t);return e.endsWith("/build")||e.endsWith("\\build")||e.endsWith("/src")||e.endsWith("\\src")?Ae(e,".."):e}function pM(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"?pM(t):dM()}function Wk(){try{return JSON.parse(eu(Ae(yi(),"package.json"),"utf-8")).version??"unknown"}catch{return"unknown"}}async function mM(){return new Promise(t=>{let e=oM("https://registry.npmjs.org/context-mode/latest",{headers:{Connection:"close"}},r=>{let n="";r.on("data",o=>{n+=o}),r.on("end",()=>{try{let o=JSON.parse(n);t(o.version??"unknown")}catch{t("unknown")}})});e.on("error",()=>t("unknown")),e.setTimeout(5e3,()=>{e.destroy(),t("unknown")}),e.end()})}async function fM(){process.stdout.isTTY&&console.clear();let t=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
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(`
598
+ Try: npm rebuild better-sqlite3`)))}I.step("Checking versions...");let m=Wk(),h=await mM(),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
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(`
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 hM(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(`
601
601
  context-mode Insight
602
602
  ${p}
603
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
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
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)+`
606
+ Insight error: ${r}`),process.exit(1)}}async function gM(){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(sM(),`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(eM(Ae(r,".mcp.json"),JSON.stringify(g,null,2)+`
607
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};
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),nM(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{cB as toUnixPath};