context-mode 1.0.6 → 1.0.8
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/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/build/adapters/claude-code/hooks.d.ts +3 -3
- package/build/adapters/claude-code/hooks.js +7 -3
- package/build/adapters/claude-code/index.js +1 -1
- package/build/adapters/detect.d.ts +6 -7
- package/build/adapters/detect.js +23 -24
- package/build/adapters/gemini-cli/hooks.d.ts +3 -3
- package/build/adapters/gemini-cli/hooks.js +7 -3
- package/build/adapters/gemini-cli/index.d.ts +2 -2
- package/build/adapters/gemini-cli/index.js +8 -8
- package/build/adapters/types.d.ts +1 -1
- package/build/adapters/vscode-copilot/hooks.d.ts +3 -3
- package/build/adapters/vscode-copilot/hooks.js +6 -3
- package/build/adapters/vscode-copilot/index.d.ts +2 -2
- package/build/adapters/vscode-copilot/index.js +8 -8
- package/build/cli.js +22 -13
- package/build/exit-classify.d.ts +19 -0
- package/build/exit-classify.js +12 -0
- package/build/server.js +29 -10
- package/cli.bundle.mjs +438 -0
- package/hooks/gemini-cli/aftertool.mjs +3 -3
- package/hooks/gemini-cli/precompress.mjs +3 -3
- package/hooks/gemini-cli/sessionstart.mjs +4 -4
- package/hooks/posttooluse.mjs +3 -3
- package/hooks/precompact.mjs +3 -3
- package/hooks/sessionstart.mjs +4 -4
- package/hooks/userpromptsubmit.mjs +3 -3
- package/hooks/vscode-copilot/posttooluse.mjs +3 -3
- package/hooks/vscode-copilot/precompact.mjs +3 -3
- package/hooks/vscode-copilot/sessionstart.mjs +5 -4
- package/package.json +7 -5
- package/server.bundle.mjs +407 -0
- package/skills/ctx-doctor/SKILL.md +1 -1
- package/skills/ctx-upgrade/SKILL.md +1 -1
package/cli.bundle.mjs
ADDED
|
@@ -0,0 +1,438 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
var R0=Object.create;var uc=Object.defineProperty;var I0=Object.getOwnPropertyDescriptor;var O0=Object.getOwnPropertyNames;var C0=Object.getPrototypeOf,z0=Object.prototype.hasOwnProperty;var $=(t,e)=>()=>(t&&(e=t(t=0)),e);var R=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),wt=(t,e)=>{for(var r in e)uc(t,r,{get:e[r],enumerable:!0})},N0=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of O0(e))!z0.call(t,o)&&o!==r&&uc(t,o,{get:()=>e[o],enumerable:!(n=I0(e,o))||n.enumerable});return t};var bn=(t,e,r)=>(r=t!=null?R0(C0(t)):{},N0(e||!t||!t.__esModule?uc(r,"default",{value:t,enumerable:!0}):r,t));var dc=R((Bz,lc)=>{var Ns=process||{},Rm=Ns.argv||[],zs=Ns.env||{},A0=!(zs.NO_COLOR||Rm.includes("--no-color"))&&(!!zs.FORCE_COLOR||Rm.includes("--color")||Ns.platform==="win32"||(Ns.stdout||{}).isTTY&&zs.TERM!=="dumb"||!!zs.CI),j0=(t,e,r=t)=>n=>{let o=""+n,s=o.indexOf(e,t.length);return~s?t+M0(o,e,r,s)+e:t+o+e},M0=(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)},Im=(t=A0)=>{let e=t?j0:()=>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")}};lc.exports=Im();lc.exports.createColors=Im});var fc=R((Gz,Om)=>{"use strict";var pc={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"},D0={up:(t=1)=>"\x1B[S".repeat(t),down:(t=1)=>"\x1B[T".repeat(t)},Z0={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?pc.up():"");return t&&(e+=pc.left),e}};Om.exports={cursor:pc,scroll:D0,erase:Z0,beep:"\x07"}});import{execSync as kc}from"node:child_process";import{existsSync as k$}from"node:fs";function ze(t){try{let e=Fm?`where ${t}`:`command -v ${t}`;return kc(e,{stdio:"pipe"}),!0}catch{return!1}}function T$(){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(k$(e))return e;try{let r=kc("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 kt(t){try{return kc(`${t} --version`,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function $n(){let t=ze("bun");return{javascript:t?"bun":"node",typescript:t?"bun":ze("tsx")?"tsx":ze("ts-node")?"ts-node":null,python:ze("python3")?"python3":ze("python")?"python":null,shell:Fm?T$()??(ze("sh")?"sh":ze("powershell")?"powershell":"cmd.exe"):ze("bash")?"bash":"sh",ruby:ze("ruby")?"ruby":null,go:ze("go")?"go":null,rust:ze("rustc")?"rustc":null,php:ze("php")?"php":null,perl:ze("perl")?"perl":null,r:ze("Rscript")?"Rscript":ze("r")?"r":null,elixir:ze("elixir")?"elixir":null}}function po(){return ze("bun")}function qs(t){let e=[],r=t.javascript==="bun";return e.push(` JavaScript: ${t.javascript} (${kt(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${kt(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${kt(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${kt(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${kt(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${kt(t.go)})`),t.rust&&e.push(` Rust: ${t.rust} (${kt(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${kt(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${kt(t.perl)})`),t.r&&e.push(` R: ${t.r} (${kt(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${kt(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 Us(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 Hm(t,e,r){switch(e){case"javascript":return t.javascript==="bun"?["bun","run",r]:["node",r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript==="bun"?["bun","run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}var Fm,Fs=$(()=>{"use strict";Fm=process.platform==="win32"});function fo(t,e){let r=Hs[e],n=Tc(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function Tc(t,e){if(e){let r=Hs[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}var Tt,E$,Vm,Hs,R2,I2,Bm=$(()=>{"use strict";Tt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},E$=["Bash","WebFetch","Read","Grep","Agent","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"],Vm=E$.join("|"),Hs={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},R2=[Tt.PRE_TOOL_USE,Tt.SESSION_START],I2=[Tt.POST_TOOL_USE,Tt.PRE_COMPACT,Tt.USER_PROMPT_SUBMIT]});var Rc={};wt(Rc,{ClaudeCodeAdapter:()=>Pc});import{createHash as Gm}from"node:crypto";import{readFileSync as mo,writeFileSync as Vs,mkdirSync as P$,copyFileSync as R$,accessSync as Km,readdirSync as I$,chmodSync as O$,constants as Wm}from"node:fs";import{resolve as Dt,join as Ec}from"node:path";import{homedir as Mr}from"node:os";var Pc,Ic=$(()=>{"use strict";Bm();Pc=class{name="Claude Code";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{updatedInput:e.updatedInput};if(e.decision==="context"&&e.additionalContext)return{additionalContext:e.additionalContext};if(e.decision==="ask")return{permissionDecision:"ask"}}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),e.updatedOutput&&(r.updatedMCPToolOutput=e.updatedOutput),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Dt(Mr(),".claude","settings.json")}getSessionDir(){let e=Ec(Mr(),".claude","context-mode","sessions");return P$(e,{recursive:!0}),e}getSessionDBPath(e){let r=Gm("sha256").update(e).digest("hex").slice(0,16);return Ec(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Gm("sha256").update(e).digest("hex").slice(0,16);return Ec(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){let r=`node ${e}/hooks/pretooluse.mjs`;return{PreToolUse:["Bash","WebFetch","Read","Grep","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].map(o=>({matcher:o,hooks:[{type:"command",command:r}]})),PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{let e=mo(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){Vs(this.getSettingsPath(),JSON.stringify(e,null,2)+`
|
|
4
|
+
`,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"PreToolUse hook",status:"fail",message:"Could not read ~/.claude/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=o?.PreToolUse;if(s&&s.length>0){let a=s.some(c=>fo(c,Tt.PRE_TOOL_USE));r.push({check:"PreToolUse hook",status:a?"pass":"fail",message:a?"PreToolUse hook configured":"PreToolUse exists but does not point to pretooluse.mjs",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"PreToolUse hook",status:"fail",message:"No PreToolUse hooks found",fix:"context-mode upgrade"});let i=o?.SessionStart;if(i&&i.length>0){let a=i.some(c=>fo(c,Tt.SESSION_START));r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"SessionStart exists but does not point to sessionstart.mjs",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 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=Dt(Mr(),".claude","plugins","installed_plugins.json"),o=JSON.parse(mo(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=[Dt(Mr(),".claude"),Dt(Mr(),".config","claude")];for(let r of e){let n=Dt(r,"plugins","cache","context-mode","context-mode");try{let s=I$(n).filter(i=>/^\d+\.\d+\.\d+/.test(i)).sort((i,a)=>{let c=i.split(".").map(Number),u=a.split(".").map(Number);for(let l=0;l<3;l++)if((c[l]??0)!==(u[l]??0))return(c[l]??0)-(u[l]??0);return 0});if(s.length>0)return s[s.length-1]}catch{}}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[],s=[Tt.PRE_TOOL_USE,Tt.SESSION_START];for(let i of s){let a=Tc(i,e);if(i===Tt.PRE_TOOL_USE){let c={matcher:Vm,hooks:[{type:"command",command:a}]},u=n.PreToolUse;if(u&&Array.isArray(u)){let l=u.findIndex(d=>fo(d,i));l>=0?(u[l]=c,o.push(`Updated existing ${i} hook entry`)):(u.push(c),o.push(`Added ${i} hook entry`)),n.PreToolUse=u}else n.PreToolUse=[c],o.push(`Created ${i} hooks section`)}else{let c={matcher:"",hooks:[{type:"command",command:a}]},u=n[i];if(u&&Array.isArray(u)){let l=u.findIndex(d=>fo(d,i));l>=0?(u[l]=c,o.push(`Updated existing ${i} hook entry`)):(u.push(c),o.push(`Added ${i} hook entry`)),n[i]=u}else n[i]=[c],o.push(`Created ${i} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{Km(e,Wm.R_OK);let r=e+".bak";return R$(e,r),r}catch{return null}}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(Hs)){let o=Dt(e,"hooks",n);try{Km(o,Wm.R_OK),O$(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=Dt(Mr(),".claude","plugins","installed_plugins.json"),o=JSON.parse(mo(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();Vs(n,JSON.stringify(o,null,2)+`
|
|
5
|
+
`,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"CLAUDE.md",globalPath:Dt(Mr(),".claude","CLAUDE.md"),projectRelativePath:"CLAUDE.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Dt(e,n.projectRelativePath),s=Dt(r,"configs","claude-code",n.fileName);try{let i=mo(s,"utf-8");try{let a=mo(o,"utf-8");return a.includes("context-mode")?null:(Vs(o,a.trimEnd()+`
|
|
6
|
+
|
|
7
|
+
`+i,"utf-8"),o)}catch{return Vs(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return e.session_id?e.session_id:process.env.CLAUDE_SESSION_ID?process.env.CLAUDE_SESSION_ID:`pid-${process.ppid}`}}});function Sn(t,e){let r=Oc[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var Ee,Oc,M2,D2,Jm=$(()=>{"use strict";Ee={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},Oc={[Ee.BEFORE_TOOL]:"beforetool.mjs",[Ee.AFTER_TOOL]:"aftertool.mjs",[Ee.PRE_COMPRESS]:"precompress.mjs",[Ee.SESSION_START]:"sessionstart.mjs"},M2=[Ee.BEFORE_TOOL,Ee.SESSION_START],D2=[Ee.AFTER_TOOL,Ee.PRE_COMPRESS]});var th={};wt(th,{GeminiCLIAdapter:()=>Cc});import{createHash as Ym}from"node:crypto";import{readFileSync as ho,writeFileSync as Bs,mkdirSync as Xm,copyFileSync as C$,accessSync as Qm,chmodSync as z$,constants as eh}from"node:fs";import{resolve as fr,join as Gs}from"node:path";import{homedir as wn}from"node:os";var Cc,rh=$(()=>{"use strict";Jm();Cc=class{name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return fr(wn(),".gemini","settings.json")}getSessionDir(){let e=Gs(wn(),".gemini","context-mode","sessions");return Xm(e,{recursive:!0}),e}getSessionDBPath(e){let r=Ym("sha256").update(e).digest("hex").slice(0,16);return Gs(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Ym("sha256").update(e).digest("hex").slice(0,16);return Gs(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[Ee.BEFORE_TOOL]:[{matcher:"",hooks:[{type:"command",command:Sn(Ee.BEFORE_TOOL,e)}]}],[Ee.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Sn(Ee.AFTER_TOOL,e)}]}],[Ee.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Sn(Ee.PRE_COMPRESS,e)}]}],[Ee.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Sn(Ee.SESSION_START,e)}]}]}}readSettings(){try{let e=ho(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=fr(wn(),".gemini");Xm(r,{recursive:!0}),Bs(this.getSettingsPath(),JSON.stringify(e,null,2)+`
|
|
8
|
+
`,"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?.[Ee.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?.[Ee.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=fr(wn(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(ho(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:Ee.BEFORE_TOOL},{name:Ee.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:Sn(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}backupSettings(){let e=this.getSettingsPath();try{Qm(e,eh.R_OK);let r=e+".bak";return C$(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=Gs(e,"hooks","gemini-cli");for(let o of Object.values(Oc)){let s=fr(n,o);try{Qm(s,eh.R_OK),z$(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=fr(wn(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(ho(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),Bs(n,JSON.stringify(o,null,2)+`
|
|
9
|
+
`,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:fr(wn(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=fr(e,n.projectRelativePath),s=fr(r,"configs","gemini-cli",n.fileName);try{let i=ho(s,"utf-8");try{let a=ho(o,"utf-8");return a.includes("context-mode")?null:(Bs(o,a.trimEnd()+`
|
|
10
|
+
|
|
11
|
+
`+i,"utf-8"),o)}catch{return Bs(o,i,"utf-8"),o}}catch{return null}}getProjectDir(){return process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var Dr,V2,B2,nh=$(()=>{"use strict";Dr={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},V2=[Dr.BEFORE,Dr.AFTER],B2=[Dr.COMPACTING]});var sh={};wt(sh,{OpenCodeAdapter:()=>jc});import{createHash as oh}from"node:crypto";import{readFileSync as Ks,writeFileSync as zc,mkdirSync as N$,copyFileSync as A$,accessSync as j$,constants as M$}from"node:fs";import{resolve as Zt,join as Nc}from"node:path";import{homedir as Ac}from"node:os";var jc,ih=$(()=>{"use strict";nh();jc=class{name="OpenCode";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.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 Zt("opencode.json")}getSessionDir(){let e=Nc(Ac(),".config","opencode","context-mode","sessions");return N$(e,{recursive:!0}),e}getSessionDBPath(e){let r=oh("sha256").update(e).digest("hex").slice(0,16);return Nc(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=oh("sha256").update(e).digest("hex").slice(0,16);return Nc(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[Dr.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[Dr.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[Dr.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[Zt("opencode.json"),Zt(".opencode","opencode.json")];for(let r of e)try{let n=Ks(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=Zt("opencode.json");zc(r,JSON.stringify(e,null,2)+`
|
|
12
|
+
`,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read opencode.json",fix:"context-mode upgrade"}),r;let o=n.plugin;if(o&&Array.isArray(o)){let s=o.some(i=>i.includes("context-mode"));r.push({check:"Plugin registration",status:s?"pass":"fail",message:s?"context-mode found in plugin array":"context-mode not found in plugin array",fix:s?void 0:"context-mode upgrade"})}else r.push({check:"Plugin registration",status:"fail",message:"No plugin array found in opencode.json",fix:"context-mode upgrade"});return r.push({check:"SessionStart hook",status:"warn",message:"SessionStart not supported in OpenCode (see issues #14808, #5409)"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read opencode.json"};let r=e.plugin;return r&&Array.isArray(r)&&r.some(o=>o.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in opencode.json plugin array",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=Zt(Ac(),".cache","opencode","node_modules","context-mode","package.json"),r=JSON.parse(Ks(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=[Zt("opencode.json"),Zt(".opencode","opencode.json")];for(let r of e)try{j$(r,M$.R_OK);let n=r+".bak";return A$(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:Zt(Ac(),".config","opencode","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Zt(e,n.projectRelativePath),s=Zt(r,"configs","opencode",n.fileName);try{let i=Ks(s,"utf-8");try{let a=Ks(o,"utf-8");return a.includes("context-mode")?null:(zc(o,a.trimEnd()+`
|
|
13
|
+
|
|
14
|
+
`+i,"utf-8"),o)}catch{return zc(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var uh={};wt(uh,{CodexAdapter:()=>Zc});import{createHash as ah}from"node:crypto";import{readFileSync as go,writeFileSync as ch,mkdirSync as D$,copyFileSync as Z$,accessSync as L$,constants as q$}from"node:fs";import{resolve as yo,join as Mc,dirname as U$}from"node:path";import{fileURLToPath as F$}from"node:url";import{homedir as Dc}from"node:os";var Zc,lh=$(()=>{"use strict";Zc=class{name="Codex CLI";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Codex CLI does not support hooks")}parsePostToolUseInput(e){throw new Error("Codex CLI does not support hooks")}parsePreCompactInput(e){throw new Error("Codex CLI does not support hooks")}parseSessionStartInput(e){throw new Error("Codex CLI does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return yo(Dc(),".codex","config.toml")}getSessionDir(){let e=Mc(Dc(),".codex","context-mode","sessions");return D$(e,{recursive:!0}),e}getSessionDBPath(e){let r=ah("sha256").update(e).digest("hex").slice(0,16);return Mc(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=ah("sha256").update(e).digest("hex").slice(0,16);return Mc(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{return{_raw_toml:go(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Codex CLI does not support hooks (PRs #2904, #9796 closed without merge). Only MCP integration is available."}]}checkPluginRegistration(){try{let e=go(this.getSettingsPath(),"utf-8"),r=e.includes("context-mode"),n=e.includes("[mcp_servers]")||e.includes("[mcp_servers.");return r&&n?{check:"MCP registration",status:"pass",message:"context-mode found in [mcp_servers] config"}:n?{check:"MCP registration",status:"fail",message:"[mcp_servers] section exists but context-mode not found",fix:"Add context-mode to [mcp_servers] in ~/.codex/config.toml"}:{check:"MCP registration",status:"fail",message:"No [mcp_servers] section in config.toml",fix:"Add [mcp_servers.context-mode] to ~/.codex/config.toml"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.codex/config.toml"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{L$(e,q$.R_OK);let r=e+".bak";return Z$(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:yo(Dc(),".codex","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=yo(e,n.projectRelativePath),s=yo(r,"configs","codex",n.fileName);try{let i=go(s,"utf-8");try{let a=go(o,"utf-8");return a.includes("context-mode")?null:(ch(o,a.trimEnd()+`
|
|
15
|
+
|
|
16
|
+
`+i,"utf-8"),o)}catch{return ch(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=yo(U$(F$(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return go(e,"utf-8")}catch{return`# context-mode
|
|
17
|
+
|
|
18
|
+
Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});function kn(t,e){let r=Ws[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/${r}"`:`context-mode hook vscode-copilot ${t.toLowerCase()}`}var pe,Ws,oN,sN,dh=$(()=>{"use strict";pe={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},Ws={[pe.PRE_TOOL_USE]:"pretooluse.mjs",[pe.POST_TOOL_USE]:"posttooluse.mjs",[pe.PRE_COMPACT]:"precompact.mjs",[pe.SESSION_START]:"sessionstart.mjs"},oN=[pe.PRE_TOOL_USE,pe.SESSION_START],sN=[pe.POST_TOOL_USE,pe.PRE_COMPACT]});var fh={};wt(fh,{VSCodeCopilotAdapter:()=>Fc});import{createHash as ph}from"node:crypto";import{readFileSync as Tn,writeFileSync as Js,mkdirSync as Ys,copyFileSync as H$,accessSync as Lc,existsSync as V$,chmodSync as B$,constants as qc}from"node:fs";import{resolve as Qe,join as mr}from"node:path";import{homedir as Uc}from"node:os";var Fc,mh=$(()=>{"use strict";dh();Fc=class{name="VS Code Copilot";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:pe.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:pe.PRE_TOOL_USE,additionalContext:e.additionalContext}};if(e.decision==="ask")return{permissionDecision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{hookSpecificOutput:{hookEventName:pe.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:pe.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Qe(".github","hooks","context-mode.json")}getSessionDir(){let e=Qe(".github","context-mode","sessions"),r=mr(Uc(),".vscode","context-mode","sessions"),n=V$(Qe(".github"))?e:r;return Ys(n,{recursive:!0}),n}getSessionDBPath(e){let r=ph("sha256").update(e).digest("hex").slice(0,16);return mr(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=ph("sha256").update(e).digest("hex").slice(0,16);return mr(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[pe.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:kn(pe.PRE_TOOL_USE,e)}]}],[pe.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:kn(pe.POST_TOOL_USE,e)}]}],[pe.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:kn(pe.PRE_COMPACT,e)}]}],[pe.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:kn(pe.SESSION_START,e)}]}]}}readSettings(){let e=[this.getSettingsPath(),Qe(".claude","settings.json")];for(let r of e)try{let n=Tn(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath(),n=Qe(".github","hooks");Ys(n,{recursive:!0}),Js(r,JSON.stringify(e,null,2)+`
|
|
19
|
+
`,"utf-8")}validateHooks(e){let r=[],n=Qe(".github","hooks");try{Lc(n,qc.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=Qe(n,"context-mode.json");try{let s=Tn(o,"utf-8"),a=JSON.parse(s).hooks;a?.[pe.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in context-mode.json",fix:"context-mode upgrade"}),a?.[pe.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in context-mode.json",fix:"context-mode upgrade"})}catch{r.push({check:"Hook configuration",status:"fail",message:"Could not read .github/hooks/context-mode.json",fix:"context-mode upgrade"})}return r.push({check:"API stability",status:"warn",message:"VS Code Copilot hooks are in preview \u2014 API may change without notice"}),r.push({check:"Matcher support",status:"warn",message:"Matchers are parsed but IGNORED \u2014 all hooks fire on all tools"}),r}checkPluginRegistration(){try{let e=Qe(".vscode","mcp.json"),r=Tn(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=[mr(Uc(),".vscode","extensions"),mr(Uc(),".vscode-insiders","extensions")];for(let r of e)try{let n=Tn(mr(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}configureAllHooks(e){let r=[],n={hooks:{}},o=n.hooks,s=[pe.PRE_TOOL_USE,pe.POST_TOOL_USE,pe.PRE_COMPACT,pe.SESSION_START];for(let c of s)Ws[c]&&(o[c]=[{matcher:"",hooks:[{type:"command",command:kn(c,e)}]}],r.push(`Configured ${c} hook`));let i=Qe(".github","hooks");Ys(i,{recursive:!0});let a=Qe(i,"context-mode.json");return Js(a,JSON.stringify(n,null,2)+`
|
|
20
|
+
`,"utf-8"),r.push(`Wrote hook config to ${a}`),r}backupSettings(){let e=this.getSettingsPath();try{Lc(e,qc.R_OK);let r=e+".bak";return H$(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=mr(e,"hooks","vscode-copilot");for(let o of Object.values(Ws)){let s=Qe(n,o);try{Lc(s,qc.R_OK),B$(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"copilot-instructions.md",globalPath:"",projectRelativePath:mr(".github","copilot-instructions.md")}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Qe(e,n.projectRelativePath),s=Qe(r,"configs","vscode-copilot",n.fileName);try{let i=Tn(s,"utf-8");Ys(Qe(e,".github"),{recursive:!0});try{let a=Tn(o,"utf-8");return a.includes("context-mode")?null:(Js(o,a.trimEnd()+`
|
|
21
|
+
|
|
22
|
+
`+i,"utf-8"),o)}catch{return Js(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}}});var hh={};wt(hh,{detectPlatform:()=>_o,getAdapter:()=>ei});import{existsSync as Xs}from"node:fs";import{resolve as Qs}from"node:path";import{homedir as G$}from"node:os";function _o(){if(process.env.CLAUDE_PROJECT_DIR||process.env.CLAUDE_SESSION_ID)return{platform:"claude-code",confidence:"high",reason:"CLAUDE_PROJECT_DIR or CLAUDE_SESSION_ID env var set"};if(process.env.GEMINI_PROJECT_DIR||process.env.GEMINI_CLI)return{platform:"gemini-cli",confidence:"high",reason:"GEMINI_PROJECT_DIR or GEMINI_CLI env var set"};if(process.env.OPENCODE||process.env.OPENCODE_PID)return{platform:"opencode",confidence:"high",reason:"OPENCODE or OPENCODE_PID env var set"};if(process.env.CODEX_CI||process.env.CODEX_THREAD_ID)return{platform:"codex",confidence:"high",reason:"CODEX_CI or CODEX_THREAD_ID env var set"};if(process.env.VSCODE_PID||process.env.VSCODE_CWD)return{platform:"vscode-copilot",confidence:"high",reason:"VSCODE_PID or VSCODE_CWD env var set"};let t=G$();return Xs(Qs(t,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Xs(Qs(t,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Xs(Qs(t,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Xs(Qs(t,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:{platform:"claude-code",confidence:"low",reason:"No platform detected, defaulting to Claude Code"}}async function ei(t){switch(t??_o().platform){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Ic(),Rc));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(rh(),th));return new r}case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(ih(),sh));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(lh(),uh));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(mh(),fh));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Ic(),Rc));return new r}}}var Hc=$(()=>{"use strict"});var Y,Vc,I,Lt,vo=$(()=>{(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(Y||(Y={}));(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Vc||(Vc={}));I=Y.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Lt=t=>{switch(typeof t){case"undefined":return I.undefined;case"string":return I.string;case"number":return Number.isNaN(t)?I.nan:I.number;case"boolean":return I.boolean;case"function":return I.function;case"bigint":return I.bigint;case"symbol":return I.symbol;case"object":return Array.isArray(t)?I.array:t===null?I.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?I.promise:typeof Map<"u"&&t instanceof Map?I.map:typeof Set<"u"&&t instanceof Set?I.set:typeof Date<"u"&&t instanceof Date?I.date:I.object;default:return I.unknown}}});var w,K$,et,ti=$(()=>{vo();w=Y.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),K$=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),et=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,Y.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};et.create=t=>new et(t)});var W$,er,Bc=$(()=>{ti();vo();W$=(t,e)=>{let r;switch(t.code){case w.invalid_type:t.received===I.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case w.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,Y.jsonStringifyReplacer)}`;break;case w.unrecognized_keys:r=`Unrecognized key(s) in object: ${Y.joinValues(t.keys,", ")}`;break;case w.invalid_union:r="Invalid input";break;case w.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Y.joinValues(t.options)}`;break;case w.invalid_enum_value:r=`Invalid enum value. Expected ${Y.joinValues(t.options)}, received '${t.received}'`;break;case w.invalid_arguments:r="Invalid function arguments";break;case w.invalid_return_type:r="Invalid function return type";break;case w.invalid_date:r="Invalid date";break;case w.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:Y.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case w.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case w.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case w.custom:r="Invalid input";break;case w.invalid_intersection_types:r="Intersection results could not be merged";break;case w.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case w.not_finite:r="Number must be finite";break;default:r=e.defaultError,Y.assertNever(t)}return{message:r}},er=W$});function J$(t){gh=t}function En(){return gh}var gh,ri=$(()=>{Bc();gh=er});function P(t,e){let r=En(),n=xo({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===er?void 0:er].filter(o=>!!o)});t.common.issues.push(n)}var xo,Y$,Ne,Z,Zr,qe,ni,oi,hr,Pn,Gc=$(()=>{ri();Bc();xo=t=>{let{data:e,path:r,errorMaps:n,issueData:o}=t,s=[...r,...o.path||[]],i={...o,path:s};if(o.message!==void 0)return{...o,path:s,message:o.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(i,{data:e,defaultError:a}).message;return{...o,path:s,message:a}},Y$=[];Ne=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return Z;o.status==="dirty"&&e.dirty(),n.push(o.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let o of r){let s=await o.key,i=await o.value;n.push({key:s,value:i})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:i}=o;if(s.status==="aborted"||i.status==="aborted")return Z;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||o.alwaysSet)&&(n[s.value]=i.value)}return{status:e.value,value:n}}},Z=Object.freeze({status:"aborted"}),Zr=t=>({status:"dirty",value:t}),qe=t=>({status:"valid",value:t}),ni=t=>t.status==="aborted",oi=t=>t.status==="dirty",hr=t=>t.status==="valid",Pn=t=>typeof Promise<"u"&&t instanceof Promise});var yh=$(()=>{});var z,_h=$(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(z||(z={}))});function F(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message:c}=t;return i.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:o}}function $h(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function mS(t){return new RegExp(`^${$h(t)}$`)}function Sh(t){let e=`${bh}T${$h(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function hS(t,e){return!!((e==="v4"||!e)&&aS.test(t)||(e==="v6"||!e)&&uS.test(t))}function gS(t,e){if(!nS.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),o=JSON.parse(atob(n));return!(typeof o!="object"||o===null||"typ"in o&&o?.typ!=="JWT"||!o.alg||e&&o.alg!==e)}catch{return!1}}function yS(t,e){return!!((e==="v4"||!e)&&cS.test(t)||(e==="v6"||!e)&&lS.test(t))}function _S(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function Rn(t){if(t instanceof rt){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=tt.create(Rn(n))}return new rt({...t._def,shape:()=>e})}else return t instanceof nr?new nr({...t._def,type:Rn(t.element)}):t instanceof tt?tt.create(Rn(t.unwrap())):t instanceof Ut?Ut.create(Rn(t.unwrap())):t instanceof qt?qt.create(t.items.map(e=>Rn(e))):t}function Wc(t,e){let r=Lt(t),n=Lt(e);if(t===e)return{valid:!0,data:t};if(r===I.object&&n===I.object){let o=Y.objectKeys(e),s=Y.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=Wc(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===I.array&&n===I.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let i=t[s],a=e[s],c=Wc(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===I.date&&n===I.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}function wh(t,e){return new Jr({values:t,typeName:k.ZodEnum,...F(e)})}function xh(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function kh(t,e={},r){return t?yr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=xh(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=xh(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):yr.create()}var ft,vh,V,X$,Q$,eS,tS,rS,nS,oS,sS,iS,Kc,aS,cS,uS,lS,dS,pS,bh,fS,gr,Lr,qr,Ur,Fr,In,Hr,Vr,yr,rr,Et,On,nr,rt,Br,tr,si,Gr,qt,ii,Cn,zn,ai,Kr,Wr,Jr,Yr,_r,mt,tt,Ut,Xr,Qr,Nn,vS,bo,$o,en,xS,k,bS,Th,Eh,$S,SS,Ph,wS,kS,TS,ES,PS,RS,IS,OS,CS,Jc,zS,NS,AS,jS,MS,DS,ZS,LS,qS,US,FS,HS,VS,BS,GS,KS,WS,JS,YS,XS,QS,ew,tw,rw,Rh=$(()=>{ti();ri();_h();Gc();vo();ft=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},vh=(t,e)=>{if(hr(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new et(t.common.issues);return this._error=r,this._error}}};V=class{get description(){return this._def.description}_getType(e){return Lt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Lt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ne,ctx:{common:e.parent.common,data:e.data,parsedType:Lt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Pn(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Lt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return vh(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Lt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return hr(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>hr(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Lt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(Pn(o)?o:Promise.resolve(o));return vh(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:w.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new mt({schema:this,typeName:k.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return tt.create(this,this._def)}nullable(){return Ut.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return nr.create(this)}promise(){return _r.create(this,this._def)}or(e){return Br.create([this,e],this._def)}and(e){return Gr.create(this,e,this._def)}transform(e){return new mt({...F(this._def),schema:this,typeName:k.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Xr({...F(this._def),innerType:this,defaultValue:r,typeName:k.ZodDefault})}brand(){return new bo({typeName:k.ZodBranded,type:this,...F(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Qr({...F(this._def),innerType:this,catchValue:r,typeName:k.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return $o.create(this,e)}readonly(){return en.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},X$=/^c[^\s-]{8,}$/i,Q$=/^[0-9a-z]+$/,eS=/^[0-9A-HJKMNP-TV-Z]{26}$/i,tS=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,rS=/^[a-z0-9_-]{21}$/i,nS=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,oS=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,sS=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,iS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",aS=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,cS=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,uS=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,lS=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,dS=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,pS=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,bh="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",fS=new RegExp(`^${bh}$`);gr=class t extends V{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==I.string){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_type,expected:I.string,received:s.parsedType}),Z}let n=new Ne,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:w.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:w.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?P(o,{code:w.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&P(o,{code:w.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")sS.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"email",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Kc||(Kc=new RegExp(iS,"u")),Kc.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"emoji",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")tS.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"uuid",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")rS.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"nanoid",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")X$.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cuid",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")Q$.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cuid2",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")eS.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"ulid",code:w.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),P(o,{validation:"url",code:w.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"regex",code:w.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?Sh(s).test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?fS.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?mS(s).test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?oS.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"duration",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?hS(e.data,s.version)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"ip",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?gS(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"jwt",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?yS(e.data,s.version)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cidr",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?dS.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?pS.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64url",code:w.invalid_string,message:s.message}),n.dirty()):Y.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:w.invalid_string,...z.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...z.errToObj(e)})}url(e){return this._addCheck({kind:"url",...z.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...z.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...z.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...z.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...z.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...z.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...z.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...z.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...z.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...z.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...z.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...z.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...z.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...z.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...z.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...z.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...z.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...z.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...z.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...z.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...z.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...z.errToObj(r)})}nonempty(e){return this.min(1,z.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};gr.create=t=>new gr({checks:[],typeName:k.ZodString,coerce:t?.coerce??!1,...F(t)});Lr=class t extends V{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==I.number){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_type,expected:I.number,received:s.parsedType}),Z}let n,o=new Ne;for(let s of this._def.checks)s.kind==="int"?Y.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{code:w.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),P(n,{code:w.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),P(n,{code:w.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?_S(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),P(n,{code:w.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{code:w.not_finite,message:s.message}),o.dirty()):Y.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,z.toString(r))}gt(e,r){return this.setLimit("min",e,!1,z.toString(r))}lte(e,r){return this.setLimit("max",e,!0,z.toString(r))}lt(e,r){return this.setLimit("max",e,!1,z.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:z.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:z.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:z.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:z.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:z.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:z.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:z.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:z.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:z.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:z.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&Y.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};Lr.create=t=>new Lr({checks:[],typeName:k.ZodNumber,coerce:t?.coerce||!1,...F(t)});qr=class t extends V{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==I.bigint)return this._getInvalidInput(e);let n,o=new Ne;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),P(n,{code:w.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),P(n,{code:w.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),P(n,{code:w.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):Y.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return P(r,{code:w.invalid_type,expected:I.bigint,received:r.parsedType}),Z}gte(e,r){return this.setLimit("min",e,!0,z.toString(r))}gt(e,r){return this.setLimit("min",e,!1,z.toString(r))}lte(e,r){return this.setLimit("max",e,!0,z.toString(r))}lt(e,r){return this.setLimit("max",e,!1,z.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:z.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:z.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:z.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:z.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:z.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:z.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};qr.create=t=>new qr({checks:[],typeName:k.ZodBigInt,coerce:t?.coerce??!1,...F(t)});Ur=class extends V{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==I.boolean){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:I.boolean,received:n.parsedType}),Z}return qe(e.data)}};Ur.create=t=>new Ur({typeName:k.ZodBoolean,coerce:t?.coerce||!1,...F(t)});Fr=class t extends V{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==I.date){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_type,expected:I.date,received:s.parsedType}),Z}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_date}),Z}let n=new Ne,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:w.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:w.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):Y.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:z.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:z.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};Fr.create=t=>new Fr({checks:[],coerce:t?.coerce||!1,typeName:k.ZodDate,...F(t)});In=class extends V{_parse(e){if(this._getType(e)!==I.symbol){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:I.symbol,received:n.parsedType}),Z}return qe(e.data)}};In.create=t=>new In({typeName:k.ZodSymbol,...F(t)});Hr=class extends V{_parse(e){if(this._getType(e)!==I.undefined){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:I.undefined,received:n.parsedType}),Z}return qe(e.data)}};Hr.create=t=>new Hr({typeName:k.ZodUndefined,...F(t)});Vr=class extends V{_parse(e){if(this._getType(e)!==I.null){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:I.null,received:n.parsedType}),Z}return qe(e.data)}};Vr.create=t=>new Vr({typeName:k.ZodNull,...F(t)});yr=class extends V{constructor(){super(...arguments),this._any=!0}_parse(e){return qe(e.data)}};yr.create=t=>new yr({typeName:k.ZodAny,...F(t)});rr=class extends V{constructor(){super(...arguments),this._unknown=!0}_parse(e){return qe(e.data)}};rr.create=t=>new rr({typeName:k.ZodUnknown,...F(t)});Et=class extends V{_parse(e){let r=this._getOrReturnCtx(e);return P(r,{code:w.invalid_type,expected:I.never,received:r.parsedType}),Z}};Et.create=t=>new Et({typeName:k.ZodNever,...F(t)});On=class extends V{_parse(e){if(this._getType(e)!==I.undefined){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:I.void,received:n.parsedType}),Z}return qe(e.data)}};On.create=t=>new On({typeName:k.ZodVoid,...F(t)});nr=class t extends V{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==I.array)return P(r,{code:w.invalid_type,expected:I.array,received:r.parsedType}),Z;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(P(r,{code:i?w.too_big:w.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(P(r,{code:w.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(P(r,{code:w.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((i,a)=>o.type._parseAsync(new ft(r,i,r.path,a)))).then(i=>Ne.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new ft(r,i,r.path,a)));return Ne.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:z.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:z.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:z.toString(r)}})}nonempty(e){return this.min(1,e)}};nr.create=(t,e)=>new nr({type:t,minLength:null,maxLength:null,exactLength:null,typeName:k.ZodArray,...F(e)});rt=class t extends V{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=Y.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==I.object){let u=this._getOrReturnCtx(e);return P(u,{code:w.invalid_type,expected:I.object,received:u.parsedType}),Z}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Et&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new ft(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof Et){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(P(o,{code:w.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new ft(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,f=await l.value;u.push({key:d,value:f,alwaysSet:l.alwaysSet})}return u}).then(u=>Ne.mergeObjectSync(n,u)):Ne.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return z.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:z.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:k.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of Y.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of Y.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Rn(this)}partial(e){let r={};for(let n of Y.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of Y.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof tt;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return wh(Y.objectKeys(this.shape))}};rt.create=(t,e)=>new rt({shape:()=>t,unknownKeys:"strip",catchall:Et.create(),typeName:k.ZodObject,...F(e)});rt.strictCreate=(t,e)=>new rt({shape:()=>t,unknownKeys:"strict",catchall:Et.create(),typeName:k.ZodObject,...F(e)});rt.lazycreate=(t,e)=>new rt({shape:t,unknownKeys:"strip",catchall:Et.create(),typeName:k.ZodObject,...F(e)});Br=class extends V{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function o(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let i=s.map(a=>new et(a.ctx.common.issues));return P(r,{code:w.invalid_union,unionErrors:i}),Z}if(r.common.async)return Promise.all(n.map(async s=>{let i={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:i}),ctx:i}})).then(o);{let s,i=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=i.map(c=>new et(c));return P(r,{code:w.invalid_union,unionErrors:a}),Z}}get options(){return this._def.options}};Br.create=(t,e)=>new Br({options:t,typeName:k.ZodUnion,...F(e)});tr=t=>t instanceof Kr?tr(t.schema):t instanceof mt?tr(t.innerType()):t instanceof Wr?[t.value]:t instanceof Jr?t.options:t instanceof Yr?Y.objectValues(t.enum):t instanceof Xr?tr(t._def.innerType):t instanceof Hr?[void 0]:t instanceof Vr?[null]:t instanceof tt?[void 0,...tr(t.unwrap())]:t instanceof Ut?[null,...tr(t.unwrap())]:t instanceof bo||t instanceof en?tr(t.unwrap()):t instanceof Qr?tr(t._def.innerType):[],si=class t extends V{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==I.object)return P(r,{code:w.invalid_type,expected:I.object,received:r.parsedType}),Z;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(P(r,{code:w.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),Z)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let o=new Map;for(let s of r){let i=tr(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:k.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...F(n)})}};Gr=class extends V{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(ni(s)||ni(i))return Z;let a=Wc(s.value,i.value);return a.valid?((oi(s)||oi(i))&&r.dirty(),{status:r.value,value:a.data}):(P(n,{code:w.invalid_intersection_types}),Z)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Gr.create=(t,e,r)=>new Gr({left:t,right:e,typeName:k.ZodIntersection,...F(r)});qt=class t extends V{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==I.array)return P(n,{code:w.invalid_type,expected:I.array,received:n.parsedType}),Z;if(n.data.length<this._def.items.length)return P(n,{code:w.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Z;!this._def.rest&&n.data.length>this._def.items.length&&(P(n,{code:w.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new ft(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Ne.mergeArray(r,i)):Ne.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};qt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new qt({items:t,typeName:k.ZodTuple,rest:null,...F(e)})};ii=class t extends V{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==I.object)return P(n,{code:w.invalid_type,expected:I.object,received:n.parsedType}),Z;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new ft(n,a,n.path,a)),value:i._parse(new ft(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Ne.mergeObjectAsync(r,o):Ne.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof V?new t({keyType:e,valueType:r,typeName:k.ZodRecord,...F(n)}):new t({keyType:gr.create(),valueType:e,typeName:k.ZodRecord,...F(r)})}},Cn=class extends V{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==I.map)return P(n,{code:w.invalid_type,expected:I.map,received:n.parsedType}),Z;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new ft(n,a,n.path,[u,"key"])),value:s._parse(new ft(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return Z;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of i){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return Z;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};Cn.create=(t,e,r)=>new Cn({valueType:e,keyType:t,typeName:k.ZodMap,...F(r)});zn=class t extends V{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==I.set)return P(n,{code:w.invalid_type,expected:I.set,received:n.parsedType}),Z;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(P(n,{code:w.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(P(n,{code:w.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function i(c){let u=new Set;for(let l of c){if(l.status==="aborted")return Z;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new ft(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:z.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:z.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};zn.create=(t,e)=>new zn({valueType:t,minSize:null,maxSize:null,typeName:k.ZodSet,...F(e)});ai=class t extends V{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==I.function)return P(r,{code:w.invalid_type,expected:I.function,received:r.parsedType}),Z;function n(a,c){return xo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,En(),er].filter(u=>!!u),issueData:{code:w.invalid_arguments,argumentsError:c}})}function o(a,c){return xo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,En(),er].filter(u=>!!u),issueData:{code:w.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof _r){let a=this;return qe(async function(...c){let u=new et([]),l=await a._def.args.parseAsync(c,s).catch(h=>{throw u.addIssue(n(c,h)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(h=>{throw u.addIssue(o(d,h)),u})})}else{let a=this;return qe(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new et([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new et([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:qt.create(e).rest(rr.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||qt.create([]).rest(rr.create()),returns:r||rr.create(),typeName:k.ZodFunction,...F(n)})}},Kr=class extends V{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Kr.create=(t,e)=>new Kr({getter:t,typeName:k.ZodLazy,...F(e)});Wr=class extends V{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return P(r,{received:r.data,code:w.invalid_literal,expected:this._def.value}),Z}return{status:"valid",value:e.data}}get value(){return this._def.value}};Wr.create=(t,e)=>new Wr({value:t,typeName:k.ZodLiteral,...F(e)});Jr=class t extends V{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return P(r,{expected:Y.joinValues(n),received:r.parsedType,code:w.invalid_type}),Z}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return P(r,{received:r.data,code:w.invalid_enum_value,options:n}),Z}return qe(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};Jr.create=wh;Yr=class extends V{_parse(e){let r=Y.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==I.string&&n.parsedType!==I.number){let o=Y.objectValues(r);return P(n,{expected:Y.joinValues(o),received:n.parsedType,code:w.invalid_type}),Z}if(this._cache||(this._cache=new Set(Y.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=Y.objectValues(r);return P(n,{received:n.data,code:w.invalid_enum_value,options:o}),Z}return qe(e.data)}get enum(){return this._def.values}};Yr.create=(t,e)=>new Yr({values:t,typeName:k.ZodNativeEnum,...F(e)});_r=class extends V{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==I.promise&&r.common.async===!1)return P(r,{code:w.invalid_type,expected:I.promise,received:r.parsedType}),Z;let n=r.parsedType===I.promise?r.data:Promise.resolve(r.data);return qe(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};_r.create=(t,e)=>new _r({type:t,typeName:k.ZodPromise,...F(e)});mt=class extends V{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===k.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{P(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return Z;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?Z:c.status==="dirty"?Zr(c.value):r.value==="dirty"?Zr(c.value):c});{if(r.value==="aborted")return Z;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?Z:a.status==="dirty"?Zr(a.value):r.value==="dirty"?Zr(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?Z:(a.status==="dirty"&&r.dirty(),i(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?Z:(a.status==="dirty"&&r.dirty(),i(a.value).then(()=>({status:r.value,value:a.value}))))}if(o.type==="transform")if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!hr(i))return Z;let a=o.transform(i.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>hr(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):Z);Y.assertNever(o)}};mt.create=(t,e,r)=>new mt({schema:t,typeName:k.ZodEffects,effect:e,...F(r)});mt.createWithPreprocess=(t,e,r)=>new mt({schema:e,effect:{type:"preprocess",transform:t},typeName:k.ZodEffects,...F(r)});tt=class extends V{_parse(e){return this._getType(e)===I.undefined?qe(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};tt.create=(t,e)=>new tt({innerType:t,typeName:k.ZodOptional,...F(e)});Ut=class extends V{_parse(e){return this._getType(e)===I.null?qe(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ut.create=(t,e)=>new Ut({innerType:t,typeName:k.ZodNullable,...F(e)});Xr=class extends V{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===I.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Xr.create=(t,e)=>new Xr({innerType:t,typeName:k.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...F(e)});Qr=class extends V{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Pn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new et(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new et(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Qr.create=(t,e)=>new Qr({innerType:t,typeName:k.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...F(e)});Nn=class extends V{_parse(e){if(this._getType(e)!==I.nan){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:I.nan,received:n.parsedType}),Z}return{status:"valid",value:e.data}}};Nn.create=t=>new Nn({typeName:k.ZodNaN,...F(t)});vS=Symbol("zod_brand"),bo=class extends V{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},$o=class t extends V{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?Z:s.status==="dirty"?(r.dirty(),Zr(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?Z:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:k.ZodPipeline})}},en=class extends V{_parse(e){let r=this._def.innerType._parse(e),n=o=>(hr(o)&&(o.value=Object.freeze(o.value)),o);return Pn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};en.create=(t,e)=>new en({innerType:t,typeName:k.ZodReadonly,...F(e)});xS={object:rt.lazycreate};(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(k||(k={}));bS=(t,e={message:`Input not instance of ${t.name}`})=>kh(r=>r instanceof t,e),Th=gr.create,Eh=Lr.create,$S=Nn.create,SS=qr.create,Ph=Ur.create,wS=Fr.create,kS=In.create,TS=Hr.create,ES=Vr.create,PS=yr.create,RS=rr.create,IS=Et.create,OS=On.create,CS=nr.create,Jc=rt.create,zS=rt.strictCreate,NS=Br.create,AS=si.create,jS=Gr.create,MS=qt.create,DS=ii.create,ZS=Cn.create,LS=zn.create,qS=ai.create,US=Kr.create,FS=Wr.create,HS=Jr.create,VS=Yr.create,BS=_r.create,GS=mt.create,KS=tt.create,WS=Ut.create,JS=mt.createWithPreprocess,YS=$o.create,XS=()=>Th().optional(),QS=()=>Eh().optional(),ew=()=>Ph().optional(),tw={string:(t=>gr.create({...t,coerce:!0})),number:(t=>Lr.create({...t,coerce:!0})),boolean:(t=>Ur.create({...t,coerce:!0})),bigint:(t=>qr.create({...t,coerce:!0})),date:(t=>Fr.create({...t,coerce:!0}))},rw=Z});var K={};wt(K,{BRAND:()=>vS,DIRTY:()=>Zr,EMPTY_PATH:()=>Y$,INVALID:()=>Z,NEVER:()=>rw,OK:()=>qe,ParseStatus:()=>Ne,Schema:()=>V,ZodAny:()=>yr,ZodArray:()=>nr,ZodBigInt:()=>qr,ZodBoolean:()=>Ur,ZodBranded:()=>bo,ZodCatch:()=>Qr,ZodDate:()=>Fr,ZodDefault:()=>Xr,ZodDiscriminatedUnion:()=>si,ZodEffects:()=>mt,ZodEnum:()=>Jr,ZodError:()=>et,ZodFirstPartyTypeKind:()=>k,ZodFunction:()=>ai,ZodIntersection:()=>Gr,ZodIssueCode:()=>w,ZodLazy:()=>Kr,ZodLiteral:()=>Wr,ZodMap:()=>Cn,ZodNaN:()=>Nn,ZodNativeEnum:()=>Yr,ZodNever:()=>Et,ZodNull:()=>Vr,ZodNullable:()=>Ut,ZodNumber:()=>Lr,ZodObject:()=>rt,ZodOptional:()=>tt,ZodParsedType:()=>I,ZodPipeline:()=>$o,ZodPromise:()=>_r,ZodReadonly:()=>en,ZodRecord:()=>ii,ZodSchema:()=>V,ZodSet:()=>zn,ZodString:()=>gr,ZodSymbol:()=>In,ZodTransformer:()=>mt,ZodTuple:()=>qt,ZodType:()=>V,ZodUndefined:()=>Hr,ZodUnion:()=>Br,ZodUnknown:()=>rr,ZodVoid:()=>On,addIssueToContext:()=>P,any:()=>PS,array:()=>CS,bigint:()=>SS,boolean:()=>Ph,coerce:()=>tw,custom:()=>kh,date:()=>wS,datetimeRegex:()=>Sh,defaultErrorMap:()=>er,discriminatedUnion:()=>AS,effect:()=>GS,enum:()=>HS,function:()=>qS,getErrorMap:()=>En,getParsedType:()=>Lt,instanceof:()=>bS,intersection:()=>jS,isAborted:()=>ni,isAsync:()=>Pn,isDirty:()=>oi,isValid:()=>hr,late:()=>xS,lazy:()=>US,literal:()=>FS,makeIssue:()=>xo,map:()=>ZS,nan:()=>$S,nativeEnum:()=>VS,never:()=>IS,null:()=>ES,nullable:()=>WS,number:()=>Eh,object:()=>Jc,objectUtil:()=>Vc,oboolean:()=>ew,onumber:()=>QS,optional:()=>KS,ostring:()=>XS,pipeline:()=>YS,preprocess:()=>JS,promise:()=>BS,quotelessJson:()=>K$,record:()=>DS,set:()=>LS,setErrorMap:()=>J$,strictObject:()=>zS,string:()=>Th,symbol:()=>kS,transformer:()=>GS,tuple:()=>MS,undefined:()=>TS,union:()=>NS,unknown:()=>RS,util:()=>Y,void:()=>OS});var ci=$(()=>{ri();Gc();yh();vo();Rh();ti()});var So=$(()=>{ci()});function x(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}function ct(t){return t&&Object.assign(ui,t),ui}var ow,or,ui,An=$(()=>{ow=Object.freeze({status:"aborted"});or=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},ui={}});var Q={};wt(Q,{BIGINT_FORMAT_RANGES:()=>Oh,Class:()=>Xc,NUMBER_FORMAT_RANGES:()=>su,aborted:()=>rn,allowsEval:()=>ru,assert:()=>uw,assertEqual:()=>sw,assertIs:()=>aw,assertNever:()=>cw,assertNotEqual:()=>iw,assignProp:()=>tu,cached:()=>To,captureStackTrace:()=>di,cleanEnum:()=>$w,cleanRegex:()=>Po,clone:()=>ut,createTransparentProxy:()=>hw,defineLazy:()=>he,esc:()=>tn,escapeRegex:()=>vr,extend:()=>_w,finalizeIssue:()=>Pt,floatSafeRemainder:()=>eu,getElementAtPath:()=>lw,getEnumValues:()=>ko,getLengthableOrigin:()=>Ro,getParsedType:()=>mw,getSizableOrigin:()=>Ch,isObject:()=>jn,isPlainObject:()=>Mn,issue:()=>iu,joinValues:()=>li,jsonStringifyReplacer:()=>Qc,merge:()=>vw,normalizeParams:()=>L,nullish:()=>Eo,numKeys:()=>fw,omit:()=>yw,optionalKeys:()=>ou,partial:()=>xw,pick:()=>gw,prefixIssues:()=>Ft,primitiveTypes:()=>Ih,promiseAllObject:()=>dw,propertyKeyTypes:()=>nu,randomString:()=>pw,required:()=>bw,stringifyPrimitive:()=>pi,unwrapMessage:()=>wo});function sw(t){return t}function iw(t){return t}function aw(t){}function cw(t){throw new Error}function uw(t){}function ko(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,o])=>e.indexOf(+n)===-1).map(([n,o])=>o)}function li(t,e="|"){return t.map(r=>pi(r)).join(e)}function Qc(t,e){return typeof e=="bigint"?e.toString():e}function To(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Eo(t){return t==null}function Po(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function eu(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function he(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function tu(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function lw(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function dw(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let o={};for(let s=0;s<e.length;s++)o[e[s]]=n[s];return o})}function pw(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function tn(t){return JSON.stringify(t)}function jn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Mn(t){if(jn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(jn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function fw(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}function vr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ut(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function L(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function hw(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,s){return e??(e=t()),Reflect.set(e,n,o,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function pi(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function ou(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}function gw(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return ut(t,{...t._zod.def,shape:r,checks:[]})}function yw(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete r[o]}return ut(t,{...t._zod.def,shape:r,checks:[]})}function _w(t,e){if(!Mn(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return tu(this,"shape",n),n},checks:[]};return ut(t,r)}function vw(t,e){return ut(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return tu(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function xw(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return ut(e,{...e._zod.def,shape:o,checks:[]})}function bw(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)o[s]=new t({type:"nonoptional",innerType:n[s]});return ut(e,{...e._zod.def,shape:o,checks:[]})}function rn(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Ft(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function wo(t){return typeof t=="string"?t:t?.message}function Pt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=wo(t.inst?._zod.def?.error?.(t))??wo(e?.error?.(t))??wo(r.customError?.(t))??wo(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Ch(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Ro(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function iu(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function $w(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var di,ru,mw,nu,Ih,su,Oh,Xc,Ht=$(()=>{di=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};ru=To(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});mw=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},nu=new Set(["string","number","symbol"]),Ih=new Set(["string","number","bigint","boolean","symbol","undefined"]);su={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Oh={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};Xc=class{constructor(...e){}}});function au(t,e=r=>r.message){let r={},n=[];for(let o of t.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(e(o))):n.push(e(o));return{formErrors:n,fieldErrors:r}}function cu(t,e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>o({issues:a}));else if(i.code==="invalid_key")o({issues:i.issues});else if(i.code==="invalid_element")o({issues:i.issues});else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(t),n}var zh,fi,Io,uu=$(()=>{An();Ht();zh=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),Object.defineProperty(t,"message",{get(){return JSON.stringify(e,Qc,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},fi=x("$ZodError",zh),Io=x("$ZodError",zh,{Parent:Error})});var lu,du,pu,fu,mu,nn,hu,on,gu=$(()=>{An();uu();Ht();lu=t=>(e,r,n,o)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new or;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Pt(c,s,ct())));throw di(a,o?.callee),a}return i.value},du=lu(Io),pu=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Pt(c,s,ct())));throw di(a,o?.callee),a}return i.value},fu=pu(Io),mu=t=>(e,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new or;return s.issues.length?{success:!1,error:new(t??fi)(s.issues.map(i=>Pt(i,o,ct())))}:{success:!0,data:s.value}},nn=mu(Io),hu=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>Pt(i,o,ct())))}:{success:!0,data:s.value}},on=hu(Io)});function Fh(){return new RegExp(ww,"u")}function Qh(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function eg(t){return new RegExp(`^${Qh(t)}$`)}function tg(t){let e=Qh({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${Yh}T(?:${n})$`)}var Nh,Ah,jh,Mh,Dh,Zh,Lh,qh,yu,Uh,ww,Hh,Vh,Bh,Gh,Kh,_u,Wh,Jh,Yh,Xh,rg,ng,og,sg,ig,ag,cg,hi=$(()=>{Nh=/^[cC][^\s-]{8,}$/,Ah=/^[0-9a-z]+$/,jh=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Mh=/^[0-9a-vA-V]{20}$/,Dh=/^[A-Za-z0-9]{27}$/,Zh=/^[a-zA-Z0-9_-]{21}$/,Lh=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,qh=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,yu=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/,Uh=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,ww="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";Hh=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Vh=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,Bh=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Gh=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Kh=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,_u=/^[A-Za-z0-9_-]*$/,Wh=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,Jh=/^\+(?:[0-9]){6,14}[0-9]$/,Yh="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Xh=new RegExp(`^${Yh}$`);rg=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},ng=/^\d+$/,og=/^-?\d+(?:\.\d+)?/i,sg=/true|false/i,ig=/null/i,ag=/^[^A-Z]*$/,cg=/^[^a-z]*$/});var Ae,ug,vu,xu,lg,dg,pg,fg,mg,Oo,hg,gg,yg,_g,vg,xg,bg,gi=$(()=>{An();hi();Ht();Ae=x("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),ug={number:"number",bigint:"bigint",object:"date"},vu=x("$ZodCheckLessThan",(t,e)=>{Ae.init(t,e);let r=ug[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<s&&(e.inclusive?o.maximum=e.value:o.exclusiveMaximum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value<=e.value:n.value<e.value)||n.issues.push({origin:r,code:"too_big",maximum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),xu=x("$ZodCheckGreaterThan",(t,e)=>{Ae.init(t,e);let r=ug[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?o.minimum=e.value:o.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),lg=x("$ZodCheckMultipleOf",(t,e)=>{Ae.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):eu(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),dg=x("$ZodCheckNumberFormat",(t,e)=>{Ae.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=su[e.format];t._zod.onattach.push(i=>{let a=i._zod.bag;a.format=e.format,a.minimum=o,a.maximum=s,r&&(a.pattern=ng)}),t._zod.check=i=>{let a=i.value;if(r){if(!Number.isInteger(a)){i.issues.push({expected:n,format:e.format,code:"invalid_type",input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort});return}}a<o&&i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:t,continue:!e.abort}),a>s&&i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inst:t})}}),pg=x("$ZodCheckMaxLength",(t,e)=>{var r;Ae.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Eo(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<o&&(n._zod.bag.maximum=e.maximum)}),t._zod.check=n=>{let o=n.value;if(o.length<=e.maximum)return;let i=Ro(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),fg=x("$ZodCheckMinLength",(t,e)=>{var r;Ae.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Eo(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>o&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let o=n.value;if(o.length>=e.minimum)return;let i=Ro(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),mg=x("$ZodCheckLengthEquals",(t,e)=>{var r;Ae.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Eo(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=e.length,o.maximum=e.length,o.length=e.length}),t._zod.check=n=>{let o=n.value,s=o.length;if(s===e.length)return;let i=Ro(o),a=s>e.length;n.issues.push({origin:i,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),Oo=x("$ZodCheckStringFormat",(t,e)=>{var r,n;Ae.init(t,e),t._zod.onattach.push(o=>{let s=o._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=o=>{e.pattern.lastIndex=0,!e.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:e.format,input:o.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),hg=x("$ZodCheckRegex",(t,e)=>{Oo.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),gg=x("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=ag),Oo.init(t,e)}),yg=x("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=cg),Oo.init(t,e)}),_g=x("$ZodCheckIncludes",(t,e)=>{Ae.init(t,e);let r=vr(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(o=>{let s=o._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=o=>{o.value.includes(e.includes,e.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:o.value,inst:t,continue:!e.abort})}}),vg=x("$ZodCheckStartsWith",(t,e)=>{Ae.init(t,e);let r=new RegExp(`^${vr(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),xg=x("$ZodCheckEndsWith",(t,e)=>{Ae.init(t,e);let r=new RegExp(`.*${vr(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}}),bg=x("$ZodCheckOverwrite",(t,e)=>{Ae.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}})});var yi,bu=$(()=>{yi=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
|
|
23
|
+
`).filter(i=>i),o=Math.min(...n.map(i=>i.length-i.trimStart().length)),s=n.map(i=>i.slice(o)).map(i=>" ".repeat(this.indent*2)+i);for(let i of s)this.content.push(i)}compile(){let e=Function,r=this?.args,o=[...(this?.content??[""]).map(s=>` ${s}`)];return new e(...r,o.join(`
|
|
24
|
+
`))}}});var Sg,$u=$(()=>{Sg={major:4,minor:0,patch:0}});function Mg(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}function kw(t){if(!_u.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Mg(r)}function Tw(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||e&&(!("alg"in o)||o.alg!==e))}catch{return!1}}function wg(t,e,r){t.issues.length&&e.issues.push(...Ft(r,t.issues)),e.value[r]=t.value}function _i(t,e,r){t.issues.length&&e.issues.push(...Ft(r,t.issues)),e.value[r]=t.value}function kg(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...Ft(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}function Tg(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>Pt(s,n,ct())))}),e}function Su(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(Mn(t)&&Mn(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),o={...t,...e};for(let s of n){let i=Su(t[s],e[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<t.length;n++){let o=t[n],s=e[n],i=Su(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function Eg(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),rn(t))return t;let n=Su(e.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return t.value=n.data,t}function Pg(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}function Rg(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}function Ig(t,e,r){return rn(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}function Og(t){return t.value=Object.freeze(t.value),t}function Cg(t,e,r,n){if(!t){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(o.params=n._zod.def.params),e.issues.push(iu(o))}}var le,Co,ge,wu,ku,Tu,Eu,Pu,Ru,Iu,Ou,Cu,zu,Nu,zg,Ng,Ag,jg,Au,ju,Mu,Du,Zu,Lu,qu,Uu,vi,Fu,Hu,Vu,Bu,Gu,Ku,xi,bi,Wu,Ju,Yu,Xu,Qu,el,tl,rl,nl,ol,sl,il,al,cl,ul,Dg=$(()=>{gi();An();bu();gu();hi();Ht();$u();Ht();le=x("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Sg;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let o of n)for(let s of o._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let o=(s,i,a)=>{let c=rn(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,f=l._zod.check(s);if(f instanceof Promise&&a?.async===!1)throw new or;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await f,s.issues.length!==d&&(c||(c=rn(s,d)))});else{if(s.issues.length===d)continue;c||(c=rn(s,d))}}return u?u.then(()=>s):s};t._zod.run=(s,i)=>{let a=t._zod.parse(s,i);if(a instanceof Promise){if(i.async===!1)throw new or;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=nn(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return on(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),Co=x("$ZodString",(t,e)=>{le.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??rg(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),ge=x("$ZodStringFormat",(t,e)=>{Oo.init(t,e),Co.init(t,e)}),wu=x("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=qh),ge.init(t,e)}),ku=x("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=yu(n))}else e.pattern??(e.pattern=yu());ge.init(t,e)}),Tu=x("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Uh),ge.init(t,e)}),Eu=x("$ZodURL",(t,e)=>{ge.init(t,e),t._zod.check=r=>{try{let n=r.value,o=new URL(n),s=o.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:Wh.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),!n.endsWith("/")&&s.endsWith("/")?r.value=s.slice(0,-1):r.value=s;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),Pu=x("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Fh()),ge.init(t,e)}),Ru=x("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Zh),ge.init(t,e)}),Iu=x("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Nh),ge.init(t,e)}),Ou=x("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Ah),ge.init(t,e)}),Cu=x("$ZodULID",(t,e)=>{e.pattern??(e.pattern=jh),ge.init(t,e)}),zu=x("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Mh),ge.init(t,e)}),Nu=x("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Dh),ge.init(t,e)}),zg=x("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=tg(e)),ge.init(t,e)}),Ng=x("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Xh),ge.init(t,e)}),Ag=x("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=eg(e)),ge.init(t,e)}),jg=x("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Lh),ge.init(t,e)}),Au=x("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Hh),ge.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),ju=x("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Vh),ge.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),Mu=x("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Bh),ge.init(t,e)}),Du=x("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Gh),ge.init(t,e),t._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let s=Number(o);if(`${s}`!==o)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});Zu=x("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Kh),ge.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Mg(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});Lu=x("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=_u),ge.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{kw(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),qu=x("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Jh),ge.init(t,e)});Uu=x("$ZodJWT",(t,e)=>{ge.init(t,e),t._zod.check=r=>{Tw(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),vi=x("$ZodNumber",(t,e)=>{le.init(t,e),t._zod.pattern=t._zod.bag.pattern??og,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let o=r.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let s=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:t,...s?{received:s}:{}}),r}}),Fu=x("$ZodNumber",(t,e)=>{dg.init(t,e),vi.init(t,e)}),Hu=x("$ZodBoolean",(t,e)=>{le.init(t,e),t._zod.pattern=sg,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let o=r.value;return typeof o=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:t}),r}}),Vu=x("$ZodNull",(t,e)=>{le.init(t,e),t._zod.pattern=ig,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let o=r.value;return o===null||r.issues.push({expected:"null",code:"invalid_type",input:o,inst:t}),r}}),Bu=x("$ZodUnknown",(t,e)=>{le.init(t,e),t._zod.parse=r=>r}),Gu=x("$ZodNever",(t,e)=>{le.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});Ku=x("$ZodArray",(t,e)=>{le.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let s=[];for(let i=0;i<o.length;i++){let a=o[i],c=e.element._zod.run({value:a,issues:[]},n);c instanceof Promise?s.push(c.then(u=>wg(u,r,i))):wg(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});xi=x("$ZodObject",(t,e)=>{le.init(t,e);let r=To(()=>{let d=Object.keys(e.shape);for(let h of d)if(!(e.shape[h]instanceof le))throw new Error(`Invalid element at key "${h}": expected a Zod schema`);let f=ou(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});he(t._zod,"propValues",()=>{let d=e.shape,f={};for(let h in d){let p=d[h]._zod;if(p.values){f[h]??(f[h]=new Set);for(let m of p.values)f[h].add(m)}}return f});let n=d=>{let f=new yi(["shape","payload","ctx"]),h=r.value,p=v=>{let b=tn(v);return`shape[${b}]._zod.run({ value: input[${b}], issues: [] }, ctx)`};f.write("const input = payload.value;");let m=Object.create(null),g=0;for(let v of h.keys)m[v]=`key_${g++}`;f.write("const newResult = {}");for(let v of h.keys)if(h.optionalKeys.has(v)){let b=m[v];f.write(`const ${b} = ${p(v)};`);let S=tn(v);f.write(`
|
|
25
|
+
if (${b}.issues.length) {
|
|
26
|
+
if (input[${S}] === undefined) {
|
|
27
|
+
if (${S} in input) {
|
|
28
|
+
newResult[${S}] = undefined;
|
|
29
|
+
}
|
|
30
|
+
} else {
|
|
31
|
+
payload.issues = payload.issues.concat(
|
|
32
|
+
${b}.issues.map((iss) => ({
|
|
33
|
+
...iss,
|
|
34
|
+
path: iss.path ? [${S}, ...iss.path] : [${S}],
|
|
35
|
+
}))
|
|
36
|
+
);
|
|
37
|
+
}
|
|
38
|
+
} else if (${b}.value === undefined) {
|
|
39
|
+
if (${S} in input) newResult[${S}] = undefined;
|
|
40
|
+
} else {
|
|
41
|
+
newResult[${S}] = ${b}.value;
|
|
42
|
+
}
|
|
43
|
+
`)}else{let b=m[v];f.write(`const ${b} = ${p(v)};`),f.write(`
|
|
44
|
+
if (${b}.issues.length) payload.issues = payload.issues.concat(${b}.issues.map(iss => ({
|
|
45
|
+
...iss,
|
|
46
|
+
path: iss.path ? [${tn(v)}, ...iss.path] : [${tn(v)}]
|
|
47
|
+
})));`),f.write(`newResult[${tn(v)}] = ${b}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let y=f.compile();return(v,b)=>y(d,v,b)},o,s=jn,i=!ui.jitless,c=i&&ru.value,u=e.catchall,l;t._zod.parse=(d,f)=>{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&&f?.async===!1&&f.jitless!==!0)o||(o=n(e.shape)),d=o(d,f);else{d.value={};let b=l.shape;for(let S of l.keys){let T=b[S],J=T._zod.run({value:h[S],issues:[]},f),D=T._zod.optin==="optional"&&T._zod.optout==="optional";J instanceof Promise?p.push(J.then(X=>D?kg(X,d,S,h):_i(X,d,S))):D?kg(J,d,S,h):_i(J,d,S)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let m=[],g=l.keySet,y=u._zod,v=y.def.type;for(let b of Object.keys(h)){if(g.has(b))continue;if(v==="never"){m.push(b);continue}let S=y.run({value:h[b],issues:[]},f);S instanceof Promise?p.push(S.then(T=>_i(T,d,b))):_i(S,d,b)}return m.length&&d.issues.push({code:"unrecognized_keys",keys:m,input:h,inst:t}),p.length?Promise.all(p).then(()=>d):d}});bi=x("$ZodUnion",(t,e)=>{le.init(t,e),he(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),he(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),he(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),he(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>Po(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let o=!1,s=[];for(let i of e.options){let a=i._zod.run({value:r.value,issues:[]},n);if(a instanceof Promise)s.push(a),o=!0;else{if(a.issues.length===0)return a;s.push(a)}}return o?Promise.all(s).then(i=>Tg(i,r,t,n)):Tg(s,r,t,n)}}),Wu=x("$ZodDiscriminatedUnion",(t,e)=>{bi.init(t,e);let r=t._zod.parse;he(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=To(()=>{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(!jn(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)}}),Ju=x("$ZodIntersection",(t,e)=>{le.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])=>Eg(r,c,u)):Eg(r,s,i)}});Yu=x("$ZodRecord",(t,e)=>{le.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Mn(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(...Ft(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Ft(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=>Pt(u,n,ct())),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(...Ft(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Ft(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}}),Xu=x("$ZodEnum",(t,e)=>{le.init(t,e);let r=ko(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>nu.has(typeof n)).map(n=>typeof n=="string"?vr(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}}),Qu=x("$ZodLiteral",(t,e)=>{le.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?vr(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}}),el=x("$ZodTransform",(t,e)=>{le.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 or;return r.value=o,r}}),tl=x("$ZodOptional",(t,e)=>{le.init(t,e),t._zod.optin="optional",t._zod.optout="optional",he(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),he(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Po(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>e.innerType._zod.optin==="optional"?e.innerType._zod.run(r,n):r.value===void 0?r:e.innerType._zod.run(r,n)}),rl=x("$ZodNullable",(t,e)=>{le.init(t,e),he(t._zod,"optin",()=>e.innerType._zod.optin),he(t._zod,"optout",()=>e.innerType._zod.optout),he(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Po(r.source)}|null)$`):void 0}),he(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),nl=x("$ZodDefault",(t,e)=>{le.init(t,e),t._zod.optin="optional",he(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Pg(s,e)):Pg(o,e)}});ol=x("$ZodPrefault",(t,e)=>{le.init(t,e),t._zod.optin="optional",he(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),sl=x("$ZodNonOptional",(t,e)=>{le.init(t,e),he(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Rg(s,t)):Rg(o,t)}});il=x("$ZodCatch",(t,e)=>{le.init(t,e),t._zod.optin="optional",he(t._zod,"optout",()=>e.innerType._zod.optout),he(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>Pt(i,n,ct()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>Pt(s,n,ct()))},input:r.value}),r.issues=[]),r)}}),al=x("$ZodPipe",(t,e)=>{le.init(t,e),he(t._zod,"values",()=>e.in._zod.values),he(t._zod,"optin",()=>e.in._zod.optin),he(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>Ig(s,e,n)):Ig(o,e,n)}});cl=x("$ZodReadonly",(t,e)=>{le.init(t,e),he(t._zod,"propValues",()=>e.innerType._zod.propValues),he(t._zod,"values",()=>e.innerType._zod.values),he(t._zod,"optin",()=>e.innerType._zod.optin),he(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(Og):Og(o)}});ul=x("$ZodCustom",(t,e)=>{Ae.init(t,e),le.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=>Cg(s,r,n,t));Cg(o,r,n,t)}})});function Zg(){return{localeError:Pw()}}var Ew,Pw,Lg=$(()=>{Ht();Ew=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},Pw=()=>{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 ${Ew(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${pi(n.values[0])}`:`Invalid option: expected one of ${li(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":""}: ${li(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 $i=$(()=>{});function qg(){return new zo}var zo,xr,dl=$(()=>{zo=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)}};xr=qg()});function pl(t,e){return new t({type:"string",...L(e)})}function fl(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...L(e)})}function Si(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...L(e)})}function ml(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...L(e)})}function hl(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...L(e)})}function gl(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...L(e)})}function yl(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...L(e)})}function _l(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...L(e)})}function vl(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...L(e)})}function xl(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...L(e)})}function bl(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...L(e)})}function $l(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...L(e)})}function Sl(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...L(e)})}function wl(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...L(e)})}function kl(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...L(e)})}function Tl(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...L(e)})}function El(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...L(e)})}function Pl(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...L(e)})}function Rl(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...L(e)})}function Il(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...L(e)})}function Ol(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...L(e)})}function Cl(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...L(e)})}function zl(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...L(e)})}function Ug(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...L(e)})}function Fg(t,e){return new t({type:"string",format:"date",check:"string_format",...L(e)})}function Hg(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...L(e)})}function Vg(t,e){return new t({type:"string",format:"duration",check:"string_format",...L(e)})}function Nl(t,e){return new t({type:"number",checks:[],...L(e)})}function Al(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...L(e)})}function jl(t,e){return new t({type:"boolean",...L(e)})}function Ml(t,e){return new t({type:"null",...L(e)})}function Dl(t){return new t({type:"unknown"})}function Zl(t,e){return new t({type:"never",...L(e)})}function wi(t,e){return new vu({check:"less_than",...L(e),value:t,inclusive:!1})}function No(t,e){return new vu({check:"less_than",...L(e),value:t,inclusive:!0})}function ki(t,e){return new xu({check:"greater_than",...L(e),value:t,inclusive:!1})}function Ao(t,e){return new xu({check:"greater_than",...L(e),value:t,inclusive:!0})}function Ti(t,e){return new lg({check:"multiple_of",...L(e),value:t})}function Ei(t,e){return new pg({check:"max_length",...L(e),maximum:t})}function Dn(t,e){return new fg({check:"min_length",...L(e),minimum:t})}function Pi(t,e){return new mg({check:"length_equals",...L(e),length:t})}function Ll(t,e){return new hg({check:"string_format",format:"regex",...L(e),pattern:t})}function ql(t){return new gg({check:"string_format",format:"lowercase",...L(t)})}function Ul(t){return new yg({check:"string_format",format:"uppercase",...L(t)})}function Fl(t,e){return new _g({check:"string_format",format:"includes",...L(e),includes:t})}function Hl(t,e){return new vg({check:"string_format",format:"starts_with",...L(e),prefix:t})}function Vl(t,e){return new xg({check:"string_format",format:"ends_with",...L(e),suffix:t})}function sn(t){return new bg({check:"overwrite",tx:t})}function Bl(t){return sn(e=>e.normalize(t))}function Gl(){return sn(t=>t.trim())}function Kl(){return sn(t=>t.toLowerCase())}function Wl(){return sn(t=>t.toUpperCase())}function Bg(t,e,r){return new t({type:"array",element:e,...L(r)})}function Jl(t,e,r){let n=L(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Yl(t,e,r){return new t({type:"custom",check:"custom",fn:e,...L(r)})}var Gg=$(()=>{gi();Ht()});var Kg=$(()=>{});function Xl(t,e){if(t instanceof zo){let n=new Ri(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 Ri(e);return r.process(t),r.emit(t,e)}function Ie(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 Ie(o.element,r);case"object":{for(let s in o.shape)if(Ie(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Ie(s,r))return!0;return!1}case"intersection":return Ie(o.left,r)||Ie(o.right,r);case"tuple":{for(let s of o.items)if(Ie(s,r))return!0;return!!(o.rest&&Ie(o.rest,r))}case"record":return Ie(o.keyType,r)||Ie(o.valueType,r);case"map":return Ie(o.keyType,r)||Ie(o.valueType,r);case"set":return Ie(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Ie(o.innerType,r);case"lazy":return Ie(o.getter(),r);case"default":return Ie(o.innerType,r);case"prefault":return Ie(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Ie(o.in,r)||Ie(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var Ri,Wg=$(()=>{dl();Ht();Ri=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??xr,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},f=e._zod.parent;if(f)a.ref=f,this.process(f,d),this.seen.get(f).isParent=!0;else{let h=a.schema;switch(o.type){case"string":{let p=h;p.type="string";let{minimum:m,maximum:g,format:y,patterns:v,contentEncoding:b}=e._zod.bag;if(typeof m=="number"&&(p.minLength=m),typeof g=="number"&&(p.maxLength=g),y&&(p.format=s[y]??y,p.format===""&&delete p.format),b&&(p.contentEncoding=b),v&&v.size>0){let S=[...v];S.length===1?p.pattern=S[0].source:S.length>1&&(a.schema.allOf=[...S.map(T=>({...this.target==="draft-7"?{type:"string"}:{},pattern:T.source}))])}break}case"number":{let p=h,{minimum:m,maximum:g,format:y,multipleOf:v,exclusiveMaximum:b,exclusiveMinimum:S}=e._zod.bag;typeof y=="string"&&y.includes("int")?p.type="integer":p.type="number",typeof S=="number"&&(p.exclusiveMinimum=S),typeof m=="number"&&(p.minimum=m,typeof S=="number"&&(S>=m?delete p.minimum:delete p.exclusiveMinimum)),typeof b=="number"&&(p.exclusiveMaximum=b),typeof g=="number"&&(p.maximum=g,typeof b=="number"&&(b<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof v=="number"&&(p.multipleOf=v);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:m,maximum:g}=e._zod.bag;typeof m=="number"&&(p.minItems=m),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 m=o.shape;for(let v in m)p.properties[v]=this.process(m[v],{...d,path:[...d.path,"properties",v]});let g=new Set(Object.keys(m)),y=new Set([...g].filter(v=>{let b=o.shape[v]._zod;return this.io==="input"?b.optin===void 0:b.optout===void 0}));y.size>0&&(p.required=Array.from(y)),o.catchall?._zod.def.type==="never"?p.additionalProperties=!1:o.catchall?o.catchall&&(p.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=h;p.anyOf=o.options.map((m,g)=>this.process(m,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=h,m=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),y=b=>"allOf"in b&&Object.keys(b).length===1,v=[...y(m)?m.allOf:[m],...y(g)?g.allOf:[g]];p.allOf=v;break}case"tuple":{let p=h;p.type="array";let m=o.items.map((v,b)=>this.process(v,{...d,path:[...d.path,"prefixItems",b]}));if(this.target==="draft-2020-12"?p.prefixItems=m:p.items=m,o.rest){let v=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=v:p.additionalItems=v}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:y}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof y=="number"&&(p.maxItems=y);break}case"record":{let p=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,m=ko(o.entries);m.every(g=>typeof g=="number")&&(p.type="number"),m.every(g=>typeof g=="string")&&(p.type="string"),p.enum=m;break}case"literal":{let p=h,m=[];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");m.push(Number(g))}else m.push(g);if(m.length!==0)if(m.length===1){let g=m[0];p.type=g===null?"null":typeof g,p.const=g}else m.every(g=>typeof g=="number")&&(p.type="number"),m.every(g=>typeof g=="string")&&(p.type="string"),m.every(g=>typeof g=="boolean")&&(p.type="string"),m.every(g=>g===null)&&(p.type="null"),p.enum=m;break}case"file":{let p=h,m={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:y,mime:v}=e._zod.bag;g!==void 0&&(m.minLength=g),y!==void 0&&(m.maxLength=y),v?v.length===1?(m.contentMediaType=v[0],Object.assign(p,m)):p.anyOf=v.map(b=>({...m,contentMediaType:b})):Object.assign(p,m);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,m=e._zod.pattern;if(!m)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=m.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"&&Ie(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 m=n.external.registry.get(l[0])?.id,g=n.external.uri??(v=>v);if(m)return{ref:g(m)};let y=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=y,{defId:y,ref:`${g("__shared")}#/${d}/${y}`}}if(l[1]===o)return{ref:"#"};let 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:f,defId:h}=s(l);d.def={...d.schema},h&&(d.defId=h);let p=d.schema;for(let m in p)delete p[m];p.$ref=f};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
|
|
48
|
+
|
|
49
|
+
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 f=this.seen.get(l),h=f.def??f.schema,p={...h};if(f.ref===null)return;let m=f.ref;if(f.ref=null,m){a(m,d);let g=this.seen.get(m).schema;g.$ref&&d.target==="draft-7"?(h.allOf=h.allOf??[],h.allOf.push(g)):(Object.assign(h,g),Object.assign(h,p))}f.isParent||this.override({zodSchema:l,jsonSchema:h,path:f.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}}});var Jg=$(()=>{});var Ve=$(()=>{An();gu();uu();Dg();gi();$u();Ht();hi();$i();dl();bu();Kg();Gg();Wg();Jg()});var Ql=$(()=>{Ve()});function ed(t,e){let r={type:"object",get shape(){return Q.assignProp(this,"shape",{...t}),this.shape},...Q.normalizeParams(e)};return new lk(r)}var uk,lk,Yg=$(()=>{Ve();Ve();Ql();uk=x("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");le.init(t,e),t.def=e,t.parse=(r,n)=>du(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>nn(t,r,n),t.parseAsync=async(r,n)=>fu(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>on(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)=>ut(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))}),lk=x("ZodMiniObject",(t,e)=>{xi.init(t,e),uk.init(t,e),Q.defineLazy(t,"shape",()=>e.shape)})});var Xg=$(()=>{});var Qg=$(()=>{});var ey=$(()=>{});var ty=$(()=>{Ve();Ql();Yg();Xg();Ve();$i();Qg();ey()});var ry=$(()=>{ty()});var td=$(()=>{ry()});function ht(t){return!!t._zod}function cn(t){let e=Object.values(t);if(e.length===0)return ed({});let r=e.every(ht),n=e.every(o=>!ht(o));if(r)return ed(t);if(n)return Jc(t);throw new Error("Mixed Zod versions detected in object shape.")}function br(t,e){return ht(t)?nn(t,e):t.safeParse(e)}async function Ii(t,e){return ht(t)?await on(t,e):await t.safeParseAsync(e)}function $r(t){if(!t)return;let e;if(ht(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function Zn(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(ht(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 Oi(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 oy(t){return t.description}function sy(t){if(ht(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Ci(t){if(ht(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 jo=$(()=>{So();td()});var rd=$(()=>{Ve()});var Mo={};wt(Mo,{ZodISODate:()=>ay,ZodISODateTime:()=>iy,ZodISODuration:()=>uy,ZodISOTime:()=>cy,date:()=>od,datetime:()=>nd,duration:()=>id,time:()=>sd});function nd(t){return Ug(iy,t)}function od(t){return Fg(ay,t)}function sd(t){return Hg(cy,t)}function id(t){return Vg(uy,t)}var iy,ay,cy,uy,ad=$(()=>{Ve();cd();iy=x("ZodISODateTime",(t,e)=>{zg.init(t,e),be.init(t,e)});ay=x("ZodISODate",(t,e)=>{Ng.init(t,e),be.init(t,e)});cy=x("ZodISOTime",(t,e)=>{Ag.init(t,e),be.init(t,e)});uy=x("ZodISODuration",(t,e)=>{jg.init(t,e),be.init(t,e)})});var ly,WA,Do,ud=$(()=>{Ve();Ve();ly=(t,e)=>{fi.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>cu(t,r)},flatten:{value:r=>au(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},WA=x("ZodError",ly),Do=x("ZodError",ly,{Parent:Error})});var dy,py,fy,my,ld=$(()=>{Ve();ud();dy=lu(Do),py=pu(Do),fy=mu(Do),my=hu(Do)});function _(t){return pl(xk,t)}function ce(t){return Nl(vy,t)}function gy(t){return Al(Dk,t)}function Oe(t){return jl(Zk,t)}function fd(t){return Ml(Lk,t)}function $e(){return Dl(qk)}function Fk(t){return Zl(Uk,t)}function te(t,e){return Bg(Hk,t,e)}function O(t,e){let r={type:"object",get shape(){return Q.assignProp(this,"shape",{...t}),this.shape},...Q.normalizeParams(e)};return new xy(r)}function Be(t,e){return new xy({type:"object",get shape(){return Q.assignProp(this,"shape",{...t}),this.shape},catchall:$e(),...Q.normalizeParams(e)})}function ye(t,e){return new by({type:"union",options:t,...Q.normalizeParams(e)})}function md(t,e,r){return new Vk({type:"union",options:e,discriminator:t,...Q.normalizeParams(r)})}function Ni(t,e){return new Bk({type:"intersection",left:t,right:e})}function Se(t,e,r){return new Gk({type:"record",keyType:t,valueType:e,...Q.normalizeParams(r)})}function nt(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new dd({type:"enum",entries:r,...Q.normalizeParams(e)})}function A(t,e){return new Kk({type:"literal",values:Array.isArray(t)?t:[t],...Q.normalizeParams(e)})}function $y(t){return new Wk({type:"transform",transform:t})}function ke(t){return new Sy({type:"optional",innerType:t})}function yy(t){return new Jk({type:"nullable",innerType:t})}function Xk(t,e){return new Yk({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function e1(t,e){return new Qk({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function t1(t,e){return new wy({type:"nonoptional",innerType:t,...Q.normalizeParams(e)})}function n1(t,e){return new r1({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}function pd(t,e){return new o1({type:"pipe",in:t,out:e})}function i1(t){return new s1({type:"readonly",innerType:t})}function a1(t){let e=new Ae({check:"custom"});return e._zod.check=t,e}function Ty(t,e){return Jl(ky,t??(()=>!0),e)}function c1(t,e={}){return Yl(ky,t,e)}function u1(t){let e=a1(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(Q.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(Q.issue(o))}},t(r.value,r)));return e}function hd(t,e){return pd($y(t),e)}var Te,_y,xk,be,bk,hy,zi,$k,Sk,wk,kk,Tk,Ek,Pk,Rk,Ik,Ok,Ck,zk,Nk,Ak,jk,Mk,vy,Dk,Zk,Lk,qk,Uk,Hk,xy,by,Vk,Bk,Gk,dd,Kk,Wk,Sy,Jk,Yk,Qk,wy,r1,o1,s1,ky,cd=$(()=>{Ve();Ve();rd();ad();ld();Te=x("ZodType",(t,e)=>(le.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)=>ut(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>dy(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>fy(t,r,n),t.parseAsync=async(r,n)=>py(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>my(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(c1(r,n)),t.superRefine=r=>t.check(u1(r)),t.overwrite=r=>t.check(sn(r)),t.optional=()=>ke(t),t.nullable=()=>yy(t),t.nullish=()=>ke(yy(t)),t.nonoptional=r=>t1(t,r),t.array=()=>te(t),t.or=r=>ye([t,r]),t.and=r=>Ni(t,r),t.transform=r=>pd(t,$y(r)),t.default=r=>Xk(t,r),t.prefault=r=>e1(t,r),t.catch=r=>n1(t,r),t.pipe=r=>pd(t,r),t.readonly=()=>i1(t),t.describe=r=>{let n=t.clone();return xr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return xr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return xr.get(t);let n=t.clone();return xr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),_y=x("_ZodString",(t,e)=>{Co.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(Ll(...n)),t.includes=(...n)=>t.check(Fl(...n)),t.startsWith=(...n)=>t.check(Hl(...n)),t.endsWith=(...n)=>t.check(Vl(...n)),t.min=(...n)=>t.check(Dn(...n)),t.max=(...n)=>t.check(Ei(...n)),t.length=(...n)=>t.check(Pi(...n)),t.nonempty=(...n)=>t.check(Dn(1,...n)),t.lowercase=n=>t.check(ql(n)),t.uppercase=n=>t.check(Ul(n)),t.trim=()=>t.check(Gl()),t.normalize=(...n)=>t.check(Bl(...n)),t.toLowerCase=()=>t.check(Kl()),t.toUpperCase=()=>t.check(Wl())}),xk=x("ZodString",(t,e)=>{Co.init(t,e),_y.init(t,e),t.email=r=>t.check(fl(bk,r)),t.url=r=>t.check(_l($k,r)),t.jwt=r=>t.check(zl(Mk,r)),t.emoji=r=>t.check(vl(Sk,r)),t.guid=r=>t.check(Si(hy,r)),t.uuid=r=>t.check(ml(zi,r)),t.uuidv4=r=>t.check(hl(zi,r)),t.uuidv6=r=>t.check(gl(zi,r)),t.uuidv7=r=>t.check(yl(zi,r)),t.nanoid=r=>t.check(xl(wk,r)),t.guid=r=>t.check(Si(hy,r)),t.cuid=r=>t.check(bl(kk,r)),t.cuid2=r=>t.check($l(Tk,r)),t.ulid=r=>t.check(Sl(Ek,r)),t.base64=r=>t.check(Il(Nk,r)),t.base64url=r=>t.check(Ol(Ak,r)),t.xid=r=>t.check(wl(Pk,r)),t.ksuid=r=>t.check(kl(Rk,r)),t.ipv4=r=>t.check(Tl(Ik,r)),t.ipv6=r=>t.check(El(Ok,r)),t.cidrv4=r=>t.check(Pl(Ck,r)),t.cidrv6=r=>t.check(Rl(zk,r)),t.e164=r=>t.check(Cl(jk,r)),t.datetime=r=>t.check(nd(r)),t.date=r=>t.check(od(r)),t.time=r=>t.check(sd(r)),t.duration=r=>t.check(id(r))});be=x("ZodStringFormat",(t,e)=>{ge.init(t,e),_y.init(t,e)}),bk=x("ZodEmail",(t,e)=>{Tu.init(t,e),be.init(t,e)}),hy=x("ZodGUID",(t,e)=>{wu.init(t,e),be.init(t,e)}),zi=x("ZodUUID",(t,e)=>{ku.init(t,e),be.init(t,e)}),$k=x("ZodURL",(t,e)=>{Eu.init(t,e),be.init(t,e)}),Sk=x("ZodEmoji",(t,e)=>{Pu.init(t,e),be.init(t,e)}),wk=x("ZodNanoID",(t,e)=>{Ru.init(t,e),be.init(t,e)}),kk=x("ZodCUID",(t,e)=>{Iu.init(t,e),be.init(t,e)}),Tk=x("ZodCUID2",(t,e)=>{Ou.init(t,e),be.init(t,e)}),Ek=x("ZodULID",(t,e)=>{Cu.init(t,e),be.init(t,e)}),Pk=x("ZodXID",(t,e)=>{zu.init(t,e),be.init(t,e)}),Rk=x("ZodKSUID",(t,e)=>{Nu.init(t,e),be.init(t,e)}),Ik=x("ZodIPv4",(t,e)=>{Au.init(t,e),be.init(t,e)}),Ok=x("ZodIPv6",(t,e)=>{ju.init(t,e),be.init(t,e)}),Ck=x("ZodCIDRv4",(t,e)=>{Mu.init(t,e),be.init(t,e)}),zk=x("ZodCIDRv6",(t,e)=>{Du.init(t,e),be.init(t,e)}),Nk=x("ZodBase64",(t,e)=>{Zu.init(t,e),be.init(t,e)}),Ak=x("ZodBase64URL",(t,e)=>{Lu.init(t,e),be.init(t,e)}),jk=x("ZodE164",(t,e)=>{qu.init(t,e),be.init(t,e)}),Mk=x("ZodJWT",(t,e)=>{Uu.init(t,e),be.init(t,e)}),vy=x("ZodNumber",(t,e)=>{vi.init(t,e),Te.init(t,e),t.gt=(n,o)=>t.check(ki(n,o)),t.gte=(n,o)=>t.check(Ao(n,o)),t.min=(n,o)=>t.check(Ao(n,o)),t.lt=(n,o)=>t.check(wi(n,o)),t.lte=(n,o)=>t.check(No(n,o)),t.max=(n,o)=>t.check(No(n,o)),t.int=n=>t.check(gy(n)),t.safe=n=>t.check(gy(n)),t.positive=n=>t.check(ki(0,n)),t.nonnegative=n=>t.check(Ao(0,n)),t.negative=n=>t.check(wi(0,n)),t.nonpositive=n=>t.check(No(0,n)),t.multipleOf=(n,o)=>t.check(Ti(n,o)),t.step=(n,o)=>t.check(Ti(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});Dk=x("ZodNumberFormat",(t,e)=>{Fu.init(t,e),vy.init(t,e)});Zk=x("ZodBoolean",(t,e)=>{Hu.init(t,e),Te.init(t,e)});Lk=x("ZodNull",(t,e)=>{Vu.init(t,e),Te.init(t,e)});qk=x("ZodUnknown",(t,e)=>{Bu.init(t,e),Te.init(t,e)});Uk=x("ZodNever",(t,e)=>{Gu.init(t,e),Te.init(t,e)});Hk=x("ZodArray",(t,e)=>{Ku.init(t,e),Te.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Dn(r,n)),t.nonempty=r=>t.check(Dn(1,r)),t.max=(r,n)=>t.check(Ei(r,n)),t.length=(r,n)=>t.check(Pi(r,n)),t.unwrap=()=>t.element});xy=x("ZodObject",(t,e)=>{xi.init(t,e),Te.init(t,e),Q.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>nt(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:$e()}),t.loose=()=>t.clone({...t._zod.def,catchall:$e()}),t.strict=()=>t.clone({...t._zod.def,catchall:Fk()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>Q.extend(t,r),t.merge=r=>Q.merge(t,r),t.pick=r=>Q.pick(t,r),t.omit=r=>Q.omit(t,r),t.partial=(...r)=>Q.partial(Sy,t,r[0]),t.required=(...r)=>Q.required(wy,t,r[0])});by=x("ZodUnion",(t,e)=>{bi.init(t,e),Te.init(t,e),t.options=e.options});Vk=x("ZodDiscriminatedUnion",(t,e)=>{by.init(t,e),Wu.init(t,e)});Bk=x("ZodIntersection",(t,e)=>{Ju.init(t,e),Te.init(t,e)});Gk=x("ZodRecord",(t,e)=>{Yu.init(t,e),Te.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});dd=x("ZodEnum",(t,e)=>{Xu.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 dd({...e,checks:[],...Q.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 dd({...e,checks:[],...Q.normalizeParams(o),entries:s})}});Kk=x("ZodLiteral",(t,e)=>{Qu.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]}})});Wk=x("ZodTransform",(t,e)=>{el.init(t,e),Te.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(Q.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(Q.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});Sy=x("ZodOptional",(t,e)=>{tl.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});Jk=x("ZodNullable",(t,e)=>{rl.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});Yk=x("ZodDefault",(t,e)=>{nl.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});Qk=x("ZodPrefault",(t,e)=>{ol.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});wy=x("ZodNonOptional",(t,e)=>{sl.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType});r1=x("ZodCatch",(t,e)=>{il.init(t,e),Te.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});o1=x("ZodPipe",(t,e)=>{al.init(t,e),Te.init(t,e),t.in=e.in,t.out=e.out});s1=x("ZodReadonly",(t,e)=>{cl.init(t,e),Te.init(t,e)});ky=x("ZodCustom",(t,e)=>{ul.init(t,e),Te.init(t,e)})});var Ey=$(()=>{});var Py=$(()=>{});var Ry=$(()=>{Ve();cd();rd();ud();ld();Ey();Ve();Lg();$i();ad();Py();ct(Zg())});var Iy=$(()=>{Ry()});var Oy=$(()=>{Iy()});function Ky(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Wy(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var yd,Cy,Sr,ji,je,zy,Ny,d9,p1,f1,_d,lt,Zo,Ay,Me,gt,yt,De,Mi,jy,vd,My,Dy,xd,Lo,M,bd,Zy,Ly,p9,Di,m1,Zi,h1,qo,Ln,qy,g1,y1,_1,v1,x1,b1,$d,$1,S1,Sd,Li,w1,k1,qi,T1,Uo,Fo,E1,Ho,qn,P1,Vo,Ui,Fi,Hi,f9,Vi,Bi,Gi,Uy,Fy,Hy,wd,Vy,Bo,Un,By,R1,Ki,I1,Wi,O1,kd,C1,Ji,z1,N1,A1,j1,M1,D1,Z1,L1,q1,U1,Yi,F1,H1,Xi,Td,Ed,Pd,V1,B1,G1,Rd,K1,W1,J1,Y1,X1,Gy,Qi,Q1,ea,m9,eT,Fn,tT,h9,Go,rT,Id,nT,oT,sT,iT,aT,cT,uT,Ai,lT,dT,pT,Od,Cd,fT,mT,hT,gT,yT,_T,vT,xT,bT,$T,ST,wT,kT,TT,ET,PT,RT,IT,ta,OT,CT,zT,ra,NT,AT,jT,zd,MT,g9,y9,_9,v9,x9,b9,N,gd,Ko=$(()=>{Oy();yd="2025-11-25",Cy=[yd,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Sr="io.modelcontextprotocol/related-task",ji="2.0",je=Ty(t=>t!==null&&(typeof t=="object"||typeof t=="function")),zy=ye([_(),ce().int()]),Ny=_(),d9=Be({ttl:ye([ce(),fd()]).optional(),pollInterval:ce().optional()}),p1=O({ttl:ce().optional()}),f1=O({taskId:_()}),_d=Be({progressToken:zy.optional(),[Sr]:f1.optional()}),lt=O({_meta:_d.optional()}),Zo=lt.extend({task:p1.optional()}),Ay=t=>Zo.safeParse(t).success,Me=O({method:_(),params:lt.loose().optional()}),gt=O({_meta:_d.optional()}),yt=O({method:_(),params:gt.loose().optional()}),De=Be({_meta:_d.optional()}),Mi=ye([_(),ce().int()]),jy=O({jsonrpc:A(ji),id:Mi,...Me.shape}).strict(),vd=t=>jy.safeParse(t).success,My=O({jsonrpc:A(ji),...yt.shape}).strict(),Dy=t=>My.safeParse(t).success,xd=O({jsonrpc:A(ji),id:Mi,result:De}).strict(),Lo=t=>xd.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"})(M||(M={}));bd=O({jsonrpc:A(ji),id:Mi.optional(),error:O({code:ce().int(),message:_(),data:$e().optional()})}).strict(),Zy=t=>bd.safeParse(t).success,Ly=ye([jy,My,xd,bd]),p9=ye([xd,bd]),Di=De.strict(),m1=gt.extend({requestId:Mi.optional(),reason:_().optional()}),Zi=yt.extend({method:A("notifications/cancelled"),params:m1}),h1=O({src:_(),mimeType:_().optional(),sizes:te(_()).optional(),theme:nt(["light","dark"]).optional()}),qo=O({icons:te(h1).optional()}),Ln=O({name:_(),title:_().optional()}),qy=Ln.extend({...Ln.shape,...qo.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),g1=Ni(O({applyDefaults:Oe().optional()}),Se(_(),$e())),y1=hd(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Ni(O({form:g1.optional(),url:je.optional()}),Se(_(),$e()).optional())),_1=Be({list:je.optional(),cancel:je.optional(),requests:Be({sampling:Be({createMessage:je.optional()}).optional(),elicitation:Be({create:je.optional()}).optional()}).optional()}),v1=Be({list:je.optional(),cancel:je.optional(),requests:Be({tools:Be({call:je.optional()}).optional()}).optional()}),x1=O({experimental:Se(_(),je).optional(),sampling:O({context:je.optional(),tools:je.optional()}).optional(),elicitation:y1.optional(),roots:O({listChanged:Oe().optional()}).optional(),tasks:_1.optional()}),b1=lt.extend({protocolVersion:_(),capabilities:x1,clientInfo:qy}),$d=Me.extend({method:A("initialize"),params:b1}),$1=O({experimental:Se(_(),je).optional(),logging:je.optional(),completions:je.optional(),prompts:O({listChanged:Oe().optional()}).optional(),resources:O({subscribe:Oe().optional(),listChanged:Oe().optional()}).optional(),tools:O({listChanged:Oe().optional()}).optional(),tasks:v1.optional()}),S1=De.extend({protocolVersion:_(),capabilities:$1,serverInfo:qy,instructions:_().optional()}),Sd=yt.extend({method:A("notifications/initialized"),params:gt.optional()}),Li=Me.extend({method:A("ping"),params:lt.optional()}),w1=O({progress:ce(),total:ke(ce()),message:ke(_())}),k1=O({...gt.shape,...w1.shape,progressToken:zy}),qi=yt.extend({method:A("notifications/progress"),params:k1}),T1=lt.extend({cursor:Ny.optional()}),Uo=Me.extend({params:T1.optional()}),Fo=De.extend({nextCursor:Ny.optional()}),E1=nt(["working","input_required","completed","failed","cancelled"]),Ho=O({taskId:_(),status:E1,ttl:ye([ce(),fd()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:ke(ce()),statusMessage:ke(_())}),qn=De.extend({task:Ho}),P1=gt.merge(Ho),Vo=yt.extend({method:A("notifications/tasks/status"),params:P1}),Ui=Me.extend({method:A("tasks/get"),params:lt.extend({taskId:_()})}),Fi=De.merge(Ho),Hi=Me.extend({method:A("tasks/result"),params:lt.extend({taskId:_()})}),f9=De.loose(),Vi=Uo.extend({method:A("tasks/list")}),Bi=Fo.extend({tasks:te(Ho)}),Gi=Me.extend({method:A("tasks/cancel"),params:lt.extend({taskId:_()})}),Uy=De.merge(Ho),Fy=O({uri:_(),mimeType:ke(_()),_meta:Se(_(),$e()).optional()}),Hy=Fy.extend({text:_()}),wd=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Vy=Fy.extend({blob:wd}),Bo=nt(["user","assistant"]),Un=O({audience:te(Bo).optional(),priority:ce().min(0).max(1).optional(),lastModified:Mo.datetime({offset:!0}).optional()}),By=O({...Ln.shape,...qo.shape,uri:_(),description:ke(_()),mimeType:ke(_()),annotations:Un.optional(),_meta:ke(Be({}))}),R1=O({...Ln.shape,...qo.shape,uriTemplate:_(),description:ke(_()),mimeType:ke(_()),annotations:Un.optional(),_meta:ke(Be({}))}),Ki=Uo.extend({method:A("resources/list")}),I1=Fo.extend({resources:te(By)}),Wi=Uo.extend({method:A("resources/templates/list")}),O1=Fo.extend({resourceTemplates:te(R1)}),kd=lt.extend({uri:_()}),C1=kd,Ji=Me.extend({method:A("resources/read"),params:C1}),z1=De.extend({contents:te(ye([Hy,Vy]))}),N1=yt.extend({method:A("notifications/resources/list_changed"),params:gt.optional()}),A1=kd,j1=Me.extend({method:A("resources/subscribe"),params:A1}),M1=kd,D1=Me.extend({method:A("resources/unsubscribe"),params:M1}),Z1=gt.extend({uri:_()}),L1=yt.extend({method:A("notifications/resources/updated"),params:Z1}),q1=O({name:_(),description:ke(_()),required:ke(Oe())}),U1=O({...Ln.shape,...qo.shape,description:ke(_()),arguments:ke(te(q1)),_meta:ke(Be({}))}),Yi=Uo.extend({method:A("prompts/list")}),F1=Fo.extend({prompts:te(U1)}),H1=lt.extend({name:_(),arguments:Se(_(),_()).optional()}),Xi=Me.extend({method:A("prompts/get"),params:H1}),Td=O({type:A("text"),text:_(),annotations:Un.optional(),_meta:Se(_(),$e()).optional()}),Ed=O({type:A("image"),data:wd,mimeType:_(),annotations:Un.optional(),_meta:Se(_(),$e()).optional()}),Pd=O({type:A("audio"),data:wd,mimeType:_(),annotations:Un.optional(),_meta:Se(_(),$e()).optional()}),V1=O({type:A("tool_use"),name:_(),id:_(),input:Se(_(),$e()),_meta:Se(_(),$e()).optional()}),B1=O({type:A("resource"),resource:ye([Hy,Vy]),annotations:Un.optional(),_meta:Se(_(),$e()).optional()}),G1=By.extend({type:A("resource_link")}),Rd=ye([Td,Ed,Pd,G1,B1]),K1=O({role:Bo,content:Rd}),W1=De.extend({description:_().optional(),messages:te(K1)}),J1=yt.extend({method:A("notifications/prompts/list_changed"),params:gt.optional()}),Y1=O({title:_().optional(),readOnlyHint:Oe().optional(),destructiveHint:Oe().optional(),idempotentHint:Oe().optional(),openWorldHint:Oe().optional()}),X1=O({taskSupport:nt(["required","optional","forbidden"]).optional()}),Gy=O({...Ln.shape,...qo.shape,description:_().optional(),inputSchema:O({type:A("object"),properties:Se(_(),je).optional(),required:te(_()).optional()}).catchall($e()),outputSchema:O({type:A("object"),properties:Se(_(),je).optional(),required:te(_()).optional()}).catchall($e()).optional(),annotations:Y1.optional(),execution:X1.optional(),_meta:Se(_(),$e()).optional()}),Qi=Uo.extend({method:A("tools/list")}),Q1=Fo.extend({tools:te(Gy)}),ea=De.extend({content:te(Rd).default([]),structuredContent:Se(_(),$e()).optional(),isError:Oe().optional()}),m9=ea.or(De.extend({toolResult:$e()})),eT=Zo.extend({name:_(),arguments:Se(_(),$e()).optional()}),Fn=Me.extend({method:A("tools/call"),params:eT}),tT=yt.extend({method:A("notifications/tools/list_changed"),params:gt.optional()}),h9=O({autoRefresh:Oe().default(!0),debounceMs:ce().int().nonnegative().default(300)}),Go=nt(["debug","info","notice","warning","error","critical","alert","emergency"]),rT=lt.extend({level:Go}),Id=Me.extend({method:A("logging/setLevel"),params:rT}),nT=gt.extend({level:Go,logger:_().optional(),data:$e()}),oT=yt.extend({method:A("notifications/message"),params:nT}),sT=O({name:_().optional()}),iT=O({hints:te(sT).optional(),costPriority:ce().min(0).max(1).optional(),speedPriority:ce().min(0).max(1).optional(),intelligencePriority:ce().min(0).max(1).optional()}),aT=O({mode:nt(["auto","required","none"]).optional()}),cT=O({type:A("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:te(Rd).default([]),structuredContent:O({}).loose().optional(),isError:Oe().optional(),_meta:Se(_(),$e()).optional()}),uT=md("type",[Td,Ed,Pd]),Ai=md("type",[Td,Ed,Pd,V1,cT]),lT=O({role:Bo,content:ye([Ai,te(Ai)]),_meta:Se(_(),$e()).optional()}),dT=Zo.extend({messages:te(lT),modelPreferences:iT.optional(),systemPrompt:_().optional(),includeContext:nt(["none","thisServer","allServers"]).optional(),temperature:ce().optional(),maxTokens:ce().int(),stopSequences:te(_()).optional(),metadata:je.optional(),tools:te(Gy).optional(),toolChoice:aT.optional()}),pT=Me.extend({method:A("sampling/createMessage"),params:dT}),Od=De.extend({model:_(),stopReason:ke(nt(["endTurn","stopSequence","maxTokens"]).or(_())),role:Bo,content:uT}),Cd=De.extend({model:_(),stopReason:ke(nt(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:Bo,content:ye([Ai,te(Ai)])}),fT=O({type:A("boolean"),title:_().optional(),description:_().optional(),default:Oe().optional()}),mT=O({type:A("string"),title:_().optional(),description:_().optional(),minLength:ce().optional(),maxLength:ce().optional(),format:nt(["email","uri","date","date-time"]).optional(),default:_().optional()}),hT=O({type:nt(["number","integer"]),title:_().optional(),description:_().optional(),minimum:ce().optional(),maximum:ce().optional(),default:ce().optional()}),gT=O({type:A("string"),title:_().optional(),description:_().optional(),enum:te(_()),default:_().optional()}),yT=O({type:A("string"),title:_().optional(),description:_().optional(),oneOf:te(O({const:_(),title:_()})),default:_().optional()}),_T=O({type:A("string"),title:_().optional(),description:_().optional(),enum:te(_()),enumNames:te(_()).optional(),default:_().optional()}),vT=ye([gT,yT]),xT=O({type:A("array"),title:_().optional(),description:_().optional(),minItems:ce().optional(),maxItems:ce().optional(),items:O({type:A("string"),enum:te(_())}),default:te(_()).optional()}),bT=O({type:A("array"),title:_().optional(),description:_().optional(),minItems:ce().optional(),maxItems:ce().optional(),items:O({anyOf:te(O({const:_(),title:_()}))}),default:te(_()).optional()}),$T=ye([xT,bT]),ST=ye([_T,vT,$T]),wT=ye([ST,fT,mT,hT]),kT=Zo.extend({mode:A("form").optional(),message:_(),requestedSchema:O({type:A("object"),properties:Se(_(),wT),required:te(_()).optional()})}),TT=Zo.extend({mode:A("url"),message:_(),elicitationId:_(),url:_().url()}),ET=ye([kT,TT]),PT=Me.extend({method:A("elicitation/create"),params:ET}),RT=gt.extend({elicitationId:_()}),IT=yt.extend({method:A("notifications/elicitation/complete"),params:RT}),ta=De.extend({action:nt(["accept","decline","cancel"]),content:hd(t=>t===null?void 0:t,Se(_(),ye([_(),ce(),Oe(),te(_())])).optional())}),OT=O({type:A("ref/resource"),uri:_()}),CT=O({type:A("ref/prompt"),name:_()}),zT=lt.extend({ref:ye([CT,OT]),argument:O({name:_(),value:_()}),context:O({arguments:Se(_(),_()).optional()}).optional()}),ra=Me.extend({method:A("completion/complete"),params:zT});NT=De.extend({completion:Be({values:te(_()).max(100),total:ke(ce().int()),hasMore:ke(Oe())})}),AT=O({uri:_().startsWith("file://"),name:_().optional(),_meta:Se(_(),$e()).optional()}),jT=Me.extend({method:A("roots/list"),params:lt.optional()}),zd=De.extend({roots:te(AT)}),MT=yt.extend({method:A("notifications/roots/list_changed"),params:gt.optional()}),g9=ye([Li,$d,ra,Id,Xi,Yi,Ki,Wi,Ji,j1,D1,Fn,Qi,Ui,Hi,Vi,Gi]),y9=ye([Zi,qi,Sd,MT,Vo]),_9=ye([Di,Od,Cd,ta,zd,Fi,Bi,qn]),v9=ye([Li,pT,PT,jT,Ui,Hi,Vi,Gi]),x9=ye([Zi,qi,oT,L1,N1,tT,J1,Vo,IT]),b9=ye([Di,S1,NT,W1,F1,I1,O1,z1,ea,Q1,Fi,Bi,qn]),N=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===M.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new gd(o.elicitations,r)}return new t(e,r,n)}},gd=class extends N{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(M.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}}});function wr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Jy=$(()=>{});var Xy,Yy,Qy,na=$(()=>{Xy=Symbol("Let zodToJsonSchema decide on which parser to use"),Yy={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"},Qy=t=>typeof t=="string"?{...Yy,name:t}:{...Yy,...t}});var e_,Nd=$(()=>{na();e_=t=>{let e=Qy(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 Ad(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function re(t,e,r,n,o){t[e]=r,Ad(t,e,n,o)}var kr=$(()=>{});var oa,sa=$(()=>{oa=(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 we(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?oa(e,t.currentPath):e.join("/")}}var _t=$(()=>{sa()});function t_(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==k.ZodAny&&(r.items=q(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 jd=$(()=>{So();kr();Re()});function r_(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 Md=$(()=>{kr()});function n_(){return{type:"boolean"}}var Dd=$(()=>{});function ia(t,e){return q(t.type._def,e)}var aa=$(()=>{Re()});var o_,Zd=$(()=>{Re();o_=(t,e)=>q(t.innerType._def,e)});function Ld(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Ld(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 DT(t,e)}}var DT,qd=$(()=>{kr();DT=(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 s_(t,e){return{...q(t.innerType._def,e),default:t.defaultValue()}}var Ud=$(()=>{Re()});function i_(t,e){return e.effectStrategy==="input"?q(t.schema._def,e):we(e)}var Fd=$(()=>{Re();_t()});function a_(t){return{type:"string",enum:Array.from(t.values)}}var Hd=$(()=>{});function c_(t,e){let r=[q(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),q(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(ZT(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 ZT,Vd=$(()=>{Re();ZT=t=>"type"in t&&t.type==="string"?!1:"allOf"in t});function u_(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 Bd=$(()=>{});function ca(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":It(r,"email",n.message,e);break;case"format:idn-email":It(r,"idn-email",n.message,e);break;case"pattern:zod":Ge(r,Rt.email,n.message,e);break}break;case"url":It(r,"uri",n.message,e);break;case"uuid":It(r,"uuid",n.message,e);break;case"regex":Ge(r,n.regex,n.message,e);break;case"cuid":Ge(r,Rt.cuid,n.message,e);break;case"cuid2":Ge(r,Rt.cuid2,n.message,e);break;case"startsWith":Ge(r,RegExp(`^${Kd(n.value,e)}`),n.message,e);break;case"endsWith":Ge(r,RegExp(`${Kd(n.value,e)}$`),n.message,e);break;case"datetime":It(r,"date-time",n.message,e);break;case"date":It(r,"date",n.message,e);break;case"time":It(r,"time",n.message,e);break;case"duration":It(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":{Ge(r,RegExp(Kd(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&It(r,"ipv4",n.message,e),n.version!=="v4"&&It(r,"ipv6",n.message,e);break}case"base64url":Ge(r,Rt.base64url,n.message,e);break;case"jwt":Ge(r,Rt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Ge(r,Rt.ipv4Cidr,n.message,e),n.version!=="v4"&&Ge(r,Rt.ipv6Cidr,n.message,e);break}case"emoji":Ge(r,Rt.emoji(),n.message,e);break;case"ulid":{Ge(r,Rt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{It(r,"binary",n.message,e);break}case"contentEncoding:base64":{re(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Ge(r,Rt.base64,n.message,e);break}}break}case"nanoid":Ge(r,Rt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Kd(t,e){return e.patternStrategy==="escape"?qT(t):t}function qT(t){let e="";for(let r=0;r<t.length;r++)LT.has(t[r])||(e+="\\"),e+=t[r];return e}function It(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 Ge(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:l_(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):re(t,"pattern",l_(e,n),r,n)}function l_(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
|
|
50
|
+
]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
|
|
51
|
+
]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
|
|
52
|
+
`:`[${n[c]}\r
|
|
53
|
+
]`;continue}o+=n[c],n[c]==="\\"?s=!0:i&&n[c]==="]"?i=!1:!i&&n[c]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return o}var Gd,Rt,LT,ua=$(()=>{kr();Rt={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(Gd===void 0&&(Gd=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Gd),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};LT=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789")});function la(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===k.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:q(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??we(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:q(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===k.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=ca(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===k.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===k.ZodBranded&&t.keyType._def.type._def.typeName===k.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=ia(t.keyType._def,e);return{...r,propertyNames:o}}}return r}var da=$(()=>{So();Re();ua();aa();_t()});function d_(t,e){if(e.mapStrategy==="record")return la(t,e);let r=q(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||we(e),n=q(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||we(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}var Wd=$(()=>{Re();da();_t()});function p_(t){let e=t.values,n=Object.keys(t.values).filter(s=>typeof e[e[s]]!="number").map(s=>e[s]),o=Array.from(new Set(n.map(s=>typeof s)));return{type:o.length===1?o[0]==="string"?"string":"number":["string","number"],enum:n}}var Jd=$(()=>{});function f_(t){return t.target==="openAi"?void 0:{not:we({...t,currentPath:[...t.currentPath,"not"]})}}var Yd=$(()=>{_t()});function m_(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Xd=$(()=>{});function g_(t,e){if(e.target==="openApi3")return h_(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Wo&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Wo[s._def.typeName];return i&&!o.includes(i)?[...o,i]:o},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){let n=r.reduce((o,s)=>{let i=typeof s._def.value;switch(i){case"string":case"number":case"boolean":return[...o,i];case"bigint":return[...o,"integer"];case"object":if(s._def.value===null)return[...o,"null"];default:return o}},[]);if(n.length===r.length){let o=n.filter((s,i,a)=>a.indexOf(s)===i);return{type:o.length>1?o:o[0],enum:r.reduce((s,i)=>s.includes(i._def.value)?s:[...s,i._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,o)=>[...n,...o._def.values.filter(s=>!n.includes(s))],[])};return h_(t,e)}var Wo,h_,pa=$(()=>{Re();Wo={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};h_=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>q(n._def,{...e,currentPath:[...e.currentPath,"anyOf",`${o}`]})).filter(n=>!!n&&(!e.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0}});function y_(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:Wo[t.innerType._def.typeName],nullable:!0}:{type:[Wo[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=q(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=q(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}var Qd=$(()=>{Re();pa()});function __(t,e){let r={type:"number"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"int":r.type="integer",Ad(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?re(r,"minimum",n.value,n.message,e):re(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),re(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?re(r,"maximum",n.value,n.message,e):re(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),re(r,"maximum",n.value,n.message,e));break;case"multipleOf":re(r,"multipleOf",n.value,n.message,e);break}return r}var ep=$(()=>{kr()});function v_(t,e){let r=e.target==="openAi",n={type:"object",properties:{}},o=[],s=t.shape();for(let a in s){let c=s[a];if(c===void 0||c._def===void 0)continue;let u=FT(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=q(c._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});l!==void 0&&(n.properties[a]=l,u||o.push(a))}o.length&&(n.required=o);let i=UT(t,e);return i!==void 0&&(n.additionalProperties=i),n}function UT(t,e){if(t.catchall._def.typeName!=="ZodNever")return q(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]});switch(t.unknownKeys){case"passthrough":return e.allowedAdditionalProperties;case"strict":return e.rejectedAdditionalProperties;case"strip":return e.removeAdditionalStrategy==="strict"?e.allowedAdditionalProperties:e.rejectedAdditionalProperties}}function FT(t){try{return t.isOptional()}catch{return!0}}var tp=$(()=>{Re()});var x_,rp=$(()=>{Re();_t();x_=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return q(t.innerType._def,e);let r=q(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:we(e)},r]}:we(e)}});var b_,np=$(()=>{Re();b_=(t,e)=>{if(e.pipeStrategy==="input")return q(t.in._def,e);if(e.pipeStrategy==="output")return q(t.out._def,e);let r=q(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=q(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}}});function $_(t,e){return q(t.type._def,e)}var op=$(()=>{Re()});function S_(t,e){let n={type:"array",uniqueItems:!0,items:q(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&re(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&re(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}var sp=$(()=>{kr();Re()});function w_(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>q(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:q(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>q(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}var ip=$(()=>{Re()});function k_(t){return{not:we(t)}}var ap=$(()=>{_t()});function T_(t){return we(t)}var cp=$(()=>{_t()});var E_,up=$(()=>{Re();E_=(t,e)=>q(t.innerType._def,e)});var P_,lp=$(()=>{So();_t();jd();Md();Dd();aa();Zd();qd();Ud();Fd();Hd();Vd();Bd();Wd();Jd();Yd();Xd();Qd();ep();tp();rp();np();op();da();sp();ua();ip();ap();pa();cp();up();P_=(t,e,r)=>{switch(e){case k.ZodString:return ca(t,r);case k.ZodNumber:return __(t,r);case k.ZodObject:return v_(t,r);case k.ZodBigInt:return r_(t,r);case k.ZodBoolean:return n_();case k.ZodDate:return Ld(t,r);case k.ZodUndefined:return k_(r);case k.ZodNull:return m_(r);case k.ZodArray:return t_(t,r);case k.ZodUnion:case k.ZodDiscriminatedUnion:return g_(t,r);case k.ZodIntersection:return c_(t,r);case k.ZodTuple:return w_(t,r);case k.ZodRecord:return la(t,r);case k.ZodLiteral:return u_(t,r);case k.ZodEnum:return a_(t);case k.ZodNativeEnum:return p_(t);case k.ZodNullable:return y_(t,r);case k.ZodOptional:return x_(t,r);case k.ZodMap:return d_(t,r);case k.ZodSet:return S_(t,r);case k.ZodLazy:return()=>t.getter()._def;case k.ZodPromise:return $_(t,r);case k.ZodNaN:case k.ZodNever:return f_(r);case k.ZodEffects:return i_(t,r);case k.ZodAny:return we(r);case k.ZodUnknown:return T_(r);case k.ZodDefault:return s_(t,r);case k.ZodBranded:return ia(t,r);case k.ZodReadonly:return E_(t,r);case k.ZodCatch:return o_(t,r);case k.ZodPipeline:return b_(t,r);case k.ZodFunction:case k.ZodVoid:case k.ZodSymbol:return;default:return(n=>{})(e)}}});function q(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Xy)return a}if(n&&!r){let a=HT(n,e);if(a!==void 0)return a}let o={def:t,path:e.currentPath,jsonSchema:void 0};e.seen.set(t,o);let s=P_(t,t.typeName,e),i=typeof s=="function"?q(s(),e):s;if(i&&VT(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var HT,VT,Re=$(()=>{na();lp();sa();_t();HT=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:oa(e.currentPath,t.path)};case"none":case"seen":return t.path.length<e.currentPath.length&&t.path.every((r,n)=>e.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),we(e)):e.$refStrategy==="seen"?we(e):void 0}},VT=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r)});var R_=$(()=>{});var dp,pp=$(()=>{Re();Nd();_t();dp=(t,e)=>{let r=e_(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:q(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??we(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=q(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??we(r),i=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;i!==void 0&&(s.title=i),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let a=o===void 0?n?{...s,[r.definitionPath]:n}:s:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,o].join("/"),[r.definitionPath]:{...n,[o]:s}};return r.target==="jsonSchema7"?a.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(a.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in a||"oneOf"in a||"allOf"in a||"type"in a&&Array.isArray(a.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),a}});var I_=$(()=>{na();Nd();kr();sa();Re();R_();_t();jd();Md();Dd();aa();Zd();qd();Ud();Fd();Hd();Vd();Bd();Wd();Jd();Yd();Xd();Qd();ep();tp();rp();np();op();up();da();sp();ua();ip();ap();pa();cp();lp();pp();pp()});function BT(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function fp(t,e){return ht(t)?Xl(t,{target:BT(e?.target),io:e?.pipeStrategy??"input"}):dp(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function mp(t){let r=$r(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Ci(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function hp(t,e){let r=br(t,e);if(!r.success)throw r.error;return r.data}var gp=$(()=>{td();jo();I_()});function O_(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function C_(t,e){let r={...t};for(let n in e){let o=n,s=e[o];if(s===void 0)continue;let i=r[o];O_(i)&&O_(s)?r[o]={...i,...s}:r[o]=s}return r}var GT,fa,z_=$(()=>{jo();Ko();Jy();gp();GT=6e4,fa=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(Zi,r=>{this._oncancel(r)}),this.setNotificationHandler(qi,r=>{this._onprogress(r)}),this.setRequestHandler(Li,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Ui,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new N(M.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(Hi,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,f=new N(d.error.code,d.error.message,d.error.data);l(f)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new N(M.InvalidParams,`Task not found: ${s}`);if(!wr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(wr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Sr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(Vi,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new N(M.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(Gi,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new N(M.InvalidParams,`Task not found: ${r.params.taskId}`);if(wr(o.status))throw new N(M.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new N(M.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof N?o:new N(M.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),N.fromError(M.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),Lo(s)||Zy(s)?this._onresponse(s):vd(s)?this._onrequest(s,i):Dy(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=N.fromError(M.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[Sr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:M.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=Ay(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,f)=>{if(i.signal.aborted)throw new N(M.ConnectionClosed,"Request was cancelled");let h={...f,relatedRequestId:e.id};s&&!h.relatedTask&&(h.relatedTask={taskId:s});let p=h.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,h)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:M.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),Lo(e))n(e);else{let i=new N(e.error.code,e.error.message,e.error.data);n(i)}return}let o=this._responseHandlers.get(r);if(o===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let s=!1;if(Lo(e)&&e.result&&typeof e.result=="object"){let i=e.result;if(i.task&&typeof i.task=="object"){let a=i.task;typeof a.taskId=="string"&&(s=!0,this._taskProgressTokens.set(a.taskId,r))}}if(s||this._progressHandlers.delete(r),Lo(e))o(e);else{let i=N.fromError(e.error.code,e.error.message,e.error.data);o(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(e,r,n)}}catch(i){yield{type:"error",error:i instanceof N?i:new N(M.InternalError,String(i))}}return}let s;try{let i=await this.request(e,qn,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new N(M.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},wr(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new N(M.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new N(M.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof N?i:new N(M.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=v=>{l(v)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(v){d(v);return}n?.signal?.throwIfAborted();let f=this._requestMessageId++,h={...e,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),h.params={...e.params,_meta:{...e.params?._meta||{},progressToken:f}}),a&&(h.params={...h.params,task:a}),c&&(h.params={...h.params,_meta:{...h.params?._meta||{},[Sr]:c}});let p=v=>{this._responseHandlers.delete(f),this._progressHandlers.delete(f),this._cleanupTimeout(f),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:f,reason:String(v)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(S=>this._onerror(new Error(`Failed to send cancellation: ${S}`)));let b=v instanceof N?v:new N(M.RequestTimeout,String(v));l(b)};this._responseHandlers.set(f,v=>{if(!n?.signal?.aborted){if(v instanceof Error)return l(v);try{let b=br(r,v.result);b.success?u(b.data):l(b.error)}catch(b){l(b)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let m=n?.timeout??GT,g=()=>p(N.fromError(M.RequestTimeout,"Request timed out",{timeout:m}));this._setupTimeout(f,m,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let y=c?.taskId;if(y){let v=b=>{let S=this._responseHandlers.get(f);S?S(b):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,v),this._enqueueTaskMessage(y,{type:"request",message:h,timestamp:Date.now()}).catch(b=>{this._cleanupTimeout(f),l(b)})}else this._transport.send(h,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(v=>{this._cleanupTimeout(f),l(v)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Fi,r)}async getTaskResult(e,r,n){return this.request({method:"tasks/result",params:e},r,n)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},Bi,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Uy,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let n=r?.relatedTask?.taskId;if(n){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[Sr]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[Sr]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let i={...e,jsonrpc:"2.0"};r?.relatedTask&&(i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[Sr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=mp(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=hp(e,o);return Promise.resolve(r(i,s))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw new Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,r){let n=mp(e);this._notificationHandlers.set(n,o=>{let s=hp(e,o);return Promise.resolve(r(s))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let r=this._taskProgressTokens.get(e);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,r,n){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let o=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,n,o)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,r);for(let o of n)if(o.type==="request"&&vd(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new N(M.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new N(M.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new N(M.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new N(M.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=Vo.parse({method:"notifications/tasks/status",params:a});await this.notification(c),wr(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,i)=>{let a=await n.getTask(o,r);if(!a)throw new N(M.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(wr(a.status))throw new N(M.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=Vo.parse({method:"notifications/tasks/status",params:c});await this.notification(u),wr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}}});var Xo=R(ie=>{"use strict";Object.defineProperty(ie,"__esModule",{value:!0});ie.regexpCode=ie.getEsmExportName=ie.getProperty=ie.safeStringify=ie.stringify=ie.strConcat=ie.addCodeArg=ie.str=ie._=ie.nil=ie._Code=ie.Name=ie.IDENTIFIER=ie._CodeOrName=void 0;var Jo=class{};ie._CodeOrName=Jo;ie.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var un=class extends Jo{constructor(e){if(super(),!ie.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};ie.Name=un;var vt=class extends Jo{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof un&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ie._Code=vt;ie.nil=new vt("");function N_(t,...e){let r=[t[0]],n=0;for(;n<e.length;)_p(r,e[n]),r.push(t[++n]);return new vt(r)}ie._=N_;var yp=new vt("+");function A_(t,...e){let r=[Yo(t[0])],n=0;for(;n<e.length;)r.push(yp),_p(r,e[n]),r.push(yp,Yo(t[++n]));return KT(r),new vt(r)}ie.str=A_;function _p(t,e){e instanceof vt?t.push(...e._items):e instanceof un?t.push(e):t.push(YT(e))}ie.addCodeArg=_p;function KT(t){let e=1;for(;e<t.length-1;){if(t[e]===yp){let r=WT(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function WT(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof un||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof un))return`"${t}${e.slice(1)}`}function JT(t,e){return e.emptyStr()?t:t.emptyStr()?e:A_`${t}${e}`}ie.strConcat=JT;function YT(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Yo(Array.isArray(t)?t.join(","):t)}function XT(t){return new vt(Yo(t))}ie.stringify=XT;function Yo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ie.safeStringify=Yo;function QT(t){return typeof t=="string"&&ie.IDENTIFIER.test(t)?new vt(`.${t}`):N_`[${t}]`}ie.getProperty=QT;function eE(t){if(typeof t=="string"&&ie.IDENTIFIER.test(t))return new vt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ie.getEsmExportName=eE;function tE(t){return new vt(t.toString())}ie.regexpCode=tE});var bp=R(st=>{"use strict";Object.defineProperty(st,"__esModule",{value:!0});st.ValueScope=st.ValueScopeName=st.Scope=st.varKinds=st.UsedValueState=void 0;var ot=Xo(),vp=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},ma;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(ma||(st.UsedValueState=ma={}));st.varKinds={const:new ot.Name("const"),let:new ot.Name("let"),var:new ot.Name("var")};var ha=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof ot.Name?e:this.name(e)}name(e){return new ot.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};st.Scope=ha;var ga=class extends ot.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,ot._)`.${new ot.Name(r)}[${n}]`}};st.ValueScopeName=ga;var rE=(0,ot._)`\n`,xp=class extends ha{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?rE:ot.nil}}get(){return this._scope}name(e){return new ga(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,ot._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=ot.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,ma.Started);let l=r(u);if(l){let d=this.opts.es5?st.varKinds.var:st.varKinds.const;s=(0,ot._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,ot._)`${s}${l}${this.opts._n}`;else throw new vp(u);c.set(u,ma.Completed)})}return s}};st.ValueScope=xp});var B=R(G=>{"use strict";Object.defineProperty(G,"__esModule",{value:!0});G.or=G.and=G.not=G.CodeGen=G.operators=G.varKinds=G.ValueScopeName=G.ValueScope=G.Scope=G.Name=G.regexpCode=G.stringify=G.getProperty=G.nil=G.strConcat=G.str=G._=void 0;var ne=Xo(),Ot=bp(),Tr=Xo();Object.defineProperty(G,"_",{enumerable:!0,get:function(){return Tr._}});Object.defineProperty(G,"str",{enumerable:!0,get:function(){return Tr.str}});Object.defineProperty(G,"strConcat",{enumerable:!0,get:function(){return Tr.strConcat}});Object.defineProperty(G,"nil",{enumerable:!0,get:function(){return Tr.nil}});Object.defineProperty(G,"getProperty",{enumerable:!0,get:function(){return Tr.getProperty}});Object.defineProperty(G,"stringify",{enumerable:!0,get:function(){return Tr.stringify}});Object.defineProperty(G,"regexpCode",{enumerable:!0,get:function(){return Tr.regexpCode}});Object.defineProperty(G,"Name",{enumerable:!0,get:function(){return Tr.Name}});var xa=bp();Object.defineProperty(G,"Scope",{enumerable:!0,get:function(){return xa.Scope}});Object.defineProperty(G,"ValueScope",{enumerable:!0,get:function(){return xa.ValueScope}});Object.defineProperty(G,"ValueScopeName",{enumerable:!0,get:function(){return xa.ValueScopeName}});Object.defineProperty(G,"varKinds",{enumerable:!0,get:function(){return xa.varKinds}});G.operators={GT:new ne._Code(">"),GTE:new ne._Code(">="),LT:new ne._Code("<"),LTE:new ne._Code("<="),EQ:new ne._Code("==="),NEQ:new ne._Code("!=="),NOT:new ne._Code("!"),OR:new ne._Code("||"),AND:new ne._Code("&&"),ADD:new ne._Code("+")};var sr=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},$p=class extends sr{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Ot.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=Vn(this.rhs,e,r)),this}get names(){return this.rhs instanceof ne._CodeOrName?this.rhs.names:{}}},ya=class extends sr{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof ne.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Vn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof ne.Name?{}:{...this.lhs.names};return va(e,this.rhs)}},Sp=class extends ya{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},wp=class extends sr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},kp=class extends sr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Tp=class extends sr{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Ep=class extends sr{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=Vn(this.code,e,r),this}get names(){return this.code instanceof ne._CodeOrName?this.code.names:{}}},Qo=class extends sr{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,o=n.length;for(;o--;){let s=n[o];s.optimizeNames(e,r)||(nE(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>pn(e,r.names),{})}},ir=class extends Qo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Pp=class extends Qo{},Hn=class extends ir{};Hn.kind="else";var ln=class t extends ir{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Hn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(j_(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=Vn(this.condition,e,r),this}get names(){let e=super.names;return va(e,this.condition),this.else&&pn(e,this.else.names),e}};ln.kind="if";var dn=class extends ir{};dn.kind="for";var Rp=class extends dn{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=Vn(this.iteration,e,r),this}get names(){return pn(super.names,this.iteration.names)}},Ip=class extends dn{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?Ot.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=va(super.names,this.from);return va(e,this.to)}},_a=class extends dn{constructor(e,r,n,o){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=o}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=Vn(this.iterable,e,r),this}get names(){return pn(super.names,this.iterable.names)}},es=class extends ir{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};es.kind="func";var ts=class extends Qo{render(e){return"return "+super.render(e)}};ts.kind="return";var Op=class extends ir{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,o;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(o=this.finally)===null||o===void 0||o.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&pn(e,this.catch.names),this.finally&&pn(e,this.finally.names),e}},rs=class extends ir{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};rs.kind="catch";var ns=class extends ir{render(e){return"finally"+super.render(e)}};ns.kind="finally";var Cp=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
54
|
+
`:""},this._extScope=e,this._scope=new Ot.Scope({parent:e}),this._nodes=[new Pp]}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 $p(e,s,n)),s}const(e,r,n){return this._def(Ot.varKinds.const,e,r,n)}let(e,r,n){return this._def(Ot.varKinds.let,e,r,n)}var(e,r,n){return this._def(Ot.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new ya(e,r,n))}add(e,r){return this._leafNode(new Sp(e,G.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==ne.nil&&this._leafNode(new Ep(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 ln(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 ln(e))}else(){return this._elseNode(new Hn)}endIf(){return this._endBlockNode(ln,Hn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Rp(e),r)}forRange(e,r,n,o,s=this.opts.es5?Ot.varKinds.var:Ot.varKinds.let){let i=this._scope.toName(e);return this._for(new Ip(s,i,r,n),()=>o(i))}forOf(e,r,n,o=Ot.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 _a("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?Ot.varKinds.var:Ot.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 _a("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(dn)}label(e){return this._leafNode(new wp(e))}break(e){return this._leafNode(new kp(e))}return(e){let r=new ts;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(ts)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Op;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new rs(s),r(s)}return n&&(this._currNode=o.finally=new ns,this.code(n)),this._endBlockNode(rs,ns)}throw(e){return this._leafNode(new Tp(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 es(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(es)}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 ln))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}};G.CodeGen=Cp;function pn(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function va(t,e){return e instanceof ne._CodeOrName?pn(t,e.names):t}function Vn(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 nE(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function j_(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,ne._)`!${zp(t)}`}G.not=j_;var oE=M_(G.operators.AND);function sE(...t){return t.reduce(oE)}G.and=sE;var iE=M_(G.operators.OR);function aE(...t){return t.reduce(iE)}G.or=aE;function M_(t){return(e,r)=>e===ne.nil?r:r===ne.nil?e:(0,ne._)`${zp(e)} ${t} ${zp(r)}`}function zp(t){return t instanceof ne.Name?t:(0,ne._)`(${t})`}});var oe=R(W=>{"use strict";Object.defineProperty(W,"__esModule",{value:!0});W.checkStrictMode=W.getErrorPath=W.Type=W.useFunc=W.setEvaluated=W.evaluatedPropsToName=W.mergeEvaluated=W.eachItem=W.unescapeJsonPointer=W.escapeJsonPointer=W.escapeFragment=W.unescapeFragment=W.schemaRefOrVal=W.schemaHasRulesButRef=W.schemaHasRules=W.checkUnknownRules=W.alwaysValidSchema=W.toHash=void 0;var fe=B(),cE=Xo();function uE(t){let e={};for(let r of t)e[r]=!0;return e}W.toHash=uE;function lE(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(L_(t,e),!q_(e,t.self.RULES.all))}W.alwaysValidSchema=lE;function L_(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]||H_(t,`unknown keyword: "${s}"`)}W.checkUnknownRules=L_;function q_(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}W.schemaHasRules=q_;function dE(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}W.schemaHasRulesButRef=dE;function pE({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,fe._)`${r}`}return(0,fe._)`${t}${e}${(0,fe.getProperty)(n)}`}W.schemaRefOrVal=pE;function fE(t){return U_(decodeURIComponent(t))}W.unescapeFragment=fE;function mE(t){return encodeURIComponent(Ap(t))}W.escapeFragment=mE;function Ap(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}W.escapeJsonPointer=Ap;function U_(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}W.unescapeJsonPointer=U_;function hE(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}W.eachItem=hE;function D_({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof fe.Name?(s instanceof fe.Name?t(o,s,i):e(o,s,i),i):s instanceof fe.Name?(e(o,i,s),s):r(s,i);return a===fe.Name&&!(c instanceof fe.Name)?n(o,c):c}}W.mergeEvaluated={props:D_({mergeNames:(t,e,r)=>t.if((0,fe._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,fe._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,fe._)`${r} || {}`).code((0,fe._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,fe._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,fe._)`${r} || {}`),jp(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:F_}),items:D_({mergeNames:(t,e,r)=>t.if((0,fe._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,fe._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,fe._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,fe._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function F_(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,fe._)`{}`);return e!==void 0&&jp(t,r,e),r}W.evaluatedPropsToName=F_;function jp(t,e,r){Object.keys(r).forEach(n=>t.assign((0,fe._)`${e}${(0,fe.getProperty)(n)}`,!0))}W.setEvaluated=jp;var Z_={};function gE(t,e){return t.scopeValue("func",{ref:e,code:Z_[e.code]||(Z_[e.code]=new cE._Code(e.code))})}W.useFunc=gE;var Np;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Np||(W.Type=Np={}));function yE(t,e,r){if(t instanceof fe.Name){let n=e===Np.Num;return r?n?(0,fe._)`"[" + ${t} + "]"`:(0,fe._)`"['" + ${t} + "']"`:n?(0,fe._)`"/" + ${t}`:(0,fe._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,fe.getProperty)(t).toString():"/"+Ap(t)}W.getErrorPath=yE;function H_(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}W.checkStrictMode=H_});var ar=R(Mp=>{"use strict";Object.defineProperty(Mp,"__esModule",{value:!0});var Ue=B(),_E={data:new Ue.Name("data"),valCxt:new Ue.Name("valCxt"),instancePath:new Ue.Name("instancePath"),parentData:new Ue.Name("parentData"),parentDataProperty:new Ue.Name("parentDataProperty"),rootData:new Ue.Name("rootData"),dynamicAnchors:new Ue.Name("dynamicAnchors"),vErrors:new Ue.Name("vErrors"),errors:new Ue.Name("errors"),this:new Ue.Name("this"),self:new Ue.Name("self"),scope:new Ue.Name("scope"),json:new Ue.Name("json"),jsonPos:new Ue.Name("jsonPos"),jsonLen:new Ue.Name("jsonLen"),jsonPart:new Ue.Name("jsonPart")};Mp.default=_E});var os=R(Fe=>{"use strict";Object.defineProperty(Fe,"__esModule",{value:!0});Fe.extendErrors=Fe.resetErrorsCount=Fe.reportExtraError=Fe.reportError=Fe.keyword$DataError=Fe.keywordError=void 0;var se=B(),ba=oe(),Ke=ar();Fe.keywordError={message:({keyword:t})=>(0,se.str)`must pass "${t}" keyword validation`};Fe.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 vE(t,e=Fe.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=G_(t,e,r);n??(i||a)?V_(s,c):B_(o,(0,se._)`[${c}]`)}Fe.reportError=vE;function xE(t,e=Fe.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=G_(t,e,r);V_(o,a),s||i||B_(n,Ke.default.vErrors)}Fe.reportExtraError=xE;function bE(t,e){t.assign(Ke.default.errors,e),t.if((0,se._)`${Ke.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,se._)`${Ke.default.vErrors}.length`,e),()=>t.assign(Ke.default.vErrors,null)))}Fe.resetErrorsCount=bE;function $E({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,Ke.default.errors,a=>{t.const(i,(0,se._)`${Ke.default.vErrors}[${a}]`),t.if((0,se._)`${i}.instancePath === undefined`,()=>t.assign((0,se._)`${i}.instancePath`,(0,se.strConcat)(Ke.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))})}Fe.extendErrors=$E;function V_(t,e){let r=t.const("err",e);t.if((0,se._)`${Ke.default.vErrors} === null`,()=>t.assign(Ke.default.vErrors,(0,se._)`[${r}]`),(0,se._)`${Ke.default.vErrors}.push(${r})`),t.code((0,se._)`${Ke.default.errors}++`)}function B_(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 fn={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 G_(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,se._)`{}`:SE(t,e,r)}function SE(t,e,r={}){let{gen:n,it:o}=t,s=[wE(o,r),kE(t,r)];return TE(t,e,s),n.object(...s)}function wE({errorPath:t},{instancePath:e}){let r=e?(0,se.str)`${t}${(0,ba.getErrorPath)(e,ba.Type.Str)}`:t;return[Ke.default.instancePath,(0,se.strConcat)(Ke.default.instancePath,r)]}function kE({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,ba.getErrorPath)(r,ba.Type.Str)}`),[fn.schemaPath,o]}function TE(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([fn.keyword,o],[fn.params,typeof e=="function"?e(t):e||(0,se._)`{}`]),c.messages&&n.push([fn.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([fn.schema,i],[fn.parentSchema,(0,se._)`${l}${d}`],[Ke.default.data,s]),u&&n.push([fn.propertyName,u])}});var W_=R(Bn=>{"use strict";Object.defineProperty(Bn,"__esModule",{value:!0});Bn.boolOrEmptySchema=Bn.topBoolOrEmptySchema=void 0;var EE=os(),PE=B(),RE=ar(),IE={message:"boolean schema is false"};function OE(t){let{gen:e,schema:r,validateName:n}=t;r===!1?K_(t,!1):typeof r=="object"&&r.$async===!0?e.return(RE.default.data):(e.assign((0,PE._)`${n}.errors`,null),e.return(!0))}Bn.topBoolOrEmptySchema=OE;function CE(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),K_(t)):r.var(e,!0)}Bn.boolOrEmptySchema=CE;function K_(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,EE.reportError)(o,IE,void 0,e)}});var Dp=R(Gn=>{"use strict";Object.defineProperty(Gn,"__esModule",{value:!0});Gn.getRules=Gn.isJSONType=void 0;var zE=["string","number","integer","boolean","null","object","array"],NE=new Set(zE);function AE(t){return typeof t=="string"&&NE.has(t)}Gn.isJSONType=AE;function jE(){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:{}}}Gn.getRules=jE});var Zp=R(Er=>{"use strict";Object.defineProperty(Er,"__esModule",{value:!0});Er.shouldUseRule=Er.shouldUseGroup=Er.schemaHasRulesForType=void 0;function ME({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&J_(t,n)}Er.schemaHasRulesForType=ME;function J_(t,e){return e.rules.some(r=>Y_(t,r))}Er.shouldUseGroup=J_;function Y_(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))}Er.shouldUseRule=Y_});var ss=R(He=>{"use strict";Object.defineProperty(He,"__esModule",{value:!0});He.reportTypeError=He.checkDataTypes=He.checkDataType=He.coerceAndCheckDataType=He.getJSONTypes=He.getSchemaTypes=He.DataType=void 0;var DE=Dp(),ZE=Zp(),LE=os(),H=B(),X_=oe(),Kn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Kn||(He.DataType=Kn={}));function qE(t){let e=Q_(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}He.getSchemaTypes=qE;function Q_(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(DE.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}He.getJSONTypes=Q_;function UE(t,e){let{gen:r,data:n,opts:o}=t,s=FE(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,ZE.schemaHasRulesForType)(t,e[0]));if(i){let a=qp(e,n,o.strictNumbers,Kn.Wrong);r.if(a,()=>{s.length?HE(t,e,s):Up(t)})}return i}He.coerceAndCheckDataType=UE;var ev=new Set(["string","number","integer","boolean","null"]);function FE(t,e){return e?t.filter(r=>ev.has(r)||e==="array"&&r==="array"):[]}function HE(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,H._)`typeof ${o}`),a=n.let("coerced",(0,H._)`undefined`);s.coerceTypes==="array"&&n.if((0,H._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,H._)`${o}[0]`).assign(i,(0,H._)`typeof ${o}`).if(qp(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,H._)`${a} !== undefined`);for(let u of r)(ev.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Up(t),n.endIf(),n.if((0,H._)`${a} !== undefined`,()=>{n.assign(o,a),VE(t,a)});function c(u){switch(u){case"string":n.elseIf((0,H._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,H._)`"" + ${o}`).elseIf((0,H._)`${o} === null`).assign(a,(0,H._)`""`);return;case"number":n.elseIf((0,H._)`${i} == "boolean" || ${o} === null
|
|
55
|
+
|| (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,H._)`+${o}`);return;case"integer":n.elseIf((0,H._)`${i} === "boolean" || ${o} === null
|
|
56
|
+
|| (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,H._)`+${o}`);return;case"boolean":n.elseIf((0,H._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,H._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,H._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,H._)`${i} === "string" || ${i} === "number"
|
|
57
|
+
|| ${i} === "boolean" || ${o} === null`).assign(a,(0,H._)`[${o}]`)}}}function VE({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,H._)`${e} !== undefined`,()=>t.assign((0,H._)`${e}[${r}]`,n))}function Lp(t,e,r,n=Kn.Correct){let o=n===Kn.Correct?H.operators.EQ:H.operators.NEQ,s;switch(t){case"null":return(0,H._)`${e} ${o} null`;case"array":s=(0,H._)`Array.isArray(${e})`;break;case"object":s=(0,H._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,H._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,H._)`typeof ${e} ${o} ${t}`}return n===Kn.Correct?s:(0,H.not)(s);function i(a=H.nil){return(0,H.and)((0,H._)`typeof ${e} == "number"`,a,r?(0,H._)`isFinite(${e})`:H.nil)}}He.checkDataType=Lp;function qp(t,e,r,n){if(t.length===1)return Lp(t[0],e,r,n);let o,s=(0,X_.toHash)(t);if(s.array&&s.object){let i=(0,H._)`typeof ${e} != "object"`;o=s.null?i:(0,H._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=H.nil;s.number&&delete s.integer;for(let i in s)o=(0,H.and)(o,Lp(i,e,r,n));return o}He.checkDataTypes=qp;var BE={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,H._)`{type: ${t}}`:(0,H._)`{type: ${e}}`};function Up(t){let e=GE(t);(0,LE.reportError)(e,BE)}He.reportTypeError=Up;function GE(t){let{gen:e,data:r,schema:n}=t,o=(0,X_.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var rv=R($a=>{"use strict";Object.defineProperty($a,"__esModule",{value:!0});$a.assignDefaults=void 0;var Wn=B(),KE=oe();function WE(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)tv(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>tv(t,s,o.default))}$a.assignDefaults=WE;function tv(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Wn._)`${s}${(0,Wn.getProperty)(e)}`;if(o){(0,KE.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Wn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Wn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Wn._)`${a} = ${(0,Wn.stringify)(r)}`)}});var xt=R(de=>{"use strict";Object.defineProperty(de,"__esModule",{value:!0});de.validateUnion=de.validateArray=de.usePattern=de.callValidateCode=de.schemaProperties=de.allSchemaProperties=de.noPropertyInData=de.propertyInData=de.isOwnProperty=de.hasPropFunc=de.reportMissingProp=de.checkMissingProp=de.checkReportMissingProp=void 0;var ve=B(),Fp=oe(),Pr=ar(),JE=oe();function YE(t,e){let{gen:r,data:n,it:o}=t;r.if(Vp(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,ve._)`${e}`},!0),t.error()})}de.checkReportMissingProp=YE;function XE({gen:t,data:e,it:{opts:r}},n,o){return(0,ve.or)(...n.map(s=>(0,ve.and)(Vp(t,e,s,r.ownProperties),(0,ve._)`${o} = ${s}`)))}de.checkMissingProp=XE;function QE(t,e){t.setParams({missingProperty:e},!0),t.error()}de.reportMissingProp=QE;function nv(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,ve._)`Object.prototype.hasOwnProperty`})}de.hasPropFunc=nv;function Hp(t,e,r){return(0,ve._)`${nv(t)}.call(${e}, ${r})`}de.isOwnProperty=Hp;function eP(t,e,r,n){let o=(0,ve._)`${e}${(0,ve.getProperty)(r)} !== undefined`;return n?(0,ve._)`${o} && ${Hp(t,e,r)}`:o}de.propertyInData=eP;function Vp(t,e,r,n){let o=(0,ve._)`${e}${(0,ve.getProperty)(r)} === undefined`;return n?(0,ve.or)(o,(0,ve.not)(Hp(t,e,r))):o}de.noPropertyInData=Vp;function ov(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}de.allSchemaProperties=ov;function tP(t,e){return ov(e).filter(r=>!(0,Fp.alwaysValidSchema)(t,e[r]))}de.schemaProperties=tP;function rP({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,ve._)`${t}, ${e}, ${n}${o}`:e,d=[[Pr.default.instancePath,(0,ve.strConcat)(Pr.default.instancePath,s)],[Pr.default.parentData,i.parentData],[Pr.default.parentDataProperty,i.parentDataProperty],[Pr.default.rootData,Pr.default.rootData]];i.opts.dynamicRef&&d.push([Pr.default.dynamicAnchors,Pr.default.dynamicAnchors]);let f=(0,ve._)`${l}, ${r.object(...d)}`;return c!==ve.nil?(0,ve._)`${a}.call(${c}, ${f})`:(0,ve._)`${a}(${f})`}de.callValidateCode=rP;var nP=(0,ve._)`new RegExp`;function oP({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,ve._)`${o.code==="new RegExp"?nP:(0,JE.useFunc)(t,o)}(${r}, ${n})`})}de.usePattern=oP;function sP(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,ve._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Fp.Type.Num},s),e.if((0,ve.not)(s),a)})}}de.validateArray=sP;function iP(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,Fp.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,ve._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,ve.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}de.validateUnion=iP});var av=R(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});Vt.validateKeywordUsage=Vt.validSchemaType=Vt.funcKeywordCode=Vt.macroKeywordCode=void 0;var We=B(),mn=ar(),aP=xt(),cP=os();function uP(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=iv(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:We.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Vt.macroKeywordCode=uP;function lP(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;pP(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=iv(n,o,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)m(),e.modifying&&sv(t),g(()=>t.error());else{let y=e.async?h():p();e.modifying&&sv(t),g(()=>dP(t,y))}}function h(){let y=n.let("ruleErrs",null);return n.try(()=>m((0,We._)`await `),v=>n.assign(d,!1).if((0,We._)`${v} instanceof ${c.ValidationError}`,()=>n.assign(y,(0,We._)`${v}.errors`),()=>n.throw(v))),y}function p(){let y=(0,We._)`${l}.errors`;return n.assign(y,null),m(We.nil),y}function m(y=e.async?(0,We._)`await `:We.nil){let v=c.opts.passContext?mn.default.this:mn.default.self,b=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,We._)`${y}${(0,aP.callValidateCode)(t,l,v,b)}`,e.modifying)}function g(y){var v;n.if((0,We.not)((v=e.valid)!==null&&v!==void 0?v:d),y)}}Vt.funcKeywordCode=lP;function sv(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,We._)`${n.parentData}[${n.parentDataProperty}]`))}function dP(t,e){let{gen:r}=t;r.if((0,We._)`Array.isArray(${e})`,()=>{r.assign(mn.default.vErrors,(0,We._)`${mn.default.vErrors} === null ? ${e} : ${mn.default.vErrors}.concat(${e})`).assign(mn.default.errors,(0,We._)`${mn.default.vErrors}.length`),(0,cP.extendErrors)(t)},()=>t.error())}function pP({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function iv(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,We.stringify)(r)})}function fP(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")}Vt.validSchemaType=fP;function mP({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)}}Vt.validateKeywordUsage=mP});var uv=R(Rr=>{"use strict";Object.defineProperty(Rr,"__esModule",{value:!0});Rr.extendSubschemaMode=Rr.extendSubschemaData=Rr.getSubschema=void 0;var Bt=B(),cv=oe();function hP(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,Bt._)`${t.schemaPath}${(0,Bt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Bt._)`${t.schemaPath}${(0,Bt.getProperty)(e)}${(0,Bt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,cv.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')}Rr.getSubschema=hP;function gP(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=a.let("data",(0,Bt._)`${e.data}${(0,Bt.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Bt.str)`${u}${(0,cv.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Bt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof Bt.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]}}Rr.extendSubschemaData=gP;function yP(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}Rr.extendSubschemaMode=yP});var Bp=R((MD,lv)=>{"use strict";lv.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 pv=R((DD,dv)=>{"use strict";var Ir=dv.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(){};Sa(e,n,o,t,"",t)};Ir.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Ir.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Ir.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Ir.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 Sa(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 Ir.arrayKeywords)for(var f=0;f<d.length;f++)Sa(t,e,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in Ir.propsKeywords){if(d&&typeof d=="object")for(var h in d)Sa(t,e,r,d[h],o+"/"+l+"/"+_P(h),s,o,l,n,h)}else(l in Ir.keywords||t.allKeys&&!(l in Ir.skipKeywords))&&Sa(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function _P(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var is=R(it=>{"use strict";Object.defineProperty(it,"__esModule",{value:!0});it.getSchemaRefs=it.resolveUrl=it.normalizeId=it._getFullPath=it.getFullPath=it.inlineRef=void 0;var vP=oe(),xP=Bp(),bP=pv(),$P=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function SP(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Gp(t):e?fv(t)<=e:!1}it.inlineRef=SP;var wP=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Gp(t){for(let e in t){if(wP.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Gp)||typeof r=="object"&&Gp(r))return!0}return!1}function fv(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!$P.has(r)&&(typeof t[r]=="object"&&(0,vP.eachItem)(t[r],n=>e+=fv(n)),e===1/0))return 1/0}return e}function mv(t,e="",r){r!==!1&&(e=Jn(e));let n=t.parse(e);return hv(t,n)}it.getFullPath=mv;function hv(t,e){return t.serialize(e).split("#")[0]+"#"}it._getFullPath=hv;var kP=/#\/?$/;function Jn(t){return t?t.replace(kP,""):""}it.normalizeId=Jn;function TP(t,e,r){return r=Jn(r),t.resolve(e,r)}it.resolveUrl=TP;var EP=/^[a-z_][-a-z0-9._]*$/i;function PP(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Jn(t[r]||e),s={"":o},i=mv(n,o,!1),a={},c=new Set;return bP(t,{allKeys:!0},(d,f,h,p)=>{if(p===void 0)return;let m=i+f,g=s[p];typeof d[r]=="string"&&(g=y.call(this,d[r])),v.call(this,d.$anchor),v.call(this,d.$dynamicAnchor),s[f]=g;function y(b){let S=this.opts.uriResolver.resolve;if(b=Jn(g?S(g,b):b),c.has(b))throw l(b);c.add(b);let T=this.refs[b];return typeof T=="string"&&(T=this.refs[T]),typeof T=="object"?u(d,T.schema,b):b!==Jn(m)&&(b[0]==="#"?(u(d,a[b],b),a[b]=d):this.refs[b]=m),b}function v(b){if(typeof b=="string"){if(!EP.test(b))throw new Error(`invalid anchor "${b}"`);y.call(this,`#${b}`)}}}),a;function u(d,f,h){if(f!==void 0&&!xP(d,f))throw l(h)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}it.getSchemaRefs=PP});var us=R(Or=>{"use strict";Object.defineProperty(Or,"__esModule",{value:!0});Or.getData=Or.KeywordCxt=Or.validateFunctionCode=void 0;var xv=W_(),gv=ss(),Wp=Zp(),wa=ss(),RP=rv(),cs=av(),Kp=uv(),j=B(),U=ar(),IP=is(),cr=oe(),as=os();function OP(t){if(Sv(t)&&(wv(t),$v(t))){NP(t);return}bv(t,()=>(0,xv.topBoolOrEmptySchema)(t))}Or.validateFunctionCode=OP;function bv({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,j._)`${U.default.data}, ${U.default.valCxt}`,n.$async,()=>{t.code((0,j._)`"use strict"; ${yv(r,o)}`),zP(t,o),t.code(s)}):t.func(e,(0,j._)`${U.default.data}, ${CP(o)}`,n.$async,()=>t.code(yv(r,o)).code(s))}function CP(t){return(0,j._)`{${U.default.instancePath}="", ${U.default.parentData}, ${U.default.parentDataProperty}, ${U.default.rootData}=${U.default.data}${t.dynamicRef?(0,j._)`, ${U.default.dynamicAnchors}={}`:j.nil}}={}`}function zP(t,e){t.if(U.default.valCxt,()=>{t.var(U.default.instancePath,(0,j._)`${U.default.valCxt}.${U.default.instancePath}`),t.var(U.default.parentData,(0,j._)`${U.default.valCxt}.${U.default.parentData}`),t.var(U.default.parentDataProperty,(0,j._)`${U.default.valCxt}.${U.default.parentDataProperty}`),t.var(U.default.rootData,(0,j._)`${U.default.valCxt}.${U.default.rootData}`),e.dynamicRef&&t.var(U.default.dynamicAnchors,(0,j._)`${U.default.valCxt}.${U.default.dynamicAnchors}`)},()=>{t.var(U.default.instancePath,(0,j._)`""`),t.var(U.default.parentData,(0,j._)`undefined`),t.var(U.default.parentDataProperty,(0,j._)`undefined`),t.var(U.default.rootData,U.default.data),e.dynamicRef&&t.var(U.default.dynamicAnchors,(0,j._)`{}`)})}function NP(t){let{schema:e,opts:r,gen:n}=t;bv(t,()=>{r.$comment&&e.$comment&&Tv(t),ZP(t),n.let(U.default.vErrors,null),n.let(U.default.errors,0),r.unevaluated&&AP(t),kv(t),UP(t)})}function AP(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,j._)`${r}.evaluated`),e.if((0,j._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,j._)`${t.evaluated}.props`,(0,j._)`undefined`)),e.if((0,j._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,j._)`${t.evaluated}.items`,(0,j._)`undefined`))}function yv(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,j._)`/*# sourceURL=${r} */`:j.nil}function jP(t,e){if(Sv(t)&&(wv(t),$v(t))){MP(t,e);return}(0,xv.boolOrEmptySchema)(t,e)}function $v({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 Sv(t){return typeof t.schema!="boolean"}function MP(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&Tv(t),LP(t),qP(t);let s=n.const("_errs",U.default.errors);kv(t,s),n.var(e,(0,j._)`${s} === ${U.default.errors}`)}function wv(t){(0,cr.checkUnknownRules)(t),DP(t)}function kv(t,e){if(t.opts.jtd)return _v(t,[],!1,e);let r=(0,gv.getSchemaTypes)(t.schema),n=(0,gv.coerceAndCheckDataType)(t,r);_v(t,r,!n,e)}function DP(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,cr.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function ZP(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,cr.checkStrictMode)(t,"default is ignored in the schema root")}function LP(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,IP.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function qP(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Tv({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,j._)`${U.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,j.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,j._)`${U.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function UP(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,j._)`${U.default.errors} === 0`,()=>e.return(U.default.data),()=>e.throw((0,j._)`new ${o}(${U.default.vErrors})`)):(e.assign((0,j._)`${n}.errors`,U.default.vErrors),s.unevaluated&&FP(t),e.return((0,j._)`${U.default.errors} === 0`))}function FP({gen:t,evaluated:e,props:r,items:n}){r instanceof j.Name&&t.assign((0,j._)`${e}.props`,r),n instanceof j.Name&&t.assign((0,j._)`${e}.items`,n)}function _v(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,cr.schemaHasRulesButRef)(s,l))){o.block(()=>Pv(t,"$ref",l.all.$ref.definition));return}c.jtd||HP(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Wp.shouldUseGroup)(s,f)&&(f.type?(o.if((0,wa.checkDataType)(f.type,i,c.strictNumbers)),vv(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,wa.reportTypeError)(t)),o.endIf()):vv(t,f),a||o.if((0,j._)`${U.default.errors} === ${n||0}`))}}function vv(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,RP.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Wp.shouldUseRule)(n,s)&&Pv(t,s.keyword,s.definition,e.type)})}function HP(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(VP(t,e),t.opts.allowUnionTypes||BP(t,e),GP(t,t.dataTypes))}function VP(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Ev(t.dataTypes,r)||Jp(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),WP(t,e)}}function BP(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Jp(t,"use allowUnionTypes to allow union type keyword")}function GP(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Wp.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>KP(e,i))&&Jp(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function KP(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Ev(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function WP(t,e){let r=[];for(let n of t.dataTypes)Ev(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Jp(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,cr.checkStrictMode)(t,e,t.opts.strictTypes)}var ka=class{constructor(e,r,n){if((0,cs.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,cr.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",Rv(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,cs.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",U.default.errors))}result(e,r,n){this.failResult((0,j.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,j.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,j._)`${r} !== undefined && (${(0,j.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?as.reportExtraError:as.reportError)(this,this.def.error,r)}$dataError(){(0,as.reportError)(this,this.def.$dataError||as.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,as.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=j.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=j.nil,r=j.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,j.or)((0,j._)`${o} === undefined`,r)),e!==j.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==j.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,j.or)(i(),a());function i(){if(n.length){if(!(r instanceof j.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,j._)`${(0,wa.checkDataTypes)(c,r,s.opts.strictNumbers,wa.DataType.Wrong)}`}return j.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,j._)`!${c}(${r})`}return j.nil}}subschema(e,r){let n=(0,Kp.getSubschema)(this.it,e);(0,Kp.extendSubschemaData)(n,this.it,e),(0,Kp.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return jP(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=cr.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=cr.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,j.Name)),!0}};Or.KeywordCxt=ka;function Pv(t,e,r,n){let o=new ka(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,cs.funcKeywordCode)(o,r):"macro"in r?(0,cs.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,cs.funcKeywordCode)(o,r)}var JP=/^\/(?:[^~]|~0|~1)*$/,YP=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Rv(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return U.default.rootData;if(t[0]==="/"){if(!JP.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=U.default.rootData}else{let u=YP.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,j._)`${s}${(0,j.getProperty)((0,cr.unescapeJsonPointer)(u))}`,i=(0,j._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Or.getData=Rv});var Ta=R(Xp=>{"use strict";Object.defineProperty(Xp,"__esModule",{value:!0});var Yp=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Xp.default=Yp});var ls=R(tf=>{"use strict";Object.defineProperty(tf,"__esModule",{value:!0});var Qp=is(),ef=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Qp.resolveUrl)(e,r,n),this.missingSchema=(0,Qp.normalizeId)((0,Qp.getFullPath)(e,this.missingRef))}};tf.default=ef});var Pa=R(bt=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});bt.resolveSchema=bt.getCompilingSchema=bt.resolveRef=bt.compileSchema=bt.SchemaEnv=void 0;var Ct=B(),XP=Ta(),hn=ar(),zt=is(),Iv=oe(),QP=us(),Yn=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,zt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};bt.SchemaEnv=Yn;function nf(t){let e=Ov.call(this,t);if(e)return e;let r=(0,zt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Ct.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:XP.default,code:(0,Ct._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:hn.default.data,parentData:hn.default.parentData,parentDataProperty:hn.default.parentDataProperty,dataNames:[hn.default.data],dataPathArr:[Ct.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Ct.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Ct.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Ct._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,QP.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(hn.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let h=new Function(`${hn.default.self}`,`${hn.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:m}=u;h.evaluated={props:p instanceof Ct.Name?void 0:p,items:m instanceof Ct.Name?void 0:m,dynamicProps:p instanceof Ct.Name,dynamicItems:m instanceof Ct.Name},h.source&&(h.source.evaluated=(0,Ct.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)}}bt.compileSchema=nf;function eR(t,e,r){var n;r=(0,zt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=nR.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 Yn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=tR.call(this,s)}bt.resolveRef=eR;function tR(t){return(0,zt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:nf.call(this,t)}function Ov(t){for(let e of this._compilations)if(rR(e,t))return e}bt.getCompilingSchema=Ov;function rR(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function nR(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Ea.call(this,t,e)}function Ea(t,e){let r=this.opts.uriResolver.parse(e),n=(0,zt._getFullPath)(this.opts.uriResolver,r),o=(0,zt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return rf.call(this,r,t);let s=(0,zt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Ea.call(this,t,i);return typeof a?.schema!="object"?void 0:rf.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||nf.call(this,i),s===(0,zt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,zt.resolveUrl)(this.opts.uriResolver,o,u)),new Yn({schema:a,schemaId:c,root:t,baseId:o})}return rf.call(this,r,i)}}bt.resolveSchema=Ea;var oR=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function rf(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,Iv.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!oR.has(a)&&u&&(e=(0,zt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,Iv.schemaHasRulesButRef)(r,this.RULES)){let a=(0,zt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Ea.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Yn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var Cv=R((HD,sR)=>{sR.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 sf=R((VD,jv)=>{"use strict";var iR=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Nv=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 of(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 aR=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function zv(t){return t.length=0,!0}function cR(t,e,r){if(t.length){let n=of(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function uR(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=cR;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=zv}else{o.push(u);continue}}return o.length&&(a===zv?r.zone=o.join(""):i?n.push(o.join("")):n.push(of(o))),r.address=n.join(""),r}function Av(t){if(lR(t,":")<2)return{host:t,isIPV6:!1};let e=uR(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 lR(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function dR(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 pR(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 fR(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!Nv(r)){let n=Av(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}jv.exports={nonSimpleDomain:aR,recomposeAuthority:fR,normalizeComponentEncoding:pR,removeDotSegments:dR,isIPv4:Nv,isUUID:iR,normalizeIPv6:Av,stringArrayToHexStripped:of}});var qv=R((BD,Lv)=>{"use strict";var{isUUID:mR}=sf(),hR=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,gR=["http","https","ws","wss","urn","urn:uuid"];function yR(t){return gR.indexOf(t)!==-1}function af(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 Mv(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Dv(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 _R(t){return t.secure=af(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function vR(t){if((t.port===(af(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 xR(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(hR);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=cf(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function bR(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=cf(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 $R(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!mR(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function SR(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Zv={scheme:"http",domainHost:!0,parse:Mv,serialize:Dv},wR={scheme:"https",domainHost:Zv.domainHost,parse:Mv,serialize:Dv},Ra={scheme:"ws",domainHost:!0,parse:_R,serialize:vR},kR={scheme:"wss",domainHost:Ra.domainHost,parse:Ra.parse,serialize:Ra.serialize},TR={scheme:"urn",parse:xR,serialize:bR,skipNormalize:!0},ER={scheme:"urn:uuid",parse:$R,serialize:SR,skipNormalize:!0},Ia={http:Zv,https:wR,ws:Ra,wss:kR,urn:TR,"urn:uuid":ER};Object.setPrototypeOf(Ia,null);function cf(t){return t&&(Ia[t]||Ia[t.toLowerCase()])||void 0}Lv.exports={wsIsSecure:af,SCHEMES:Ia,isValidSchemeName:yR,getSchemeHandler:cf}});var Hv=R((GD,Ca)=>{"use strict";var{normalizeIPv6:PR,removeDotSegments:ds,recomposeAuthority:RR,normalizeComponentEncoding:Oa,isIPv4:IR,nonSimpleDomain:OR}=sf(),{SCHEMES:CR,getSchemeHandler:Uv}=qv();function zR(t,e){return typeof t=="string"?t=Gt(ur(t,e),e):typeof t=="object"&&(t=ur(Gt(t,e),e)),t}function NR(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Fv(ur(t,n),ur(e,n),n,!0);return n.skipEscape=!0,Gt(o,n)}function Fv(t,e,r,n){let o={};return n||(t=ur(Gt(t,r),r),e=ur(Gt(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=ds(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=ds(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=ds(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=ds(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 AR(t,e,r){return typeof t=="string"?(t=unescape(t),t=Gt(Oa(ur(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Gt(Oa(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Gt(Oa(ur(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Gt(Oa(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Gt(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=Uv(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=RR(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=ds(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 jR=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function ur(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(jR);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(IR(n.host)===!1){let c=PR(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=Uv(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&OR(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(a){n.error=n.error||"Host's domain name can not be converted to ASCII: "+a}(!i||i&&!i.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),i&&i.parse&&i.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var uf={SCHEMES:CR,normalize:zR,resolve:NR,resolveComponent:Fv,equal:AR,serialize:Gt,parse:ur};Ca.exports=uf;Ca.exports.default=uf;Ca.exports.fastUri=uf});var Bv=R(lf=>{"use strict";Object.defineProperty(lf,"__esModule",{value:!0});var Vv=Hv();Vv.code='require("ajv/dist/runtime/uri").default';lf.default=Vv});var ex=R(Ze=>{"use strict";Object.defineProperty(Ze,"__esModule",{value:!0});Ze.CodeGen=Ze.Name=Ze.nil=Ze.stringify=Ze.str=Ze._=Ze.KeywordCxt=void 0;var MR=us();Object.defineProperty(Ze,"KeywordCxt",{enumerable:!0,get:function(){return MR.KeywordCxt}});var Xn=B();Object.defineProperty(Ze,"_",{enumerable:!0,get:function(){return Xn._}});Object.defineProperty(Ze,"str",{enumerable:!0,get:function(){return Xn.str}});Object.defineProperty(Ze,"stringify",{enumerable:!0,get:function(){return Xn.stringify}});Object.defineProperty(Ze,"nil",{enumerable:!0,get:function(){return Xn.nil}});Object.defineProperty(Ze,"Name",{enumerable:!0,get:function(){return Xn.Name}});Object.defineProperty(Ze,"CodeGen",{enumerable:!0,get:function(){return Xn.CodeGen}});var DR=Ta(),Yv=ls(),ZR=Dp(),ps=Pa(),LR=B(),fs=is(),za=ss(),pf=oe(),Gv=Cv(),qR=Bv(),Xv=(t,e)=>new RegExp(t,e);Xv.code="new RegExp";var UR=["removeAdditional","useDefaults","coerceTypes"],FR=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),HR={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."},VR={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Kv=200;function BR(t){var e,r,n,o,s,i,a,c,u,l,d,f,h,p,m,g,y,v,b,S,T,J,D,X,Ye;let ae=t.strict,Xe=(e=t.code)===null||e===void 0?void 0:e.optimize,Ce=Xe===!0||Xe===void 0?1:Xe||0,jt=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Xv,me=(o=t.uriResolver)!==null&&o!==void 0?o:qR.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:ae)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:ae)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:ae)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:ae)!==null&&f!==void 0?f:"log",strictRequired:(p=(h=t.strictRequired)!==null&&h!==void 0?h:ae)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:Ce,regExp:jt}:{optimize:Ce,regExp:jt},loopRequired:(m=t.loopRequired)!==null&&m!==void 0?m:Kv,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:Kv,meta:(y=t.meta)!==null&&y!==void 0?y:!0,messages:(v=t.messages)!==null&&v!==void 0?v:!0,inlineRefs:(b=t.inlineRefs)!==null&&b!==void 0?b:!0,schemaId:(S=t.schemaId)!==null&&S!==void 0?S:"$id",addUsedSchema:(T=t.addUsedSchema)!==null&&T!==void 0?T:!0,validateSchema:(J=t.validateSchema)!==null&&J!==void 0?J:!0,validateFormats:(D=t.validateFormats)!==null&&D!==void 0?D:!0,unicodeRegExp:(X=t.unicodeRegExp)!==null&&X!==void 0?X:!0,int32range:(Ye=t.int32range)!==null&&Ye!==void 0?Ye:!0,uriResolver:me}}var ms=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...BR(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new LR.ValueScope({scope:{},prefixes:FR,es5:r,lines:n}),this.logger=XR(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,ZR.getRules)(),Wv.call(this,HR,e,"NOT SUPPORTED"),Wv.call(this,VR,e,"DEPRECATED","warn"),this._metaOpts=JR.call(this),e.formats&&KR.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&WR.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),GR.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=Gv;n==="id"&&(o={...Gv},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||i.call(this,f)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof Yv.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,fs.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=Jv.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new ps.SchemaEnv({schema:{},schemaId:n});if(r=ps.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=Jv.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,fs.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(eI.call(this,n,r),!r)return(0,pf.eachItem)(n,s=>df.call(this,s)),this;rI.call(this,r);let o={...r,type:(0,za.getJSONTypes)(r.type),schemaType:(0,za.getJSONTypes)(r.schemaType)};return(0,pf.eachItem)(n,o.type.length===0?s=>df.call(this,s,o):s=>o.type.forEach(i=>df.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]=Qv(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,fs.normalizeId)(i||n);let u=fs.getSchemaRefs.call(this,e,n);return c=new ps.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):ps.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{ps.compileSchema.call(this,e)}finally{this.opts=r}}};ms.ValidationError=DR.default;ms.MissingRefError=Yv.default;Ze.default=ms;function Wv(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 Jv(t){return t=(0,fs.normalizeId)(t),this.schemas[t]||this.refs[t]}function GR(){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 KR(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function WR(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 JR(){let t={...this.opts};for(let e of UR)delete t[e];return t}var YR={log(){},warn(){},error(){}};function XR(t){if(t===!1)return YR;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 QR=/^[a-z_$][a-z0-9_$:-]*$/i;function eI(t,e){let{RULES:r}=this;if((0,pf.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!QR.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 df(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,za.getJSONTypes)(e.type),schemaType:(0,za.getJSONTypes)(e.schemaType)}};e.before?tI.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 tI(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 rI(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Qv(e)),t.validateSchema=this.compile(e,!0))}var nI={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Qv(t){return{anyOf:[t,nI]}}});var tx=R(ff=>{"use strict";Object.defineProperty(ff,"__esModule",{value:!0});var oI={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};ff.default=oI});var sx=R(gn=>{"use strict";Object.defineProperty(gn,"__esModule",{value:!0});gn.callRef=gn.getValidate=void 0;var sI=ls(),rx=xt(),at=B(),Qn=ar(),nx=Pa(),Na=oe(),iI={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=nx.resolveRef.call(c,u,o,r);if(l===void 0)throw new sI.default(n.opts.uriResolver,o,r);if(l instanceof nx.SchemaEnv)return f(l);return h(l);function d(){if(s===u)return Aa(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Aa(t,(0,at._)`${p}.validate`,u,u.$async)}function f(p){let m=ox(t,p);Aa(t,m,p,p.$async)}function h(p){let m=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,at.stringify)(p)}:{ref:p}),g=e.name("valid"),y=t.subschema({schema:p,dataTypes:[],schemaPath:at.nil,topSchemaRef:m,errSchemaPath:r},g);t.mergeEvaluated(y),t.ok(g)}}};function ox(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,at._)`${r.scopeValue("wrapper",{ref:e})}.validate`}gn.getValidate=ox;function Aa(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Qn.default.this:at.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,at._)`await ${(0,rx.callValidateCode)(t,e,u)}`),h(e),i||o.assign(p,!0)},m=>{o.if((0,at._)`!(${m} instanceof ${s.ValidationError})`,()=>o.throw(m)),f(m),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,rx.callValidateCode)(t,e,u),()=>h(e),()=>f(e))}function f(p){let m=(0,at._)`${p}.errors`;o.assign(Qn.default.vErrors,(0,at._)`${Qn.default.vErrors} === null ? ${m} : ${Qn.default.vErrors}.concat(${m})`),o.assign(Qn.default.errors,(0,at._)`${Qn.default.vErrors}.length`)}function h(p){var m;if(!s.opts.unevaluated)return;let g=(m=r?.validate)===null||m===void 0?void 0:m.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=Na.mergeEvaluated.props(o,g.props,s.props));else{let y=o.var("props",(0,at._)`${p}.evaluated.props`);s.props=Na.mergeEvaluated.props(o,y,s.props,at.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Na.mergeEvaluated.items(o,g.items,s.items));else{let y=o.var("items",(0,at._)`${p}.evaluated.items`);s.items=Na.mergeEvaluated.items(o,y,s.items,at.Name)}}}gn.callRef=Aa;gn.default=iI});var ix=R(mf=>{"use strict";Object.defineProperty(mf,"__esModule",{value:!0});var aI=tx(),cI=sx(),uI=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",aI.default,cI.default];mf.default=uI});var ax=R(hf=>{"use strict";Object.defineProperty(hf,"__esModule",{value:!0});var ja=B(),Cr=ja.operators,Ma={maximum:{okStr:"<=",ok:Cr.LTE,fail:Cr.GT},minimum:{okStr:">=",ok:Cr.GTE,fail:Cr.LT},exclusiveMaximum:{okStr:"<",ok:Cr.LT,fail:Cr.GTE},exclusiveMinimum:{okStr:">",ok:Cr.GT,fail:Cr.LTE}},lI={message:({keyword:t,schemaCode:e})=>(0,ja.str)`must be ${Ma[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,ja._)`{comparison: ${Ma[t].okStr}, limit: ${e}}`},dI={keyword:Object.keys(Ma),type:"number",schemaType:"number",$data:!0,error:lI,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,ja._)`${r} ${Ma[e].fail} ${n} || isNaN(${r})`)}};hf.default=dI});var cx=R(gf=>{"use strict";Object.defineProperty(gf,"__esModule",{value:!0});var hs=B(),pI={message:({schemaCode:t})=>(0,hs.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,hs._)`{multipleOf: ${t}}`},fI={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:pI,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,hs._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,hs._)`${i} !== parseInt(${i})`;t.fail$data((0,hs._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};gf.default=fI});var lx=R(yf=>{"use strict";Object.defineProperty(yf,"__esModule",{value:!0});function ux(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}yf.default=ux;ux.code='require("ajv/dist/runtime/ucs2length").default'});var dx=R(_f=>{"use strict";Object.defineProperty(_f,"__esModule",{value:!0});var yn=B(),mI=oe(),hI=lx(),gI={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,yn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,yn._)`{limit: ${t}}`},yI={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:gI,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?yn.operators.GT:yn.operators.LT,i=o.opts.unicode===!1?(0,yn._)`${r}.length`:(0,yn._)`${(0,mI.useFunc)(t.gen,hI.default)}(${r})`;t.fail$data((0,yn._)`${i} ${s} ${n}`)}};_f.default=yI});var px=R(vf=>{"use strict";Object.defineProperty(vf,"__esModule",{value:!0});var _I=xt(),vI=oe(),eo=B(),xI={message:({schemaCode:t})=>(0,eo.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,eo._)`{pattern: ${t}}`},bI={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:xI,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,eo._)`new RegExp`:(0,vI.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,eo._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,eo._)`!${l}`)}else{let c=(0,_I.usePattern)(t,o);t.fail$data((0,eo._)`!${c}.test(${r})`)}}};vf.default=bI});var fx=R(xf=>{"use strict";Object.defineProperty(xf,"__esModule",{value:!0});var gs=B(),$I={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,gs.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,gs._)`{limit: ${t}}`},SI={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:$I,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?gs.operators.GT:gs.operators.LT;t.fail$data((0,gs._)`Object.keys(${r}).length ${o} ${n}`)}};xf.default=SI});var mx=R(bf=>{"use strict";Object.defineProperty(bf,"__esModule",{value:!0});var ys=xt(),_s=B(),wI=oe(),kI={message:({params:{missingProperty:t}})=>(0,_s.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,_s._)`{missingProperty: ${t}}`},TI={keyword:"required",type:"object",schemaType:"array",$data:!0,error:kI,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 m of r)if(h?.[m]===void 0&&!p.has(m)){let g=i.schemaEnv.baseId+i.errSchemaPath,y=`required property "${m}" is not defined at "${g}" (strictRequired)`;(0,wI.checkStrictMode)(i,y,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(_s.nil,d);else for(let h of r)(0,ys.checkReportMissingProp)(t,h)}function l(){let h=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>f(h,p)),t.ok(p)}else e.if((0,ys.checkMissingProp)(t,r,h)),(0,ys.reportMissingProp)(t,h),e.else()}function d(){e.forOf("prop",n,h=>{t.setParams({missingProperty:h}),e.if((0,ys.noPropertyInData)(e,o,h,a.ownProperties),()=>t.error())})}function f(h,p){t.setParams({missingProperty:h}),e.forOf(h,n,()=>{e.assign(p,(0,ys.propertyInData)(e,o,h,a.ownProperties)),e.if((0,_s.not)(p),()=>{t.error(),e.break()})},_s.nil)}}};bf.default=TI});var hx=R($f=>{"use strict";Object.defineProperty($f,"__esModule",{value:!0});var vs=B(),EI={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,vs.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,vs._)`{limit: ${t}}`},PI={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:EI,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?vs.operators.GT:vs.operators.LT;t.fail$data((0,vs._)`${r}.length ${o} ${n}`)}};$f.default=PI});var Da=R(Sf=>{"use strict";Object.defineProperty(Sf,"__esModule",{value:!0});var gx=Bp();gx.code='require("ajv/dist/runtime/equal").default';Sf.default=gx});var yx=R(kf=>{"use strict";Object.defineProperty(kf,"__esModule",{value:!0});var wf=ss(),Le=B(),RI=oe(),II=Da(),OI={message:({params:{i:t,j:e}})=>(0,Le.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Le._)`{i: ${t}, j: ${e}}`},CI={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:OI,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,wf.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Le._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,Le._)`${r}.length`),m=e.let("j");t.setParams({i:p,j:m}),e.assign(c,!0),e.if((0,Le._)`${p} > 1`,()=>(d()?f:h)(p,m))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,m){let g=e.name("item"),y=(0,wf.checkDataTypes)(u,g,a.opts.strictNumbers,wf.DataType.Wrong),v=e.const("indices",(0,Le._)`{}`);e.for((0,Le._)`;${p}--;`,()=>{e.let(g,(0,Le._)`${r}[${p}]`),e.if(y,(0,Le._)`continue`),u.length>1&&e.if((0,Le._)`typeof ${g} == "string"`,(0,Le._)`${g} += "_"`),e.if((0,Le._)`typeof ${v}[${g}] == "number"`,()=>{e.assign(m,(0,Le._)`${v}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Le._)`${v}[${g}] = ${p}`)})}function h(p,m){let g=(0,RI.useFunc)(e,II.default),y=e.name("outer");e.label(y).for((0,Le._)`;${p}--;`,()=>e.for((0,Le._)`${m} = ${p}; ${m}--;`,()=>e.if((0,Le._)`${g}(${r}[${p}], ${r}[${m}])`,()=>{t.error(),e.assign(c,!1).break(y)})))}}};kf.default=CI});var _x=R(Ef=>{"use strict";Object.defineProperty(Ef,"__esModule",{value:!0});var Tf=B(),zI=oe(),NI=Da(),AI={message:"must be equal to constant",params:({schemaCode:t})=>(0,Tf._)`{allowedValue: ${t}}`},jI={keyword:"const",$data:!0,error:AI,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,Tf._)`!${(0,zI.useFunc)(e,NI.default)}(${r}, ${o})`):t.fail((0,Tf._)`${s} !== ${r}`)}};Ef.default=jI});var vx=R(Pf=>{"use strict";Object.defineProperty(Pf,"__esModule",{value:!0});var xs=B(),MI=oe(),DI=Da(),ZI={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,xs._)`{allowedValues: ${t}}`},LI={keyword:"enum",schemaType:"array",$data:!0,error:ZI,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,MI.useFunc)(e,DI.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,xs.or)(...o.map((p,m)=>f(h,m)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,h=>e.if((0,xs._)`${u()}(${r}, ${h})`,()=>e.assign(l,!0).break()))}function f(h,p){let m=o[p];return typeof m=="object"&&m!==null?(0,xs._)`${u()}(${r}, ${h}[${p}])`:(0,xs._)`${r} === ${m}`}}};Pf.default=LI});var xx=R(Rf=>{"use strict";Object.defineProperty(Rf,"__esModule",{value:!0});var qI=ax(),UI=cx(),FI=dx(),HI=px(),VI=fx(),BI=mx(),GI=hx(),KI=yx(),WI=_x(),JI=vx(),YI=[qI.default,UI.default,FI.default,HI.default,VI.default,BI.default,GI.default,KI.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},WI.default,JI.default];Rf.default=YI});var Of=R(bs=>{"use strict";Object.defineProperty(bs,"__esModule",{value:!0});bs.validateAdditionalItems=void 0;var _n=B(),If=oe(),XI={message:({params:{len:t}})=>(0,_n.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,_n._)`{limit: ${t}}`},QI={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:XI,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,If.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}bx(t,n)}};function bx(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,_n._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,_n._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,If.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,_n._)`${a} <= ${e.length}`);r.if((0,_n.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:If.Type.Num},u),i.allErrors||r.if((0,_n.not)(u),()=>r.break())})}}bs.validateAdditionalItems=bx;bs.default=QI});var Cf=R($s=>{"use strict";Object.defineProperty($s,"__esModule",{value:!0});$s.validateTuple=void 0;var $x=B(),Za=oe(),eO=xt(),tO={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Sx(t,"additionalItems",e);r.items=!0,!(0,Za.alwaysValidSchema)(r,e)&&t.ok((0,eO.validateArray)(t))}};function Sx(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=Za.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,$x._)`${s}.length`);r.forEach((d,f)=>{(0,Za.alwaysValidSchema)(a,d)||(n.if((0,$x._)`${u} > ${f}`,()=>t.subschema({keyword:i,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:h}=a,p=r.length,m=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(f.strictTuples&&!m){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${h}"`;(0,Za.checkStrictMode)(a,g,f.strictTuples)}}}$s.validateTuple=Sx;$s.default=tO});var wx=R(zf=>{"use strict";Object.defineProperty(zf,"__esModule",{value:!0});var rO=Cf(),nO={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,rO.validateTuple)(t,"items")};zf.default=nO});var Tx=R(Nf=>{"use strict";Object.defineProperty(Nf,"__esModule",{value:!0});var kx=B(),oO=oe(),sO=xt(),iO=Of(),aO={message:({params:{len:t}})=>(0,kx.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,kx._)`{limit: ${t}}`},cO={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:aO,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,oO.alwaysValidSchema)(n,e)&&(o?(0,iO.validateAdditionalItems)(t,o):t.ok((0,sO.validateArray)(t)))}};Nf.default=cO});var Ex=R(Af=>{"use strict";Object.defineProperty(Af,"__esModule",{value:!0});var $t=B(),La=oe(),uO={message:({params:{min:t,max:e}})=>e===void 0?(0,$t.str)`must contain at least ${t} valid item(s)`:(0,$t.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,$t._)`{minContains: ${t}}`:(0,$t._)`{minContains: ${t}, maxContains: ${e}}`},lO={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:uO,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,$t._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,La.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,La.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,La.alwaysValidSchema)(s,r)){let m=(0,$t._)`${l} >= ${i}`;a!==void 0&&(m=(0,$t._)`${m} && ${l} <= ${a}`),t.pass(m);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,$t._)`${o}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let m=e.name("_valid"),g=e.let("count",0);h(m,()=>e.if(m,()=>p(g)))}function h(m,g){e.forRange("i",0,l,y=>{t.subschema({keyword:"contains",dataProp:y,dataPropType:La.Type.Num,compositeRule:!0},m),g()})}function p(m){e.code((0,$t._)`${m}++`),a===void 0?e.if((0,$t._)`${m} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,$t._)`${m} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,$t._)`${m} >= ${i}`,()=>e.assign(d,!0)))}}};Af.default=lO});var Ix=R(Kt=>{"use strict";Object.defineProperty(Kt,"__esModule",{value:!0});Kt.validateSchemaDeps=Kt.validatePropertyDeps=Kt.error=void 0;var jf=B(),dO=oe(),Ss=xt();Kt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,jf.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,jf._)`{property: ${t},
|
|
58
|
+
missingProperty: ${n},
|
|
59
|
+
depsCount: ${e},
|
|
60
|
+
deps: ${r}}`};var pO={keyword:"dependencies",type:"object",schemaType:"object",error:Kt.error,code(t){let[e,r]=fO(t);Px(t,e),Rx(t,r)}};function fO({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 Px(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,Ss.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,Ss.checkReportMissingProp)(t,u)}):(r.if((0,jf._)`${c} && (${(0,Ss.checkMissingProp)(t,a,s)})`),(0,Ss.reportMissingProp)(t,s),r.else())}}Kt.validatePropertyDeps=Px;function Rx(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,dO.alwaysValidSchema)(s,e[a])||(r.if((0,Ss.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))}Kt.validateSchemaDeps=Rx;Kt.default=pO});var Cx=R(Mf=>{"use strict";Object.defineProperty(Mf,"__esModule",{value:!0});var Ox=B(),mO=oe(),hO={message:"property name must be valid",params:({params:t})=>(0,Ox._)`{propertyName: ${t.propertyName}}`},gO={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:hO,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,mO.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,Ox.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Mf.default=gO});var Zf=R(Df=>{"use strict";Object.defineProperty(Df,"__esModule",{value:!0});var qa=xt(),Nt=B(),yO=ar(),Ua=oe(),_O={message:"must NOT have additional properties",params:({params:t})=>(0,Nt._)`{additionalProperty: ${t.additionalProperty}}`},vO={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:_O,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,Ua.alwaysValidSchema)(i,r))return;let u=(0,qa.allSchemaProperties)(n.properties),l=(0,qa.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Nt._)`${s} === ${yO.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?p(g):e.if(f(g),()=>p(g))})}function f(g){let y;if(u.length>8){let v=(0,Ua.schemaRefOrVal)(i,n.properties,"properties");y=(0,qa.isOwnProperty)(e,v,g)}else u.length?y=(0,Nt.or)(...u.map(v=>(0,Nt._)`${g} === ${v}`)):y=Nt.nil;return l.length&&(y=(0,Nt.or)(y,...l.map(v=>(0,Nt._)`${(0,qa.usePattern)(t,v)}.test(${g})`))),(0,Nt.not)(y)}function h(g){e.code((0,Nt._)`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,Ua.alwaysValidSchema)(i,r)){let y=e.name("valid");c.removeAdditional==="failing"?(m(g,y,!1),e.if((0,Nt.not)(y),()=>{t.reset(),h(g)})):(m(g,y),a||e.if((0,Nt.not)(y),()=>e.break()))}}function m(g,y,v){let b={keyword:"additionalProperties",dataProp:g,dataPropType:Ua.Type.Str};v===!1&&Object.assign(b,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(b,y)}}};Df.default=vO});var Ax=R(qf=>{"use strict";Object.defineProperty(qf,"__esModule",{value:!0});var xO=us(),zx=xt(),Lf=oe(),Nx=Zf(),bO={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&&Nx.default.code(new xO.KeywordCxt(s,Nx.default,"additionalProperties"));let i=(0,zx.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Lf.mergeEvaluated.props(e,(0,Lf.toHash)(i),s.props));let a=i.filter(d=>!(0,Lf.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,zx.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)}}};qf.default=bO});var Zx=R(Uf=>{"use strict";Object.defineProperty(Uf,"__esModule",{value:!0});var jx=xt(),Fa=B(),Mx=oe(),Dx=oe(),$O={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,jx.allSchemaProperties)(r),c=a.filter(m=>(0,Mx.alwaysValidSchema)(s,r[m]));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 Fa.Name)&&(s.props=(0,Dx.evaluatedPropsToName)(e,s.props));let{props:d}=s;f();function f(){for(let m of a)u&&h(m),s.allErrors?p(m):(e.var(l,!0),p(m),e.if(l))}function h(m){for(let g in u)new RegExp(m).test(g)&&(0,Mx.checkStrictMode)(s,`property ${g} matches pattern ${m} (use allowMatchingProperties)`)}function p(m){e.forIn("key",n,g=>{e.if((0,Fa._)`${(0,jx.usePattern)(t,m)}.test(${g})`,()=>{let y=c.includes(m);y||t.subschema({keyword:"patternProperties",schemaProp:m,dataProp:g,dataPropType:Dx.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Fa._)`${d}[${g}]`,!0):!y&&!s.allErrors&&e.if((0,Fa.not)(l),()=>e.break())})})}}};Uf.default=$O});var Lx=R(Ff=>{"use strict";Object.defineProperty(Ff,"__esModule",{value:!0});var SO=oe(),wO={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,SO.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"}};Ff.default=wO});var qx=R(Hf=>{"use strict";Object.defineProperty(Hf,"__esModule",{value:!0});var kO=xt(),TO={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:kO.validateUnion,error:{message:"must match a schema in anyOf"}};Hf.default=TO});var Ux=R(Vf=>{"use strict";Object.defineProperty(Vf,"__esModule",{value:!0});var Ha=B(),EO=oe(),PO={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Ha._)`{passingSchemas: ${t.passing}}`},RO={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:PO,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let f;(0,EO.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Ha._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Ha._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,Ha.Name)})})}}};Vf.default=RO});var Fx=R(Bf=>{"use strict";Object.defineProperty(Bf,"__esModule",{value:!0});var IO=oe(),OO={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,IO.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Bf.default=OO});var Bx=R(Gf=>{"use strict";Object.defineProperty(Gf,"__esModule",{value:!0});var Va=B(),Vx=oe(),CO={message:({params:t})=>(0,Va.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Va._)`{failingKeyword: ${t.ifClause}}`},zO={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:CO,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Vx.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Hx(n,"then"),s=Hx(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,Va.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(f,i),d?e.assign(d,(0,Va._)`${l}`):t.setParams({ifClause:l})}}}};function Hx(t,e){let r=t.schema[e];return r!==void 0&&!(0,Vx.alwaysValidSchema)(t,r)}Gf.default=zO});var Gx=R(Kf=>{"use strict";Object.defineProperty(Kf,"__esModule",{value:!0});var NO=oe(),AO={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,NO.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Kf.default=AO});var Kx=R(Wf=>{"use strict";Object.defineProperty(Wf,"__esModule",{value:!0});var jO=Of(),MO=wx(),DO=Cf(),ZO=Tx(),LO=Ex(),qO=Ix(),UO=Cx(),FO=Zf(),HO=Ax(),VO=Zx(),BO=Lx(),GO=qx(),KO=Ux(),WO=Fx(),JO=Bx(),YO=Gx();function XO(t=!1){let e=[BO.default,GO.default,KO.default,WO.default,JO.default,YO.default,UO.default,FO.default,qO.default,HO.default,VO.default];return t?e.push(MO.default,ZO.default):e.push(jO.default,DO.default),e.push(LO.default),e}Wf.default=XO});var Wx=R(Jf=>{"use strict";Object.defineProperty(Jf,"__esModule",{value:!0});var Pe=B(),QO={message:({schemaCode:t})=>(0,Pe.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Pe._)`{format: ${t}}`},eC={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:QO,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?f():h();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),m=r.const("fDef",(0,Pe._)`${p}[${i}]`),g=r.let("fType"),y=r.let("format");r.if((0,Pe._)`typeof ${m} == "object" && !(${m} instanceof RegExp)`,()=>r.assign(g,(0,Pe._)`${m}.type || "string"`).assign(y,(0,Pe._)`${m}.validate`),()=>r.assign(g,(0,Pe._)`"string"`).assign(y,m)),t.fail$data((0,Pe.or)(v(),b()));function v(){return c.strictSchema===!1?Pe.nil:(0,Pe._)`${i} && !${y}`}function b(){let S=l.$async?(0,Pe._)`(${m}.async ? await ${y}(${n}) : ${y}(${n}))`:(0,Pe._)`${y}(${n})`,T=(0,Pe._)`(typeof ${y} == "function" ? ${S} : ${y}.test(${n}))`;return(0,Pe._)`${y} && ${y} !== true && ${g} === ${e} && !${T}`}}function h(){let p=d.formats[s];if(!p){v();return}if(p===!0)return;let[m,g,y]=b(p);m===e&&t.pass(S());function v(){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 b(T){let J=T instanceof RegExp?(0,Pe.regexpCode)(T):c.code.formats?(0,Pe._)`${c.code.formats}${(0,Pe.getProperty)(s)}`:void 0,D=r.scopeValue("formats",{key:s,ref:T,code:J});return typeof T=="object"&&!(T instanceof RegExp)?[T.type||"string",T.validate,(0,Pe._)`${D}.validate`]:["string",T,D]}function S(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Pe._)`await ${y}(${n})`}return typeof g=="function"?(0,Pe._)`${y}(${n})`:(0,Pe._)`${y}.test(${n})`}}}};Jf.default=eC});var Jx=R(Yf=>{"use strict";Object.defineProperty(Yf,"__esModule",{value:!0});var tC=Wx(),rC=[tC.default];Yf.default=rC});var Yx=R(to=>{"use strict";Object.defineProperty(to,"__esModule",{value:!0});to.contentVocabulary=to.metadataVocabulary=void 0;to.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];to.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Qx=R(Xf=>{"use strict";Object.defineProperty(Xf,"__esModule",{value:!0});var nC=ix(),oC=xx(),sC=Kx(),iC=Jx(),Xx=Yx(),aC=[nC.default,oC.default,(0,sC.default)(),iC.default,Xx.metadataVocabulary,Xx.contentVocabulary];Xf.default=aC});var tb=R(Ba=>{"use strict";Object.defineProperty(Ba,"__esModule",{value:!0});Ba.DiscrError=void 0;var eb;(function(t){t.Tag="tag",t.Mapping="mapping"})(eb||(Ba.DiscrError=eb={}))});var nb=R(em=>{"use strict";Object.defineProperty(em,"__esModule",{value:!0});var ro=B(),Qf=tb(),rb=Pa(),cC=ls(),uC=oe(),lC={message:({params:{discrError:t,tagName:e}})=>t===Qf.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,ro._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},dC={keyword:"discriminator",type:"object",schemaType:"object",error:lC,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,ro._)`${r}${(0,ro.getProperty)(a)}`);e.if((0,ro._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Qf.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let h=f();e.if(!1);for(let p in h)e.elseIf((0,ro._)`${u} === ${p}`),e.assign(c,d(h[p]));e.else(),t.error(!1,{discrError:Qf.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(h){let p=e.name("valid"),m=t.subschema({keyword:"oneOf",schemaProp:h},p);return t.mergeEvaluated(m,ro.Name),p}function f(){var h;let p={},m=y(o),g=!0;for(let S=0;S<i.length;S++){let T=i[S];if(T?.$ref&&!(0,uC.schemaHasRulesButRef)(T,s.self.RULES)){let D=T.$ref;if(T=rb.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,D),T instanceof rb.SchemaEnv&&(T=T.schema),T===void 0)throw new cC.default(s.opts.uriResolver,s.baseId,D)}let J=(h=T?.properties)===null||h===void 0?void 0:h[a];if(typeof J!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(m||y(T)),v(J,S)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function y({required:S}){return Array.isArray(S)&&S.includes(a)}function v(S,T){if(S.const)b(S.const,T);else if(S.enum)for(let J of S.enum)b(J,T);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function b(S,T){if(typeof S!="string"||S in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[S]=T}}}};em.default=dC});var ob=R((A4,pC)=>{pC.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 rm=R((xe,tm)=>{"use strict";Object.defineProperty(xe,"__esModule",{value:!0});xe.MissingRefError=xe.ValidationError=xe.CodeGen=xe.Name=xe.nil=xe.stringify=xe.str=xe._=xe.KeywordCxt=xe.Ajv=void 0;var fC=ex(),mC=Qx(),hC=nb(),sb=ob(),gC=["/properties"],Ga="http://json-schema.org/draft-07/schema",no=class extends fC.default{_addVocabularies(){super._addVocabularies(),mC.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(hC.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(sb,gC):sb;this.addMetaSchema(e,Ga,!1),this.refs["http://json-schema.org/schema"]=Ga}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Ga)?Ga:void 0)}};xe.Ajv=no;tm.exports=xe=no;tm.exports.Ajv=no;Object.defineProperty(xe,"__esModule",{value:!0});xe.default=no;var yC=us();Object.defineProperty(xe,"KeywordCxt",{enumerable:!0,get:function(){return yC.KeywordCxt}});var oo=B();Object.defineProperty(xe,"_",{enumerable:!0,get:function(){return oo._}});Object.defineProperty(xe,"str",{enumerable:!0,get:function(){return oo.str}});Object.defineProperty(xe,"stringify",{enumerable:!0,get:function(){return oo.stringify}});Object.defineProperty(xe,"nil",{enumerable:!0,get:function(){return oo.nil}});Object.defineProperty(xe,"Name",{enumerable:!0,get:function(){return oo.Name}});Object.defineProperty(xe,"CodeGen",{enumerable:!0,get:function(){return oo.CodeGen}});var _C=Ta();Object.defineProperty(xe,"ValidationError",{enumerable:!0,get:function(){return _C.default}});var vC=ls();Object.defineProperty(xe,"MissingRefError",{enumerable:!0,get:function(){return vC.default}})});var fb=R(Jt=>{"use strict";Object.defineProperty(Jt,"__esModule",{value:!0});Jt.formatNames=Jt.fastFormats=Jt.fullFormats=void 0;function Wt(t,e){return{validate:t,compare:e}}Jt.fullFormats={date:Wt(ub,im),time:Wt(om(!0),am),"date-time":Wt(ib(!0),db),"iso-time":Wt(om(),lb),"iso-date-time":Wt(ib(),pb),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:kC,"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:CC,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:TC,int32:{type:"number",validate:RC},int64:{type:"number",validate:IC},float:{type:"number",validate:cb},double:{type:"number",validate:cb},password:!0,binary:!0};Jt.fastFormats={...Jt.fullFormats,date:Wt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,im),time:Wt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,am),"date-time":Wt(/^\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,db),"iso-time":Wt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,lb),"iso-date-time":Wt(/^\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,pb),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};Jt.formatNames=Object.keys(Jt.fullFormats);function xC(t){return t%4===0&&(t%100!==0||t%400===0)}var bC=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,$C=[0,31,28,31,30,31,30,31,31,30,31,30,31];function ub(t){let e=bC.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&&xC(r)?29:$C[n])}function im(t,e){if(t&&e)return t>e?1:t<e?-1:0}var nm=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function om(t){return function(r){let n=nm.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,f=o-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&i<61}}function am(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 lb(t,e){if(!(t&&e))return;let r=nm.exec(t),n=nm.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 sm=/t|\s/i;function ib(t){let e=om(t);return function(n){let o=n.split(sm);return o.length===2&&ub(o[0])&&e(o[1])}}function db(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function pb(t,e){if(!(t&&e))return;let[r,n]=t.split(sm),[o,s]=e.split(sm),i=im(r,o);if(i!==void 0)return i||am(n,s)}var SC=/\/|:/,wC=/^(?:[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 kC(t){return SC.test(t)&&wC.test(t)}var ab=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function TC(t){return ab.lastIndex=0,ab.test(t)}var EC=-(2**31),PC=2**31-1;function RC(t){return Number.isInteger(t)&&t<=PC&&t>=EC}function IC(t){return Number.isInteger(t)}function cb(){return!0}var OC=/[^\\]\\Z/;function CC(t){if(OC.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var mb=R(so=>{"use strict";Object.defineProperty(so,"__esModule",{value:!0});so.formatLimitDefinition=void 0;var zC=rm(),At=B(),zr=At.operators,Ka={formatMaximum:{okStr:"<=",ok:zr.LTE,fail:zr.GT},formatMinimum:{okStr:">=",ok:zr.GTE,fail:zr.LT},formatExclusiveMaximum:{okStr:"<",ok:zr.LT,fail:zr.GTE},formatExclusiveMinimum:{okStr:">",ok:zr.GT,fail:zr.LTE}},NC={message:({keyword:t,schemaCode:e})=>(0,At.str)`should be ${Ka[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,At._)`{comparison: ${Ka[t].okStr}, limit: ${e}}`};so.formatLimitDefinition={keyword:Object.keys(Ka),type:"string",schemaType:"string",$data:!0,error:NC,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 zC.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),h=e.const("fmt",(0,At._)`${f}[${c.schemaCode}]`);t.fail$data((0,At.or)((0,At._)`typeof ${h} != "object"`,(0,At._)`${h} instanceof RegExp`,(0,At._)`typeof ${h}.compare != "function"`,d(h)))}function l(){let f=c.schema,h=a.formats[f];if(!h||h===!0)return;if(typeof h!="object"||h instanceof RegExp||typeof h.compare!="function")throw new Error(`"${o}": format "${f}" does not define "compare" function`);let p=e.scopeValue("formats",{key:f,ref:h,code:i.code.formats?(0,At._)`${i.code.formats}${(0,At.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,At._)`${f}.compare(${r}, ${n}) ${Ka[o].fail} 0`}},dependencies:["format"]};var AC=t=>(t.addKeyword(so.formatLimitDefinition),t);so.default=AC});var _b=R((ws,yb)=>{"use strict";Object.defineProperty(ws,"__esModule",{value:!0});var io=fb(),jC=mb(),cm=B(),hb=new cm.Name("fullFormats"),MC=new cm.Name("fastFormats"),um=(t,e={keywords:!0})=>{if(Array.isArray(e))return gb(t,e,io.fullFormats,hb),t;let[r,n]=e.mode==="fast"?[io.fastFormats,MC]:[io.fullFormats,hb],o=e.formats||io.formatNames;return gb(t,o,r,n),e.keywords&&(0,jC.default)(t),t};um.get=(t,e="full")=>{let n=(e==="fast"?io.fastFormats:io.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function gb(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,cm._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}yb.exports=ws=um;Object.defineProperty(ws,"__esModule",{value:!0});ws.default=um});function DC(){let t=new vb.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,xb.default)(t),t}var vb,xb,Wa,bb=$(()=>{vb=bn(rm(),1),xb=bn(_b(),1);Wa=class{constructor(e){this._ajv=e??DC()}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 Ja,$b=$(()=>{Ja=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 Sb(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 wb(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 kb=$(()=>{});var Ya,Tb=$(()=>{z_();Ko();bb();jo();$b();kb();Ya=class extends fa{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Go.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 Wa,this.setRequestHandler($d,n=>this._oninitialize(n)),this.setNotificationHandler(Sd,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Id,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Go.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Ja(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=C_(this._capabilities,e)}setRequestHandler(e,r){let o=$r(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(ht(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=br(Fn,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new N(M.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,f=await Promise.resolve(r(c,u));if(d.task){let p=br(qn,f);if(!p.success){let m=p.error instanceof Error?p.error.message:String(p.error);throw new N(M.InvalidParams,`Invalid task creation result: ${m}`)}return p.data}let h=br(ea,f);if(!h.success){let p=h.error instanceof Error?h.error.message:String(h.error);throw new N(M.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){wb(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Sb(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:Cy.includes(r)?r:yd,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"},Di)}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},Cd,r):this.request({method:"sampling/createMessage",params:e},Od,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},ta,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},ta,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new N(M.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof N?i:new N(M.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},zd,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 lm(t){return!!t&&typeof t=="object"&&Pb in t}function Rb(t){return t[Pb]?.complete}var Pb,Eb,Ib=$(()=>{Pb=Symbol.for("mcp.completable");(function(t){t.Completable="McpCompletable"})(Eb||(Eb={}))});var Ob=$(()=>{});function LC(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"),!ZC.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 qC(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 dm(t){let e=LC(t);return qC(t,e.warnings),e.isValid}var ZC,Cb=$(()=>{ZC=/^[A-Za-z0-9._-]{1,128}$/});var Xa,zb=$(()=>{Xa=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 pm=$(()=>{ci();ci()});function jb(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function FC(t){return"_def"in t||"_zod"in t||jb(t)}function fm(t){return typeof t!="object"||t===null||FC(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(jb)}function Nb(t){if(t)return fm(t)?cn(t):t}function HC(t){let e=$r(t);return e?Object.entries(e).map(([r,n])=>{let o=oy(n),s=sy(n);return{name:r,description:o,required:!s}}):[]}function Nr(t){let r=$r(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Ci(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function Ab(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var Qa,UC,ks,Mb=$(()=>{Tb();jo();gp();Ko();Ib();Ob();Cb();zb();pm();Qa=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 Ya(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new Xa(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(Nr(Qi)),this.server.assertCanSetRequestHandler(Nr(Fn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(Qi,()=>({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=Zn(r.inputSchema);return o?fp(o,{strictUnions:!0,pipeStrategy:"input"}):UC})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=Zn(r.outputSchema);o&&(n.outputSchema=fp(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(Fn,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new N(M.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new N(M.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 N(M.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new N(M.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 N&&n.code===M.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=Zn(e.inputSchema)??e.inputSchema,i=await Ii(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Oi(a);throw new N(M.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 N(M.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=Zn(e.outputSchema),s=await Ii(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Oi(i);throw new N(M.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(f=>setTimeout(f,l));let d=await n.taskStore.getTask(c);if(!d)throw new N(M.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Nr(ra)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(ra,async e=>{switch(e.params.ref.type){case"ref/prompt":return Ky(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Wy(e),this.handleResourceCompletion(e,e.params.ref);default:throw new N(M.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new N(M.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new N(M.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return ks;let s=$r(n.argsSchema)?.[e.params.argument.name];if(!lm(s))return ks;let i=Rb(s);if(!i)return ks;let a=await i(e.params.argument.value,e.params.context);return Ab(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 ks;throw new N(M.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return ks;let s=await o(e.params.argument.value,e.params.context);return Ab(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(Nr(Ki)),this.server.assertCanSetRequestHandler(Nr(Wi)),this.server.assertCanSetRequestHandler(Nr(Ji)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Ki,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(Wi,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(Ji,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new N(M.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 N(M.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(Nr(Yi)),this.server.assertCanSetRequestHandler(Nr(Xi)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Yi,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?HC(r.argsSchema):void 0}))})),this.server.setRequestHandler(Xi,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new N(M.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new N(M.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=Zn(n.argsSchema),s=await Ii(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Oi(c);throw new N(M.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 tt?c._def?.innerType:c;return lm(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){dm(e);let l={title:r,description:n,inputSchema:Nb(o),outputSchema:Nb(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"&&dm(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];fm(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!fm(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()}},UC={type:"object",properties:{}};ks={completion:{values:[],hasMore:!1}}});function VC(t){return Ly.parse(JSON.parse(t))}function Db(t){return JSON.stringify(t)+`
|
|
61
|
+
`}var ec,Zb=$(()=>{Ko();ec=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
|
|
62
|
+
`);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),VC(r)}clear(){this._buffer=void 0}}});import Lb from"node:process";var tc,qb=$(()=>{Zb();tc=class{constructor(e=Lb.stdin,r=Lb.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new ec,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=Db(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}}});function Ts(t,e){if(Buffer.byteLength(t)<=e)return t;let r=t.split(`
|
|
63
|
+
`),n=Math.floor(e*.6),o=e-n,s=[],i=0;for(let f of r){let h=Buffer.byteLength(f)+1;if(i+h>n)break;s.push(f),i+=h}let a=[],c=0;for(let f=r.length-1;f>=s.length;f--){let h=Buffer.byteLength(r[f])+1;if(c+h>o)break;a.unshift(r[f]),c+=h}let u=r.length-s.length-a.length,l=Buffer.byteLength(t)-i-c,d=`
|
|
64
|
+
|
|
65
|
+
... [${u} lines / ${(l/1024).toFixed(1)}KB truncated \u2014 showing first ${s.length} + last ${a.length} lines] ...
|
|
66
|
+
|
|
67
|
+
`;return s.join(`
|
|
68
|
+
`)+d+a.join(`
|
|
69
|
+
`)}var Ub=$(()=>{"use strict"});var Gb={};wt(Gb,{PolyglotExecutor:()=>Es});import{spawn as BC,execSync as Bb}from"node:child_process";import{mkdtempSync as GC,writeFileSync as Fb,rmSync as Hb,existsSync as Vb}from"node:fs";import{join as rc,resolve as KC}from"node:path";import{tmpdir as WC}from"node:os";function mm(t){if(Ar&&t.pid)try{Bb(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else t.kill("SIGKILL")}var Ar,Es,hm=$(()=>{"use strict";Fs();Ub();Ar=process.platform==="win32";Es=class{#e;#t;#r;#n;#o=new Set;constructor(e){this.#e=e?.maxOutputBytes??102400,this.#t=e?.hardCapBytes??100*1024*1024,this.#r=e?.projectRoot??process.cwd(),this.#n=e?.runtimes??$n()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill(e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=GC(rc(WC(),"ctx-mode-"));try{let a=this.#i(i,n,r),c=Hm(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#a(a,i,o);let u=r==="shell"?this.#r:i,l=await this.#s(c,u,o,s);if(!l.backgrounded)try{Hb(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{Hb(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=KC(this.#r,r),a=this.#u(i,n,o);return this.execute({language:n,code:a,timeout:s})}#i(e,r,n){let o={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};n==="go"&&!r.includes("package ")&&(r=`package main
|
|
70
|
+
|
|
71
|
+
import "fmt"
|
|
72
|
+
|
|
73
|
+
func main() {
|
|
74
|
+
${r}
|
|
75
|
+
}
|
|
76
|
+
`),n==="php"&&!r.trimStart().startsWith("<?")&&(r=`<?php
|
|
77
|
+
${r}`),n==="elixir"&&Vb(rc(this.#r,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(rc(this.#r,"_build/dev/lib"))}, "*/ebin"))
|
|
78
|
+
|> Enum.each(&Code.prepend_path/1)
|
|
79
|
+
|
|
80
|
+
${r}`);let s=rc(e,`script.${o[n]}`);return n==="shell"?Fb(s,r,{encoding:"utf-8",mode:448}):Fb(s,r,"utf-8"),s}async#a(e,r,n){let o=Ar?".exe":"",s=e.replace(/\.rs$/,"")+o;try{Bb(`rustc ${e} -o ${s}`,{cwd:r,timeout:Math.min(n,3e4),encoding:"utf-8",stdio:["pipe","pipe","pipe"]})}catch(i){return{stdout:"",stderr:`Compilation failed:
|
|
81
|
+
${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#s([s],r,n)}async#s(e,r,n,o=!1){return new Promise(s=>{let i=Ar&&["tsx","ts-node","elixir"].includes(e[0]),a=e[0],c;Ar&&e.length===2&&e[1]?c=[e[1].replace(/\\/g,"/")]:c=Ar?e.slice(1).map(y=>y.replace(/\\/g,"/")):e.slice(1);let u=BC(a,c,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(r),shell:i}),l=!1,d=!1,f=setTimeout(()=>{if(l=!0,o){d=!0,u.pid&&this.#o.add(u.pid),u.unref(),u.stdout.destroy(),u.stderr.destroy();let y=Buffer.concat(h).toString("utf-8"),v=Buffer.concat(p).toString("utf-8"),b=this.#e;s({stdout:Ts(y,b),stderr:Ts(v,b),exitCode:0,timedOut:!0,backgrounded:!0})}else mm(u)},n),h=[],p=[],m=0,g=!1;u.stdout.on("data",y=>{m+=y.length,m<=this.#t?h.push(y):g||(g=!0,mm(u))}),u.stderr.on("data",y=>{m+=y.length,m<=this.#t?p.push(y):g||(g=!0,mm(u))}),u.on("close",y=>{if(clearTimeout(f),d)return;let v=Buffer.concat(h).toString("utf-8"),b=Buffer.concat(p).toString("utf-8");g&&(b+=`
|
|
82
|
+
[output capped at ${(this.#t/1024/1024).toFixed(0)}MB \u2014 process killed]`);let S=this.#e,T=Ts(v,S),J=Ts(b,S);s({stdout:T,stderr:J,exitCode:l?1:y??1,timedOut:l})}),u.on("error",y=>{clearTimeout(f),!d&&s({stdout:"",stderr:y.message,exitCode:1,timedOut:!1})})})}#c(e){let r=process.env.HOME??process.env.USERPROFILE??e,n=["GH_TOKEN","GITHUB_TOKEN","GH_HOST","AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","AWS_REGION","AWS_DEFAULT_REGION","AWS_PROFILE","GOOGLE_APPLICATION_CREDENTIALS","CLOUDSDK_CONFIG","DOCKER_HOST","KUBECONFIG","NPM_TOKEN","NODE_AUTH_TOKEN","npm_config_registry","HTTP_PROXY","HTTPS_PROXY","NO_PROXY","SSL_CERT_FILE","CURL_CA_BUNDLE","XDG_CONFIG_HOME","XDG_DATA_HOME","SSH_AUTH_SOCK","SSH_AGENT_PID","DIRENV_DIR","DIRENV_FILE","DIRENV_DIFF","DIRENV_WATCHES","DIRENV_LAYOUT_DIR","NIX_PATH","NIX_PROFILES","NIX_SSL_CERT_FILE","NIX_CC","NIX_STORE","NIX_BUILD_CORES","IN_NIX_SHELL","LOCALE_ARCHIVE","LD_LIBRARY_PATH","DYLD_LIBRARY_PATH","LIBRARY_PATH","C_INCLUDE_PATH","CPLUS_INCLUDE_PATH","PKG_CONFIG_PATH","CMAKE_PREFIX_PATH","GOPATH","GOROOT","CARGO_HOME","RUSTUP_HOME","ASDF_DIR","ASDF_DATA_DIR","MISE_DATA_DIR","VIRTUAL_ENV","CONDA_PREFIX","CONDA_DEFAULT_ENV","PYTHONPATH","GEM_HOME","GEM_PATH","BUNDLE_PATH","RBENV_ROOT","JAVA_HOME","SDKMAN_DIR"],o={PATH:process.env.PATH??(Ar?"":"/usr/local/bin:/usr/bin:/bin"),HOME:r,TMPDIR:e,LANG:"en_US.UTF-8",PYTHONDONTWRITEBYTECODE:"1",PYTHONUNBUFFERED:"1",PYTHONUTF8:"1",NO_COLOR:"1"};if(Ar){let s=["SYSTEMROOT","SystemRoot","COMSPEC","PATHEXT","USERPROFILE","APPDATA","LOCALAPPDATA","TEMP","TMP"];for(let c of s)process.env[c]&&(o[c]=process.env[c]);o.MSYS_NO_PATHCONV="1",o.MSYS2_ARG_CONV_EXCL="*";let i="C:\\Program Files\\Git\\usr\\bin",a="C:\\Program Files\\Git\\bin";o.PATH.includes(i)||(o.PATH=`${i};${a};${o.PATH}`)}for(let s of n)process.env[s]&&(o[s]=process.env[s]);if(!o.SSL_CERT_FILE){let s=Ar?[]:["/etc/ssl/cert.pem","/etc/ssl/certs/ca-certificates.crt","/etc/pki/tls/certs/ca-bundle.crt","/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"];for(let i of s)if(Vb(i)){o.SSL_CERT_FILE=i;break}}return o}#u(e,r,n){let o=JSON.stringify(e);switch(r){case"javascript":case"typescript":return`const FILE_CONTENT_PATH = ${o};
|
|
83
|
+
const FILE_CONTENT = require("fs").readFileSync(FILE_CONTENT_PATH, "utf-8");
|
|
84
|
+
${n}`;case"python":return`FILE_CONTENT_PATH = ${o}
|
|
85
|
+
with open(FILE_CONTENT_PATH, "r", encoding="utf-8") as _f:
|
|
86
|
+
FILE_CONTENT = _f.read()
|
|
87
|
+
${n}`;case"shell":{let s="'"+e.replace(/'/g,"'\\''")+"'";return`FILE_CONTENT_PATH=${s}
|
|
88
|
+
FILE_CONTENT=$(cat ${s})
|
|
89
|
+
${n}`}case"ruby":return`FILE_CONTENT_PATH = ${o}
|
|
90
|
+
FILE_CONTENT = File.read(FILE_CONTENT_PATH, encoding: "utf-8")
|
|
91
|
+
${n}`;case"go":return`package main
|
|
92
|
+
|
|
93
|
+
import (
|
|
94
|
+
"fmt"
|
|
95
|
+
"os"
|
|
96
|
+
)
|
|
97
|
+
|
|
98
|
+
var FILE_CONTENT_PATH = ${o}
|
|
99
|
+
|
|
100
|
+
func main() {
|
|
101
|
+
b, _ := os.ReadFile(FILE_CONTENT_PATH)
|
|
102
|
+
FILE_CONTENT := string(b)
|
|
103
|
+
_ = FILE_CONTENT
|
|
104
|
+
_ = fmt.Sprint()
|
|
105
|
+
${n}
|
|
106
|
+
}
|
|
107
|
+
`;case"rust":return`use std::fs;
|
|
108
|
+
|
|
109
|
+
fn main() {
|
|
110
|
+
let file_content_path = ${o};
|
|
111
|
+
let file_content = fs::read_to_string(file_content_path).unwrap();
|
|
112
|
+
${n}
|
|
113
|
+
}
|
|
114
|
+
`;case"php":return`<?php
|
|
115
|
+
$FILE_CONTENT_PATH = ${o};
|
|
116
|
+
$FILE_CONTENT = file_get_contents($FILE_CONTENT_PATH);
|
|
117
|
+
${n}`;case"perl":return`my $FILE_CONTENT_PATH = ${o};
|
|
118
|
+
open(my $fh, '<:encoding(UTF-8)', $FILE_CONTENT_PATH) or die "Cannot open: $!";
|
|
119
|
+
my $FILE_CONTENT = do { local $/; <$fh> };
|
|
120
|
+
close($fh);
|
|
121
|
+
${n}`;case"r":return`FILE_CONTENT_PATH <- ${o}
|
|
122
|
+
FILE_CONTENT <- readLines(FILE_CONTENT_PATH, warn=FALSE, encoding="UTF-8")
|
|
123
|
+
FILE_CONTENT <- paste(FILE_CONTENT, collapse="\\n")
|
|
124
|
+
${n}`;case"elixir":return`file_content_path = ${o}
|
|
125
|
+
file_content = File.read!(file_content_path)
|
|
126
|
+
${n}`}}}});import{createRequire as JC}from"node:module";function Kb(){return gm||(gm=JC(import.meta.url)("better-sqlite3")),gm}function Wb(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL")}var gm,Jb=$(()=>{"use strict";gm=null});import{readFileSync as YC,readdirSync as XC,unlinkSync as Qb}from"node:fs";import{tmpdir as e0}from"node:os";import{join as t0}from"node:path";function QC(t,e="AND"){let r=t.replace(/['"(){}[\]*:^~]/g," ").split(/\s+/).filter(n=>n.length>0&&!["AND","OR","NOT","NEAR"].includes(n.toUpperCase()));return r.length===0?'""':r.map(n=>`"${n}"`).join(e==="OR"?" OR ":" ")}function ez(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=r.split(/\s+/).filter(o=>o.length>=3);return n.length===0?"":n.map(o=>`"${o}"`).join(e==="OR"?" OR ":" ")}function tz(t,e){if(t.length===0)return e.length;if(e.length===0)return t.length;let r=Array.from({length:e.length+1},(n,o)=>o);for(let n=1;n<=t.length;n++){let o=[n];for(let s=1;s<=e.length;s++)o[s]=t[n-1]===e[s-1]?r[s-1]:1+Math.min(r[s],o[s-1],r[s-1]);r=o}return r[e.length]}function rz(t){return t<=4?1:t<=12?2:3}function r0(){let t=e0(),e=0;try{let r=XC(t);for(let n of r){let o=n.match(/^context-mode-(\d+)\.db$/);if(!o)continue;let s=parseInt(o[1],10);if(s!==process.pid)try{process.kill(s,0)}catch{let i=t0(t,n);for(let a of["","-wal","-shm"])try{Qb(i+a)}catch{}e++}}}catch{}return e}var Yb,Xb,nc,n0=$(()=>{"use strict";Jb();Yb=new Set(["the","and","for","are","but","not","you","all","can","had","her","was","one","our","out","has","his","how","its","may","new","now","old","see","way","who","did","get","got","let","say","she","too","use","will","with","this","that","from","they","been","have","many","some","them","than","each","make","like","just","over","such","take","into","year","your","good","could","would","about","which","their","there","other","after","should","through","also","more","most","only","very","when","what","then","these","those","being","does","done","both","same","still","while","where","here","were","much","update","updates","updated","deps","dev","tests","test","add","added","fix","fixed","run","running","using"]);Xb=4096;nc=class{#e;#t;#r;#n;#o;#i;#a;#s;#c;#u;#d;#p;#f;#m;#h;#g;#y;#_;#v;#x;constructor(e){let r=Kb();this.#t=e??t0(e0(),`context-mode-${process.pid}.db`),this.#e=new r(this.#t,{timeout:5e3}),Wb(this.#e),this.#$(),this.#S()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{Qb(this.#t+e)}catch{}}#$(){this.#e.exec(`
|
|
127
|
+
CREATE TABLE IF NOT EXISTS sources (
|
|
128
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
129
|
+
label TEXT NOT NULL,
|
|
130
|
+
chunk_count INTEGER NOT NULL DEFAULT 0,
|
|
131
|
+
code_chunk_count INTEGER NOT NULL DEFAULT 0,
|
|
132
|
+
indexed_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
133
|
+
);
|
|
134
|
+
|
|
135
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS chunks USING fts5(
|
|
136
|
+
title,
|
|
137
|
+
content,
|
|
138
|
+
source_id UNINDEXED,
|
|
139
|
+
content_type UNINDEXED,
|
|
140
|
+
tokenize='porter unicode61'
|
|
141
|
+
);
|
|
142
|
+
|
|
143
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS chunks_trigram USING fts5(
|
|
144
|
+
title,
|
|
145
|
+
content,
|
|
146
|
+
source_id UNINDEXED,
|
|
147
|
+
content_type UNINDEXED,
|
|
148
|
+
tokenize='trigram'
|
|
149
|
+
);
|
|
150
|
+
|
|
151
|
+
CREATE TABLE IF NOT EXISTS vocabulary (
|
|
152
|
+
word TEXT PRIMARY KEY
|
|
153
|
+
);
|
|
154
|
+
`)}#S(){this.#r=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, 0, 0)"),this.#n=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, ?, ?)"),this.#o=this.#e.prepare("INSERT INTO chunks (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#i=this.#e.prepare("INSERT INTO chunks_trigram (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#a=this.#e.prepare("INSERT OR IGNORE INTO vocabulary (word) VALUES (?)"),this.#s=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#c=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#u=this.#e.prepare("DELETE FROM sources WHERE label = ?"),this.#d=this.#e.prepare(`
|
|
155
|
+
SELECT
|
|
156
|
+
chunks.title,
|
|
157
|
+
chunks.content,
|
|
158
|
+
chunks.content_type,
|
|
159
|
+
sources.label,
|
|
160
|
+
bm25(chunks, 2.0, 1.0) AS rank,
|
|
161
|
+
highlight(chunks, 1, char(2), char(3)) AS highlighted
|
|
162
|
+
FROM chunks
|
|
163
|
+
JOIN sources ON sources.id = chunks.source_id
|
|
164
|
+
WHERE chunks MATCH ?
|
|
165
|
+
ORDER BY rank
|
|
166
|
+
LIMIT ?
|
|
167
|
+
`),this.#p=this.#e.prepare(`
|
|
168
|
+
SELECT
|
|
169
|
+
chunks.title,
|
|
170
|
+
chunks.content,
|
|
171
|
+
chunks.content_type,
|
|
172
|
+
sources.label,
|
|
173
|
+
bm25(chunks, 2.0, 1.0) AS rank,
|
|
174
|
+
highlight(chunks, 1, char(2), char(3)) AS highlighted
|
|
175
|
+
FROM chunks
|
|
176
|
+
JOIN sources ON sources.id = chunks.source_id
|
|
177
|
+
WHERE chunks MATCH ? AND sources.label LIKE ?
|
|
178
|
+
ORDER BY rank
|
|
179
|
+
LIMIT ?
|
|
180
|
+
`),this.#f=this.#e.prepare(`
|
|
181
|
+
SELECT
|
|
182
|
+
chunks_trigram.title,
|
|
183
|
+
chunks_trigram.content,
|
|
184
|
+
chunks_trigram.content_type,
|
|
185
|
+
sources.label,
|
|
186
|
+
bm25(chunks_trigram, 2.0, 1.0) AS rank,
|
|
187
|
+
highlight(chunks_trigram, 1, char(2), char(3)) AS highlighted
|
|
188
|
+
FROM chunks_trigram
|
|
189
|
+
JOIN sources ON sources.id = chunks_trigram.source_id
|
|
190
|
+
WHERE chunks_trigram MATCH ?
|
|
191
|
+
ORDER BY rank
|
|
192
|
+
LIMIT ?
|
|
193
|
+
`),this.#m=this.#e.prepare(`
|
|
194
|
+
SELECT
|
|
195
|
+
chunks_trigram.title,
|
|
196
|
+
chunks_trigram.content,
|
|
197
|
+
chunks_trigram.content_type,
|
|
198
|
+
sources.label,
|
|
199
|
+
bm25(chunks_trigram, 2.0, 1.0) AS rank,
|
|
200
|
+
highlight(chunks_trigram, 1, char(2), char(3)) AS highlighted
|
|
201
|
+
FROM chunks_trigram
|
|
202
|
+
JOIN sources ON sources.id = chunks_trigram.source_id
|
|
203
|
+
WHERE chunks_trigram MATCH ? AND sources.label LIKE ?
|
|
204
|
+
ORDER BY rank
|
|
205
|
+
LIMIT ?
|
|
206
|
+
`),this.#h=this.#e.prepare("SELECT word FROM vocabulary WHERE length(word) BETWEEN ? AND ?"),this.#g=this.#e.prepare("SELECT label, chunk_count as chunkCount FROM sources ORDER BY id DESC"),this.#y=this.#e.prepare(`SELECT c.title, c.content, c.content_type, s.label
|
|
207
|
+
FROM chunks c
|
|
208
|
+
JOIN sources s ON s.id = c.source_id
|
|
209
|
+
WHERE c.source_id = ?
|
|
210
|
+
ORDER BY c.rowid`),this.#_=this.#e.prepare("SELECT chunk_count FROM sources WHERE id = ?"),this.#v=this.#e.prepare("SELECT content FROM chunks WHERE source_id = ?"),this.#x=this.#e.prepare(`
|
|
211
|
+
SELECT
|
|
212
|
+
(SELECT COUNT(*) FROM sources) AS sources,
|
|
213
|
+
(SELECT COUNT(*) FROM chunks) AS chunks,
|
|
214
|
+
(SELECT COUNT(*) FROM chunks WHERE content_type = 'code') AS codeChunks
|
|
215
|
+
`)}index(e){let{content:r,path:n,source:o}=e;if(!r&&!n)throw new Error("Either content or path must be provided");let s=r??YC(n,"utf-8"),i=o??n??"untitled",a=this.#k(s);return this.#l(a,i,s)}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#l([],r,"");let o=this.#T(e,n);return this.#l(o.map(s=>({...s,hasCode:!1})),r,e)}indexJSON(e,r,n=Xb){if(!e||e.trim().length===0)return this.indexPlainText("",r);let o;try{o=JSON.parse(e)}catch{return this.indexPlainText(e,r)}let s=[];return this.#b(o,[],s,n),s.length===0?this.indexPlainText(e,r):this.#l(s,r,e)}#l(e,r,n){let o=e.filter(a=>a.hasCode).length,i=this.#e.transaction(()=>{if(this.#s.run(r),this.#c.run(r),this.#u.run(r),e.length===0){let u=this.#r.run(r);return Number(u.lastInsertRowid)}let a=this.#n.run(r,e.length,o),c=Number(a.lastInsertRowid);for(let u of e){let l=u.hasCode?"code":"prose";this.#o.run(u.title,u.content,c,l),this.#i.run(u.title,u.content,c,l)}return c})();return n&&this.#w(n),{sourceId:i,label:r,totalChunks:e.length,codeChunks:o}}search(e,r=3,n,o="AND"){let s=QC(e,o),i=n?this.#p:this.#d,a=n?[s,`%${n}%`,r]:[s,r];return i.all(...a).map(u=>({title:u.title,content:u.content,source:u.label,rank:u.rank,contentType:u.content_type,highlighted:u.highlighted}))}searchTrigram(e,r=3,n,o="AND"){let s=ez(e,o);if(!s)return[];let i=n?this.#m:this.#f,a=n?[s,`%${n}%`,r]:[s,r];return i.all(...a).map(u=>({title:u.title,content:u.content,source:u.label,rank:u.rank,contentType:u.content_type,highlighted:u.highlighted}))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;let n=rz(r.length),o=this.#h.all(r.length-n,r.length+n),s=null,i=n+1;for(let{word:a}of o){if(a===r)return null;let c=tz(r,a);c<i&&(i=c,s=a)}return i<=n?s:null}searchWithFallback(e,r=3,n){let o=this.search(e,r,n,"AND");if(o.length>0)return o.map(f=>({...f,matchLayer:"porter"}));let s=this.search(e,r,n,"OR");if(s.length>0)return s.map(f=>({...f,matchLayer:"porter"}));let i=this.searchTrigram(e,r,n,"AND");if(i.length>0)return i.map(f=>({...f,matchLayer:"trigram"}));let a=this.searchTrigram(e,r,n,"OR");if(a.length>0)return a.map(f=>({...f,matchLayer:"trigram"}));let c=e.toLowerCase().trim().split(/\s+/).filter(f=>f.length>=3),u=c.join(" "),d=c.map(f=>this.fuzzyCorrect(f)??f).join(" ");if(d!==u){let f=this.search(d,r,n,"AND");if(f.length>0)return f.map(g=>({...g,matchLayer:"fuzzy"}));let h=this.search(d,r,n,"OR");if(h.length>0)return h.map(g=>({...g,matchLayer:"fuzzy"}));let p=this.searchTrigram(d,r,n,"AND");if(p.length>0)return p.map(g=>({...g,matchLayer:"fuzzy"}));let m=this.searchTrigram(d,r,n,"OR");if(m.length>0)return m.map(g=>({...g,matchLayer:"fuzzy"}))}return[]}listSources(){return this.#g.all()}getChunksBySource(e){return this.#y.all(e).map(n=>({title:n.title,content:n.content,source:n.label,rank:0,contentType:n.content_type}))}getDistinctiveTerms(e,r=40){let n=this.#_.get(e);if(!n||n.chunk_count<3)return[];let o=n.chunk_count,s=2,i=Math.max(3,Math.ceil(o*.4)),a=new Map;for(let l of this.#v.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(f=>f.length>=3&&!Yb.has(f)));for(let f of d)a.set(f,(a.get(f)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let f=Math.log(o/d),h=Math.min(l.length/20,.5),p=/[_]/.test(l),m=l.length>=12,g=p?1.5:m?.8:0;return{word:l,score:f+h+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#x.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}close(){this.#e.close()}#w(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(o=>o.length>=3&&!Yb.has(o)),n=[...new Set(r)];this.#e.transaction(()=>{for(let o of n)this.#a.run(o)})()}#k(e,r=Xb){let n=[],o=e.split(`
|
|
216
|
+
`),s=[],i=[],a="",c=()=>{let l=i.join(`
|
|
217
|
+
`).trim();if(l.length===0)return;let d=this.#I(s,a),f=i.some(y=>/^`{3,}/.test(y));if(Buffer.byteLength(l)<=r){n.push({title:d,content:l,hasCode:f}),i=[];return}let h=l.split(/\n\n+/),p=[],m=1,g=()=>{if(p.length===0)return;let y=p.join(`
|
|
218
|
+
|
|
219
|
+
`).trim();if(y.length===0)return;let v=h.length>1?`${d} (${m})`:d;m++,n.push({title:v,content:y,hasCode:y.includes("```")}),p=[]};for(let y of h){p.push(y);let v=p.join(`
|
|
220
|
+
|
|
221
|
+
`);Buffer.byteLength(v)>r&&p.length>1&&(p.pop(),g(),p=[y])}g(),i=[]},u=0;for(;u<o.length;){let l=o[u];if(/^[-_*]{3,}\s*$/.test(l)){c(),u++;continue}let d=l.match(/^(#{1,4})\s+(.+)$/);if(d){c();let h=d[1].length,p=d[2].trim();for(;s.length>0&&s[s.length-1].level>=h;)s.pop();s.push({level:h,text:p}),a=p,i.push(l),u++;continue}let f=l.match(/^(`{3,})(.*)?$/);if(f){let h=f[1],p=[l];for(u++;u<o.length;){if(p.push(o[u]),o[u].startsWith(h)&&o[u].trim()===h){u++;break}u++}i.push(...p);continue}i.push(l),u++}return c(),n}#T(e,r){let n=e.split(/\n\s*\n/);if(n.length>=3&&n.length<=200&&n.every(c=>Buffer.byteLength(c)<5e3))return n.map((c,u)=>{let l=c.trim();return{title:l.split(`
|
|
222
|
+
`)[0].slice(0,80)||`Section ${u+1}`,content:l}}).filter(c=>c.content.length>0);let o=e.split(`
|
|
223
|
+
`);if(o.length<=r)return[{title:"Output",content:e}];let s=[],a=Math.max(r-2,1);for(let c=0;c<o.length;c+=a){let u=o.slice(c,c+r);if(u.length===0)break;let l=c+1,d=Math.min(c+u.length,o.length),f=u[0]?.trim().slice(0,80);s.push({title:f||`Lines ${l}-${d}`,content:u.join(`
|
|
224
|
+
`)})}return s}#b(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=JSON.stringify(e,null,2);if(Buffer.byteLength(i)<=o&&!(typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.values(e).some(c=>typeof c=="object"&&c!==null))){n.push({title:s,content:i,hasCode:!0});return}if(typeof e=="object"&&e!==null&&!Array.isArray(e)){let a=Object.entries(e);if(a.length>0){for(let[c,u]of a)this.#b(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#R(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#E(e){if(e.length===0)return null;let r=e[0];if(typeof r!="object"||r===null||Array.isArray(r))return null;let n=["id","name","title","path","slug","key","label"],o=r;for(let s of n)if(s in o&&(typeof o[s]=="string"||typeof o[s]=="number"))return s;return null}#P(e,r,n,o,s){let i=e?`${e} > `:"";if(!s)return r===n?`${i}[${r}]`:`${i}[${r}-${n}]`;let a=c=>String(c[s]);return o.length===1?`${i}${a(o[0])}`:o.length<=3?i+o.map(a).join(", "):`${i}${a(o[0])}\u2026${a(o[o.length-1])}`}#R(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#E(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#P(s,c,l,a,i);n.push({title:d,content:JSON.stringify(a,null,2),hasCode:!0})};for(let l=0;l<e.length;l++){a.push(e[l]);let d=JSON.stringify(a,null,2);Buffer.byteLength(d)>o&&a.length>1&&(a.pop(),u(l-1),a=[e[l]],c=l)}u(c+a.length-1)}#I(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}}});import{readFileSync as s0}from"node:fs";import{resolve as ao}from"node:path";import{homedir as i0}from"node:os";function a0(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function nz(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function oz(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function o0(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function sz(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=oz(o),a=o0(s);r=`^${i}(\\s${a})?$`}else r=`^${o0(t)}$`;return new RegExp(r,e?"i":"")}function iz(t,e=!1){let r="",n=0;for(;n<t.length;)t[n]==="*"&&t[n+1]==="*"?n+2<t.length&&t[n+2]==="/"?(r+="(.*/)?",n+=3):(r+=".*",n+=2):t[n]==="*"?(r+="[^/]*",n++):t[n]==="?"?(r+="[^/]",n++):(r+=t[n].replace(/[.+^${}()|[\]\\\/\-]/g,"\\$&"),n++);return new RegExp(`^${r}$`,e?"i":"")}function az(t,e,r=!1){for(let n of e){let o=a0(n);if(o&&sz(o,r).test(t))return n}return null}function cz(t){let e=[],r="",n=!1,o=!1,s=!1;for(let i=0;i<t.length;i++){let a=t[i],c=i>0?t[i-1]:"";a==="'"&&!o&&!s&&c!=="\\"?(n=!n,r+=a):a==='"'&&!n&&!s&&c!=="\\"?(o=!o,r+=a):a==="`"&&!n&&!o&&c!=="\\"?(s=!s,r+=a):!n&&!o&&!s?a===";"?(e.push(r.trim()),r=""):a==="|"&&t[i+1]==="|"||a==="&"&&t[i+1]==="&"?(e.push(r.trim()),r="",i++):a==="|"?(e.push(r.trim()),r=""):r+=a:r+=a}return r.trim()&&e.push(r.trim()),e.filter(i=>i.length>0)}function ym(t){let e;try{e=s0(t,"utf-8")}catch{return null}let r;try{r=JSON.parse(e)}catch{return null}let n=r?.permissions;if(!n||typeof n!="object")return null;let o=s=>Array.isArray(s)?s.filter(i=>typeof i=="string"&&a0(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function _m(t,e){let r=[];if(t){let s=ao(t,".claude","settings.local.json"),i=ym(s);i&&r.push(i);let a=ao(t,".claude","settings.json"),c=ym(a);c&&r.push(c)}let n=e??ao(i0(),".claude","settings.json"),o=ym(n);return o&&r.push(o),r}function c0(t,e,r){let n=[],o=a=>{let c;try{c=s0(a,"utf-8")}catch{return null}let u;try{u=JSON.parse(c)}catch{return null}let l=u?.permissions?.deny;if(!Array.isArray(l))return[];let d=[];for(let f of l){if(typeof f!="string")continue;let h=nz(f);h&&h.tool===t&&d.push(h.glob)}return d};if(e){let a=o(ao(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(ao(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??ao(i0(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function vm(t,e,r=process.platform==="win32"){let n=cz(t);for(let o of n)for(let s of e){let i=az(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function u0(t,e,r=process.platform==="win32"){let n=t.replace(/\\/g,"/");for(let o of e)for(let s of o)if(iz(s,r).test(n))return{denied:!0,matchedPattern:s};return{denied:!1}}function lz(t){let e=[],r=/subprocess\.(?:run|call|Popen|check_output|check_call)\(\s*\[([^\]]+)\]/g,n;for(;(n=r.exec(t))!==null;){let s=[...n[1].matchAll(/(['"])(.*?)\1/g)].map(i=>i[2]);s.length>0&&e.push(s.join(" "))}return e}function l0(t,e){let r=uz[e];if(!r&&e!=="python")return[];let n=[];if(r)for(let o of r){o.lastIndex=0;let s;for(;(s=o.exec(t))!==null;){let i=s[s.length-1];i&&n.push(i)}}return e==="python"&&n.push(...lz(t)),n}var uz,d0=$(()=>{"use strict";uz={python:[/os\.system\(\s*(['"])(.*?)\1\s*\)/g,/subprocess\.(?:run|call|Popen|check_output|check_call)\(\s*(['"])(.*?)\1/g],javascript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],typescript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],ruby:[/system\(\s*(['"])(.*?)\1/g,/`(.*?)`/g],go:[/exec\.Command\(\s*(['"`])(.*?)\1/g],php:[/shell_exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])system\(\s*(['"`])(.*?)\1/g,/passthru\(\s*(['"`])(.*?)\1/g,/proc_open\(\s*(['"`])(.*?)\1/g],rust:[/Command::new\(\s*(['"`])(.*?)\1/g]}});function xm(t){let{language:e,exitCode:r,stdout:n,stderr:o}=t,s=e==="shell"&&r===1&&n.trim().length>0;return{isError:!s,output:s?n:`Exit code: ${r}
|
|
225
|
+
|
|
226
|
+
stdout:
|
|
227
|
+
${n}
|
|
228
|
+
|
|
229
|
+
stderr:
|
|
230
|
+
${o}`}}var p0=$(()=>{"use strict"});var x0={};wt(x0,{extractSnippet:()=>Pm,positionsFromHighlight:()=>v0});import{createRequire as wm}from"node:module";import{createHash as dz}from"node:crypto";import{existsSync as h0,unlinkSync as pz,readdirSync as fz,readFileSync as mz,rmSync as hz}from"node:fs";import{join as oc,dirname as Ps,resolve as gz}from"node:path";import{fileURLToPath as km}from"node:url";import{homedir as g0,tmpdir as yz}from"node:os";function vz(t){try{let e=oc(g0(),".claude","context-mode","sessions");if(!h0(e))return;let r=fz(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=oc(e,n);try{t.index({path:o,source:"session-events"}),pz(o)}catch{}}}catch{}}function Is(){return co||(co=new nc),vz(co),co}function ee(t,e){let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return Je.calls[t]=(Je.calls[t]||0)+1,Je.bytesReturned[t]=(Je.bytesReturned[t]||0)+r,e}function jr(t){Je.bytesIndexed+=t}function Em(t,e){try{let r=_m(process.env.CLAUDE_PROJECT_DIR),n=vm(t,r);if(n.decision==="deny")return ee(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function _0(t,e,r){try{let n=l0(t,e);if(n.length===0)return null;let o=_m(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=vm(s,o);if(i.decision==="deny")return ee(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 xz(t,e){try{let r=c0("Read",process.env.CLAUDE_PROJECT_DIR),n=u0(t,r);if(n.denied)return ee(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function v0(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===Sz){for(e.push(r),n++;n<t.length&&t[n]!==wz;)r++,n++;n<t.length&&n++}else r++,n++;return e}function Pm(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of v0(n))o.push(u);if(o.length===0){let u=e.toLowerCase().split(/\s+/).filter(d=>d.length>2),l=t.toLowerCase();for(let d of u){let f=l.indexOf(d);for(;f!==-1;)o.push(f),f=l.indexOf(d,f+1)}}if(o.length===0)return t.slice(0,r)+`
|
|
231
|
+
\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(`
|
|
232
|
+
|
|
233
|
+
`)}function ic(t,e,r,n=5){let o=t.split(`
|
|
234
|
+
`).length,s=Buffer.byteLength(t),i=Is(),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(`
|
|
235
|
+
`)}let l=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`${c.length} sections matched "${e}" (${o} lines, ${(s/1024).toFixed(1)}KB):`,""];for(let d of c){let f=d.content.split(`
|
|
236
|
+
`)[0].slice(0,120);l.push(` - ${d.title}: ${f}`)}return u.length>0&&(l.push(""),l.push(`Searchable terms: ${u.join(", ")}`)),l.push(""),l.push("Use search(queries: [...]) to retrieve full content of any section."),l.join(`
|
|
237
|
+
`)}function Tz(){return $m||($m=wm(import.meta.url).resolve("turndown")),$m}function Ez(){return Sm||(Sm=wm(import.meta.url).resolve("turndown-plugin-gfm")),Sm}function Pz(t,e){let r=JSON.stringify(Tz()),n=JSON.stringify(Ez()),o=JSON.stringify(e);return`
|
|
238
|
+
const TurndownService = require(${r});
|
|
239
|
+
const { gfm } = require(${n});
|
|
240
|
+
const fs = require('fs');
|
|
241
|
+
const url = ${JSON.stringify(t)};
|
|
242
|
+
const outputPath = ${o};
|
|
243
|
+
|
|
244
|
+
function emit(ct, content) {
|
|
245
|
+
// Write content to file to bypass executor stdout truncation (100KB limit).
|
|
246
|
+
// Only the content-type marker goes to stdout.
|
|
247
|
+
fs.writeFileSync(outputPath, content);
|
|
248
|
+
console.log('__CM_CT__:' + ct);
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
async function main() {
|
|
252
|
+
const resp = await fetch(url);
|
|
253
|
+
if (!resp.ok) { console.error("HTTP " + resp.status); process.exit(1); }
|
|
254
|
+
const contentType = resp.headers.get('content-type') || '';
|
|
255
|
+
|
|
256
|
+
// --- JSON responses ---
|
|
257
|
+
if (contentType.includes('application/json') || contentType.includes('+json')) {
|
|
258
|
+
const text = await resp.text();
|
|
259
|
+
try {
|
|
260
|
+
const pretty = JSON.stringify(JSON.parse(text), null, 2);
|
|
261
|
+
emit('json', pretty);
|
|
262
|
+
} catch {
|
|
263
|
+
emit('text', text);
|
|
264
|
+
}
|
|
265
|
+
return;
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
// --- HTML responses (default for text/html, application/xhtml+xml) ---
|
|
269
|
+
if (contentType.includes('text/html') || contentType.includes('application/xhtml')) {
|
|
270
|
+
const html = await resp.text();
|
|
271
|
+
const td = new TurndownService({ headingStyle: 'atx', codeBlockStyle: 'fenced' });
|
|
272
|
+
td.use(gfm);
|
|
273
|
+
td.remove(['script', 'style', 'nav', 'header', 'footer', 'noscript']);
|
|
274
|
+
emit('html', td.turndown(html));
|
|
275
|
+
return;
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
// --- Everything else: plain text, CSV, XML, etc. ---
|
|
279
|
+
const text = await resp.text();
|
|
280
|
+
emit('text', text);
|
|
281
|
+
}
|
|
282
|
+
main();
|
|
283
|
+
`}async function Rz(){let t=r0();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=()=>{Rs.cleanupBackgrounded(),co&&co.cleanup()};process.on("exit",e),process.on("SIGINT",()=>{e(),process.exit(0)}),process.on("SIGTERM",()=>{e(),process.exit(0)});let r=new tc;await Yt.connect(r);try{let{detectPlatform:n,getAdapter:o}=await Promise.resolve().then(()=>(Hc(),hh)),s=n(),i=await o(s.platform);if(!i.capabilities.sessionStart){let a=gz(Ps(km(import.meta.url)),".."),c=process.env.CLAUDE_PROJECT_DIR??process.env.CODEX_HOME??process.cwd(),u=i.writeRoutingInstructions(c,a);u&&console.error(`Wrote routing instructions: ${u}`)}}catch{}console.error(`Context Mode MCP server v${y0} running on stdio`),console.error(`Detected runtimes:
|
|
284
|
+
${qs(Tm)}`),po()||(console.error(`
|
|
285
|
+
Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}var y0,Tm,_z,Yt,Rs,co,Je,bz,$z,Sz,wz,sc,vn,bm,kz,f0,m0,$m,Sm,b0=$(()=>{"use strict";Mb();qb();pm();hm();n0();d0();Fs();p0();y0="1.0.8";process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
|
|
286
|
+
`)});process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
|
|
287
|
+
`)});Tm=$n(),_z=Us(Tm),Yt=new Qa({name:"context-mode",version:y0}),Rs=new Es({runtimes:Tm,projectRoot:process.env.CLAUDE_PROJECT_DIR}),co=null;Je={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,sessionStart:Date.now()};bz=_z.join(", "),$z=po()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",Sz="",wz="";Yt.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.${$z} Available: ${bz}.
|
|
288
|
+
|
|
289
|
+
PREFER THIS OVER BASH for: API calls (gh, curl, aws), test runners (npm test, pytest), git queries (git log, git diff), data processing, and ANY CLI command that may produce large output. Bash should only be used for file mutations, git writes, and navigation.`,inputSchema:K.object({language:K.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:K.string().describe("Source code to execute. Use console.log (JS/TS), print (Python/Ruby/Perl/R), echo (Shell), echo (PHP), fmt.Println (Go), or IO.puts (Elixir) to output a summary to context."),timeout:K.number().optional().default(3e4).describe("Max execution time in ms"),background:K.boolean().optional().default(!1).describe("Keep process running after timeout (for servers/daemons). Returns partial output without killing the process. IMPORTANT: Do NOT add setTimeout/self-close timers in background scripts \u2014 the process must stay alive until the timeout detaches it. For server+fetch patterns, prefer putting both server and fetch in ONE ctx_execute call instead of using background."),intent:K.string().optional().describe(`What you're looking for in the output. When provided and output is large (>5KB), indexes output into knowledge base and returns section titles + previews \u2014 not full content. Use search(queries: [...]) to retrieve specific sections. Example: 'failing tests', 'HTTP 500 errors'.
|
|
290
|
+
|
|
291
|
+
TIP: Use specific technical terms, not just concepts. Check 'Searchable terms' in the response for available vocabulary.`)})},async({language:t,code:e,timeout:r,background:n,intent:o})=>{if(t==="shell"){let s=Em(e,"execute");if(s)return s}else{let s=_0(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
|
|
292
|
+
let __cm_net=0;
|
|
293
|
+
// Report network bytes on process exit \u2014 works with both promise and callback patterns.
|
|
294
|
+
// process.on('exit') fires after all I/O completes, unlike .finally() which fires
|
|
295
|
+
// when __cm_main() resolves (immediately for callback-based http.get without await).
|
|
296
|
+
process.on('exit',()=>{if(__cm_net>0)try{process.stderr.write('__CM_NET__:'+__cm_net+'\\n')}catch{}});
|
|
297
|
+
;(function(__cm_req){
|
|
298
|
+
// Intercept globalThis.fetch
|
|
299
|
+
const __cm_f=globalThis.fetch;
|
|
300
|
+
globalThis.fetch=async(...a)=>{const r=await __cm_f(...a);
|
|
301
|
+
try{const cl=r.clone();const b=await cl.arrayBuffer();__cm_net+=b.byteLength}catch{}
|
|
302
|
+
return r};
|
|
303
|
+
// Shadow CJS require with http/https network tracking.
|
|
304
|
+
const __cm_hc=new Map();
|
|
305
|
+
const __cm_hm=new Set(['http','https','node:http','node:https']);
|
|
306
|
+
function __cm_wf(m,origFn){return function(...a){
|
|
307
|
+
const li=a.length-1;
|
|
308
|
+
if(li>=0&&typeof a[li]==='function'){const oc=a[li];a[li]=function(res){
|
|
309
|
+
res.on('data',function(c){__cm_net+=c.length});oc(res);};}
|
|
310
|
+
const req=origFn.apply(m,a);
|
|
311
|
+
const oOn=req.on.bind(req);
|
|
312
|
+
req.on=function(ev,cb,...r){
|
|
313
|
+
if(ev==='response'){return oOn(ev,function(res){
|
|
314
|
+
res.on('data',function(c){__cm_net+=c.length});cb(res);
|
|
315
|
+
},...r);}
|
|
316
|
+
return oOn(ev,cb,...r);
|
|
317
|
+
};
|
|
318
|
+
return req;
|
|
319
|
+
}}
|
|
320
|
+
var require=__cm_req?function(id){
|
|
321
|
+
const m=__cm_req(id);
|
|
322
|
+
if(!__cm_hm.has(id))return m;
|
|
323
|
+
const k=id.replace('node:','');
|
|
324
|
+
if(__cm_hc.has(k))return __cm_hc.get(k);
|
|
325
|
+
const w=Object.create(m);
|
|
326
|
+
if(typeof m.get==='function')w.get=__cm_wf(m,m.get);
|
|
327
|
+
if(typeof m.request==='function')w.request=__cm_wf(m,m.request);
|
|
328
|
+
__cm_hc.set(k,w);return w;
|
|
329
|
+
}:__cm_req;
|
|
330
|
+
if(__cm_req){if(__cm_req.resolve)require.resolve=__cm_req.resolve;
|
|
331
|
+
if(__cm_req.cache)require.cache=__cm_req.cache;}
|
|
332
|
+
async function __cm_main(){
|
|
333
|
+
${e}
|
|
334
|
+
}
|
|
335
|
+
__cm_main().catch(e=>{console.error(e);process.exitCode=1});${n?`
|
|
336
|
+
setInterval(()=>{},2147483647);`:""}
|
|
337
|
+
})(typeof require!=='undefined'?require:null);`);let i=await Rs.execute({language:t,code:s,timeout:r,background:n}),a=i.stderr?.match(/__CM_NET__:(\d+)/);if(a&&(Je.bytesSandboxed+=parseInt(a[1]),i.stderr=i.stderr.replace(/\n?__CM_NET__:\d+\n?/g,"")),i.timedOut){let u=i.stdout?.trim();return i.backgrounded&&u?ee("ctx_execute",{content:[{type:"text",text:`${u}
|
|
338
|
+
|
|
339
|
+
_(process backgrounded after ${r}ms \u2014 still running)_`}]}):u?ee("ctx_execute",{content:[{type:"text",text:`${u}
|
|
340
|
+
|
|
341
|
+
_(timed out after ${r}ms \u2014 partial output shown above)_`}]}):ee("ctx_execute",{content:[{type:"text",text:`Execution timed out after ${r}ms
|
|
342
|
+
|
|
343
|
+
stderr:
|
|
344
|
+
${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:u,output:l}=xm({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(l)>sc?(jr(Buffer.byteLength(l)),ee("ctx_execute",{content:[{type:"text",text:ic(l,o,u?`execute:${t}:error`:`execute:${t}`)}],isError:u})):ee("ctx_execute",{content:[{type:"text",text:l}],isError:u})}let c=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(c)>sc?(jr(Buffer.byteLength(c)),ee("ctx_execute",{content:[{type:"text",text:ic(c,o,`execute:${t}`)}]})):ee("ctx_execute",{content:[{type:"text",text:c}]})}catch(s){let i=s instanceof Error?s.message:String(s);return ee("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});sc=5e3;Yt.registerTool("ctx_execute_file",{title:"Execute File Processing",description:`Read a file and process it without loading contents into context. The file is read into a FILE_CONTENT variable inside the sandbox. Only your printed summary enters context.
|
|
345
|
+
|
|
346
|
+
PREFER THIS OVER Read/cat for: log files, data files (CSV, JSON, XML), large source files for analysis, and any file where you need to extract specific information rather than read the entire content.`,inputSchema:K.object({path:K.string().describe("Absolute file path or relative to project root"),language:K.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:K.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:K.number().optional().default(3e4).describe("Max execution time in ms"),intent:K.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=xz(t,"execute_file");if(s)return s;if(e==="shell"){let i=Em(r,"execute_file");if(i)return i}else{let i=_0(r,e,"execute_file");if(i)return i}try{let i=await Rs.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return ee("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}=xm({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>sc?(jr(Buffer.byteLength(u)),ee("ctx_execute_file",{content:[{type:"text",text:ic(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):ee("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)>sc?(jr(Buffer.byteLength(a)),ee("ctx_execute_file",{content:[{type:"text",text:ic(a,o,`file:${t}`)}]})):ee("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return ee("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});Yt.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.
|
|
347
|
+
|
|
348
|
+
WHEN TO USE:
|
|
349
|
+
- Documentation from Context7, Skills, or MCP tools (API docs, framework guides, code examples)
|
|
350
|
+
- API references (endpoint details, parameter specs, response schemas)
|
|
351
|
+
- MCP tools/list output (exact tool signatures and descriptions)
|
|
352
|
+
- Skill prompts and instructions that are too large for context
|
|
353
|
+
- README files, migration guides, changelog entries
|
|
354
|
+
- Any content with code examples you may need to reference precisely
|
|
355
|
+
|
|
356
|
+
After indexing, use 'search' to retrieve specific sections on-demand.
|
|
357
|
+
Do NOT use for: log files, test output, CSV, build output \u2014 use 'execute_file' for those.`,inputSchema:K.object({content:K.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:K.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:K.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 ee("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)jr(Buffer.byteLength(t));else if(e)try{let s=await import("fs");jr(s.readFileSync(e).byteLength)}catch{}let o=Is().index({content:t,path:e,source:r});return ee("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
|
|
358
|
+
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 ee("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});vn=0,bm=Date.now(),kz=6e4,f0=3,m0=8;Yt.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Pass ALL search questions as queries array in ONE call.
|
|
359
|
+
|
|
360
|
+
TIPS: 2-4 specific terms per query. Use 'source' to scope results.`,inputSchema:K.object({queries:K.array(K.string()).optional().describe("Array of search queries. Batch ALL questions in one call."),limit:K.number().optional().default(3).describe("Results per query (default: 3)"),source:K.string().optional().describe("Filter to a specific indexed source (partial match).")})},async t=>{try{let e=Is(),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 ee("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:o=3,source:s}=t,i=Date.now();if(i-bm>kz&&(vn=0,bm=i),vn++,vn>m0)return ee("ctx_search",{content:[{type:"text",text:`BLOCKED: ${vn} search calls in ${Math.round((i-bm)/1e3)}s. You're flooding context. STOP making individual search calls. Use batch_execute(commands, queries) for your next research step.`}],isError:!0});let a=vn>f0?1:Math.min(o,2),c=40*1024,u=0,l=[];for(let f of n){if(u>c){l.push(`## ${f}
|
|
361
|
+
(output cap reached)
|
|
362
|
+
`);continue}let h=e.searchWithFallback(f,a,s);if(h.length===0){l.push(`## ${f}
|
|
363
|
+
No results found.`);continue}let p=h.map((m,g)=>{let y=`--- [${m.source}] ---`,v=`### ${m.title}`,b=Pm(m.content,f,1500,m.highlighted);return`${y}
|
|
364
|
+
${v}
|
|
365
|
+
|
|
366
|
+
${b}`}).join(`
|
|
367
|
+
|
|
368
|
+
`);l.push(`## ${f}
|
|
369
|
+
|
|
370
|
+
${p}`),u+=p.length}let d=l.join(`
|
|
371
|
+
|
|
372
|
+
---
|
|
373
|
+
|
|
374
|
+
`);if(vn>=f0&&(d+=`
|
|
375
|
+
|
|
376
|
+
\u26A0 search call #${vn}/${m0} in this window. Results limited to ${a}/query. Batch queries: search(queries: ["q1","q2","q3"]) or use batch_execute.`),d.trim().length===0){let f=e.listSources(),h=f.length>0?`
|
|
377
|
+
Indexed sources: ${f.map(p=>`"${p.label}" (${p.chunkCount} sections)`).join(", ")}`:"";return ee("ctx_search",{content:[{type:"text",text:`No results found.${h}`}]})}return ee("ctx_search",{content:[{type:"text",text:d}]})}catch(e){let r=e instanceof Error?e.message:String(e);return ee("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});$m=null,Sm=null;Yt.registerTool("ctx_fetch_and_index",{title:"Fetch & Index URL",description:`Fetches URL content, converts HTML to markdown, indexes into searchable knowledge base, and returns a ~3KB preview. Full content stays in sandbox \u2014 use search() for deeper lookups.
|
|
378
|
+
|
|
379
|
+
Better than WebFetch: preview is immediate, full content is searchable, raw HTML never enters context.
|
|
380
|
+
|
|
381
|
+
Content-type aware: HTML is converted to markdown, JSON is chunked by key paths, plain text is indexed directly.`,inputSchema:K.object({url:K.string().describe("The URL to fetch and index"),source:K.string().optional().describe("Label for the indexed content (e.g., 'React useEffect docs', 'Supabase Auth API')")})},async({url:t,source:e})=>{let r=oc(yz(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let n=Pz(t,r),o=await Rs.execute({language:"javascript",code:n,timeout:3e4});if(o.exitCode!==0)return ee("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${o.stderr||o.stdout}`}],isError:!0});let s=Is(),i=(o.stdout||"").trim(),a;try{a=mz(r,"utf-8").trim()}catch{return ee("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(a.length===0)return ee("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});jr(Buffer.byteLength(a));let c;i==="__CM_CT__:json"?c=s.indexJSON(a,e??t):i==="__CM_CT__:text"?c=s.indexPlainText(a,e??t):c=s.index({content:a,source:e??t});let u=3072,l=a.length>u?a.slice(0,u)+`
|
|
382
|
+
|
|
383
|
+
\u2026[truncated \u2014 use search() for full content]`:a,d=(Buffer.byteLength(a)/1024).toFixed(1),f=[`Fetched and indexed **${c.totalChunks} sections** (${d}KB) from: ${c.label}`,`Full content indexed in sandbox \u2014 use search(queries: [...], source: "${c.label}") for specific lookups.`,"","---","",l].join(`
|
|
384
|
+
`);return ee("ctx_fetch_and_index",{content:[{type:"text",text:f}]})}catch(n){let o=n instanceof Error?n.message:String(n);return ee("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${o}`}],isError:!0})}finally{try{hz(r)}catch{}}});Yt.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.
|
|
385
|
+
|
|
386
|
+
THIS IS THE PRIMARY TOOL. Use this instead of multiple execute() calls.
|
|
387
|
+
|
|
388
|
+
One batch_execute call replaces 30+ execute calls + 10+ search calls.
|
|
389
|
+
Provide all commands to run and all queries to search \u2014 everything happens in one round trip.`,inputSchema:K.object({commands:K.array(K.object({label:K.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:K.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:K.array(K.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:K.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=Em(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1;for(let S of t){let T=Date.now()-o,J=r-T;if(J<=0){n.push(`# ${S.label}
|
|
390
|
+
|
|
391
|
+
(skipped \u2014 batch timeout exceeded)
|
|
392
|
+
`),s=!0;continue}let D=await Rs.execute({language:"shell",code:`${S.command} 2>&1`,timeout:J}),X=D.stdout||"(no output)";if(n.push(`# ${S.label}
|
|
393
|
+
|
|
394
|
+
${X}
|
|
395
|
+
`),D.timedOut){s=!0;let Ye=t.indexOf(S);for(let ae=Ye+1;ae<t.length;ae++)n.push(`# ${t[ae].label}
|
|
396
|
+
|
|
397
|
+
(skipped \u2014 batch timeout exceeded)
|
|
398
|
+
`);break}}let i=n.join(`
|
|
399
|
+
`),a=Buffer.byteLength(i),c=i.split(`
|
|
400
|
+
`).length;if(s&&n.length===0)return ee("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});jr(a);let u=Is(),l=`batch:${t.map(S=>S.label).join(",").slice(0,80)}`,d=u.index({content:i,source:l}),f=u.getChunksBySource(d.sourceId),h=["## Indexed Sections",""],p=[];for(let S of f){let T=Buffer.byteLength(S.content);h.push(`- ${S.title} (${(T/1024).toFixed(1)}KB)`),p.push(S.title)}let m=80*1024,g=[],y=0;for(let S of e){if(y>m){g.push(`## ${S}
|
|
401
|
+
(output cap reached \u2014 use search(queries: ["${S}"]) for details)
|
|
402
|
+
`);continue}let T=u.searchWithFallback(S,3,l),J=!1;if(T.length===0&&(T=u.searchWithFallback(S,3),J=T.length>0),g.push(`## ${S}`),J&&g.push("> **Note:** No results in current batch output. Showing results from previously indexed content."),g.push(""),T.length>0)for(let D of T){let X=Pm(D.content,S,3e3,D.highlighted),Ye=J?` _(source: ${D.source})_`:"";g.push(`### ${D.title}${Ye}`),g.push(X),g.push(""),y+=X.length+D.title.length}else g.push("No matching sections found."),g.push("")}let v=u.getDistinctiveTerms?u.getDistinctiveTerms(d.sourceId):[],b=[`Executed ${t.length} commands (${c} lines, ${(a/1024).toFixed(1)}KB). Indexed ${d.totalChunks} sections. Searched ${e.length} queries.`,"",...h,"",...g,v.length>0?`
|
|
403
|
+
Searchable terms for follow-up: ${v.join(", ")}`:""].join(`
|
|
404
|
+
`);return ee("ctx_batch_execute",{content:[{type:"text",text:b}]})}catch(n){let o=n instanceof Error?n.message:String(n);return ee("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});Yt.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:K.object({})},async()=>{let t=Object.values(Je.bytesReturned).reduce((d,f)=>d+f,0),e=Object.values(Je.calls).reduce((d,f)=>d+f,0),n=((Date.now()-Je.sessionStart)/6e4).toFixed(1),o=Je.bytesIndexed+Je.bytesSandboxed,s=o+t,i=s/Math.max(t,1),a=s>0?((1-t/s)*100).toFixed(0):"0",c=d=>d>=1024*1024?`${(d/1024/1024).toFixed(1)}MB`:`${(d/1024).toFixed(1)}KB`,u=[`## context-mode \u2014 Session Report (${n} min)`];if(u.push("","### Context Window Protection",""),e===0)u.push("No context-mode tool calls yet. Use `batch_execute`, `execute`, or `fetch_and_index` to keep raw output out of your context window.");else{u.push("| Metric | Value |","|--------|------:|",`| Total data processed | **${c(s)}** |`,`| Kept in sandbox (never entered context) | **${c(o)}** |`,`| Entered context | ${c(t)} |`,`| Estimated tokens saved | ~${Math.round(o/4).toLocaleString()} |`,`| **Context savings** | **${i.toFixed(1)}x (${a}% reduction)** |`);let d=new Set([...Object.keys(Je.calls),...Object.keys(Je.bytesReturned)]);if(d.size>0){u.push("","| Tool | Calls | Context | Tokens |","|------|------:|--------:|-------:|");for(let f of Array.from(d).sort()){let h=Je.calls[f]||0,p=Je.bytesReturned[f]||0,m=Math.round(p/4);u.push(`| ${f} | ${h} | ${c(p)} | ~${m.toLocaleString()} |`)}u.push(`| **Total** | **${e}** | **${c(t)}** | **~${Math.round(t/4).toLocaleString()}** |`)}o>0&&u.push("",`Without context-mode, **${c(s)}** of raw output would flood your context window. Instead, **${a}%** stayed in sandbox.`)}try{let d=process.env.CLAUDE_PROJECT_DIR||process.cwd(),f=dz("sha256").update(d).digest("hex").slice(0,16),h=oc(g0(),".claude","context-mode","sessions",`${f}.db`);if(h0(h)){let m=wm(import.meta.url)("better-sqlite3"),g=new m(h,{readonly:!0}),y=g.prepare("SELECT COUNT(*) as cnt FROM session_events").get(),v=g.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all(),b=g.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get(),S=g.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get();if(y.cnt>0){let T=b?.compact_count??0,J=g.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),D=new Map;for(let ae of J){D.has(ae.category)||D.set(ae.category,new Set);let Xe=D.get(ae.category);if(Xe.size<5){let Ce=ae.data;ae.category==="file"?Ce=ae.data.split("/").pop()||ae.data:ae.category==="prompt"&&(Ce=Ce.length>50?Ce.slice(0,47)+"...":Ce),Ce.length>40&&(Ce=Ce.slice(0,37)+"..."),Xe.add(Ce)}}let X={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"},Ye={file:"Restored after compact \u2014 no need to re-read",rule:"Your project instructions survive context resets",prompt:"Continues exactly where you left off",decision:"Applied automatically \u2014 won't ask again",task:"Picks up from where it stopped",error:"Tracked and monitored across compacts",git:"Branch, commit, and repo state preserved",env:"Runtime config carried forward",mcp:"Tool usage patterns remembered",subagent:"Delegation history preserved",skill:"Skill invocations tracked"};u.push("","### Session Continuity","","| What's preserved | Count | I remember... | Why it matters |","|------------------|------:|---------------|----------------|");for(let ae of v){let Xe=X[ae.category]||ae.category,Ce=D.get(ae.category),jt=Ce?Array.from(Ce).join(", "):"",me=Ye[ae.category]||"Survives context resets";u.push(`| ${Xe} | ${ae.cnt} | ${jt} | ${me} |`)}u.push(`| **Total** | **${y.cnt}** | | **Zero knowledge lost on compact** |`),u.push(""),T>0?u.push(`Context has been compacted **${T} time(s)** \u2014 session knowledge was preserved each time.`):u.push("When your context compacts, all of this will restore Claude's awareness \u2014 no starting from scratch."),S&&!S.consumed&&u.push(`Resume snapshot ready (${S.event_count} events) for the next compaction.`),u.push(""),u.push("> **Note:** Previous session data is loaded when you start a new session. Without `--continue`, old session history is cleaned up to keep the database lean.")}g.close()}}catch{}u.push("","---","_Display this entire report as-is in your response. Do NOT summarize, collapse, or paraphrase any section._");let l=u.join(`
|
|
405
|
+
`);return ee("ctx_stats",{content:[{type:"text",text:l}]})});Yt.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. 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 markdown checklist.",inputSchema:K.object({})},async()=>{let r=["## ctx-doctor","","Run this command using your shell execution tool:","","```",`node "${Ps(Ps(km(import.meta.url)))}/build/cli.js" doctor`,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for PASS, `[ ]` for FAIL, `[-]` for WARN","- Example format:"," ```"," ## context-mode doctor"," - [x] Runtimes: 6/10 (javascript, typescript, python, shell, ruby, perl)"," - [x] Performance: FAST (Bun)"," - [x] Server test: PASS"," - [x] Hooks: PASS"," - [x] FTS5: PASS"," - [x] npm: v0.9.23"," ```"].join(`
|
|
406
|
+
`);return ee("ctx_doctor",{content:[{type:"text",text:r}]})});Yt.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:K.object({})},async()=>{let r=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",`node "${Ps(Ps(km(import.meta.url)))}/build/cli.js" upgrade`,"```","","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(`
|
|
407
|
+
`);return ee("ctx_upgrade",{content:[{type:"text",text:r}]})});Rz().catch(t=>{console.error("Fatal:",t),process.exit(1)})});import{stdout as L0,stdin as q0}from"node:process";import*as lr from"node:readline";var uo=bn(fc(),1);import{ReadStream as Cm}from"node:tty";var Jz=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");var Yz=new RegExp("\\p{M}+","gu");var U0="\x07",F0="[",H0="]";var V0=`${H0}8;;`,Xz=new RegExp(`(?:\\${F0}(?<code>\\d+)m|\\${V0}(?<uri>.*)${U0})`,"y");var B0=["up","down","left","right","space","enter","cancel"],dr={actions:new Set(B0),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["","cancel"],["escape","cancel"]]),messages:{cancel:"Canceled",error:"Something went wrong"},withGuide:!0};function zm(t,e){if(typeof t=="string")return dr.aliases.get(t)===e;for(let r of t)if(r!==void 0&&zm(r,e))return!0;return!1}var G0=globalThis.process.platform.startsWith("win");function Nm({input:t=q0,output:e=L0,overwrite:r=!0,hideCursor:n=!0}={}){let o=lr.createInterface({input:t,output:e,prompt:"",tabSize:1});lr.emitKeypressEvents(t,o),t instanceof Cm&&t.isTTY&&t.setRawMode(!0);let s=(i,{name:a,sequence:c})=>{let u=String(i);if(zm([u,a,c],"cancel")){n&&e.write(uo.cursor.show),process.exit(0);return}if(!r)return;lr.moveCursor(e,a==="return"?0:-1,a==="return"?-1:0,()=>{lr.clearLine(e,1,()=>{t.once("keypress",s)})})};return n&&e.write(uo.cursor.hide),t.once("keypress",s),()=>{t.off("keypress",s),n&&e.write(uo.cursor.show),t instanceof Cm&&t.isTTY&&!G0&&t.setRawMode(!1),o.terminal=!1,o.close()}}var mc=t=>"columns"in t&&typeof t.columns=="number"?t.columns:80;var _e=bn(dc(),1);import pt from"node:process";var lo=bn(fc(),1);function W0(){return pt.platform!=="win32"?pt.env.TERM!=="linux":!!pt.env.CI||!!pt.env.WT_SESSION||!!pt.env.TERMINUS_SUBLIME||pt.env.ConEmuTask==="{cmd::Cmder}"||pt.env.TERM_PROGRAM==="Terminus-Sublime"||pt.env.TERM_PROGRAM==="vscode"||pt.env.TERM==="xterm-256color"||pt.env.TERM==="alacritty"||pt.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var _c=W0(),J0=()=>process.env.CI==="true";var ue=(t,e)=>_c?t:e,f2=ue("\u25C6","*"),Y0=ue("\u25A0","x"),X0=ue("\u25B2","x"),vc=ue("\u25C7","o"),Q0=ue("\u250C","T"),pr=ue("\u2502","|"),e$=ue("\u2514","\u2014"),m2=ue("\u2510","T"),h2=ue("\u2518","\u2014"),g2=ue("\u25CF",">"),y2=ue("\u25CB"," "),_2=ue("\u25FB","[\u2022]"),v2=ue("\u25FC","[+]"),x2=ue("\u25FB","[ ]"),b2=ue("\u25AA","\u2022"),Am=ue("\u2500","-"),t$=ue("\u256E","+"),r$=ue("\u251C","+"),n$=ue("\u256F","+"),o$=ue("\u2570","+"),$2=ue("\u256D","+"),s$=ue("\u25CF","\u2022"),i$=ue("\u25C6","*"),a$=ue("\u25B2","!"),c$=ue("\u25A0","x");var u$=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,l$=t=>t===12288||t>=65281&&t<=65376||t>=65504&&t<=65510,d$=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,hc=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,As=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,js=/\t{1,1000}/y,gc=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"),Ms=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,p$=new RegExp("\\p{M}+","gu"),f$={limit:1/0,ellipsis:""},Zm=(t,e={},r={})=>{let n=e.limit??1/0,o=e.ellipsis??"",s=e?.ellipsisWidth??(o?Zm(o,f$,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,f=r.regularWidth??1,h=r.wideWidth??2,p=0,m=0,g=t.length,y=0,v=!1,b=g,S=Math.max(0,n-s),T=0,J=0,D=0,X=0;e:for(;;){if(J>T||m>=g&&m>p){let Ye=t.slice(T,J)||t.slice(p,m);y=0;for(let ae of Ye.replaceAll(p$,"")){let Xe=ae.codePointAt(0)||0;if(l$(Xe)?X=d:d$(Xe)?X=h:u!==f&&u$(Xe)?X=u:X=f,D+X>S&&(b=Math.min(b,Math.max(T,p)+y)),D+X>n){v=!0;break e}y+=ae.length,D+=X}T=J=0}if(m>=g)break;if(Ms.lastIndex=m,Ms.test(t)){if(y=Ms.lastIndex-m,X=y*f,D+X>S&&(b=Math.min(b,m+Math.floor((S-D)/f))),D+X>n){v=!0;break}D+=X,T=p,J=m,m=p=Ms.lastIndex;continue}if(hc.lastIndex=m,hc.test(t)){if(D+i>S&&(b=Math.min(b,m)),D+i>n){v=!0;break}D+=i,T=p,J=m,m=p=hc.lastIndex;continue}if(As.lastIndex=m,As.test(t)){if(y=As.lastIndex-m,X=y*a,D+X>S&&(b=Math.min(b,m+Math.floor((S-D)/a))),D+X>n){v=!0;break}D+=X,T=p,J=m,m=p=As.lastIndex;continue}if(js.lastIndex=m,js.test(t)){if(y=js.lastIndex-m,X=y*c,D+X>S&&(b=Math.min(b,m+Math.floor((S-D)/c))),D+X>n){v=!0;break}D+=X,T=p,J=m,m=p=js.lastIndex;continue}if(gc.lastIndex=m,gc.test(t)){if(D+l>S&&(b=Math.min(b,m)),D+l>n){v=!0;break}D+=l,T=p,J=m,m=p=gc.lastIndex;continue}m+=1}return{width:v?S:D,index:v?b:g,truncated:v,ellipsed:v&&n>=s}},m$={limit:1/0,ellipsis:"",ellipsisWidth:0},Mt=(t,e={})=>Zm(t,m$,e).width,Zs="\x1B",Lm="\x9B",h$=39,xc="\x07",qm="[",g$="]",Um="m",bc=`${g$}8;;`,jm=new RegExp(`(?:\\${qm}(?<code>\\d+)m|\\${bc}(?<uri>.*)${xc})`,"y"),y$=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},Mm=t=>`${Zs}${qm}${t}${Um}`,Dm=t=>`${Zs}${bc}${t}${xc}`,_$=t=>t.map(e=>Mt(e)),yc=(t,e,r)=>{let n=e[Symbol.iterator](),o=!1,s=!1,i=t.at(-1),a=i===void 0?0:Mt(i),c=n.next(),u=n.next(),l=0;for(;!c.done;){let d=c.value,f=Mt(d);a+f<=r?t[t.length-1]+=d:(t.push(d),a=0),(d===Zs||d===Lm)&&(o=!0,s=e.startsWith(bc,l+1)),o?s?d===xc&&(o=!1,s=!1):d===Um&&(o=!1):(a+=f,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>0&&t.length>1&&(t[t.length-2]+=t.pop())},v$=t=>{let e=t.split(" "),r=e.length;for(;r>0&&!(Mt(e[r-1])>0);)r--;return r===e.length?t:e.slice(0,r).join(" ")+e.slice(r).join("")},x$=(t,e,r={})=>{if(r.trim!==!1&&t.trim()==="")return"";let n="",o,s,i=t.split(" "),a=_$(i),c=[""];for(let[p,m]of i.entries()){r.trim!==!1&&(c[c.length-1]=(c.at(-1)??"").trimStart());let g=Mt(c.at(-1)??"");if(p!==0&&(g>=e&&(r.wordWrap===!1||r.trim===!1)&&(c.push(""),g=0),(g>0||r.trim===!1)&&(c[c.length-1]+=" ",g++)),r.hard&&a[p]>e){let y=e-g,v=1+Math.floor((a[p]-y-1)/e);Math.floor((a[p]-1)/e)<v&&c.push(""),yc(c,m,e);continue}if(g+a[p]>e&&g>0&&a[p]>0){if(r.wordWrap===!1&&g<e){yc(c,m,e);continue}c.push("")}if(g+a[p]>e&&r.wordWrap===!1){yc(c,m,e);continue}c[c.length-1]+=m}r.trim!==!1&&(c=c.map(p=>v$(p)));let u=c.join(`
|
|
408
|
+
`),l=u[Symbol.iterator](),d=l.next(),f=l.next(),h=0;for(;!d.done;){let p=d.value,m=f.value;if(n+=p,p===Zs||p===Lm){jm.lastIndex=h+1;let y=jm.exec(u)?.groups;if(y?.code!==void 0){let v=Number.parseFloat(y.code);o=v===h$?void 0:v}else y?.uri!==void 0&&(s=y.uri.length===0?void 0:y.uri)}let g=o?y$(o):void 0;m===`
|
|
409
|
+
`?(s&&(n+=Dm("")),o&&g&&(n+=Mm(g))):p===`
|
|
410
|
+
`&&(o&&g&&(n+=Mm(o)),s&&(n+=Dm(s))),h+=p.length,d=f,f=l.next()}return n};function Ds(t,e,r){return String(t).normalize().replaceAll(`\r
|
|
411
|
+
`,`
|
|
412
|
+
`).split(`
|
|
413
|
+
`).map(n=>x$(n,e,r)).join(`
|
|
414
|
+
`)}var C={message:(t=[],{symbol:e=_e.default.gray(pr),secondarySymbol:r=_e.default.gray(pr),output:n=process.stdout,spacing:o=1,withGuide:s}={})=>{let i=[],a=s??dr.withGuide,c=a?r:"",u=a?`${e} `:"",l=a?`${r} `:"";for(let f=0;f<o;f++)i.push(c);let d=Array.isArray(t)?t:t.split(`
|
|
415
|
+
`);if(d.length>0){let[f,...h]=d;f.length>0?i.push(`${u}${f}`):i.push(a?e:"");for(let p of h)p.length>0?i.push(`${l}${p}`):i.push(a?r:"")}n.write(`${i.join(`
|
|
416
|
+
`)}
|
|
417
|
+
`)},info:(t,e)=>{C.message(t,{...e,symbol:_e.default.blue(s$)})},success:(t,e)=>{C.message(t,{...e,symbol:_e.default.green(i$)})},step:(t,e)=>{C.message(t,{...e,symbol:_e.default.green(vc)})},warn:(t,e)=>{C.message(t,{...e,symbol:_e.default.yellow(a$)})},warning:(t,e)=>{C.warn(t,e)},error:(t,e)=>{C.message(t,{...e,symbol:_e.default.red(c$)})}};var $c=(t="",e)=>{(e?.output??process.stdout).write(`${_e.default.gray(Q0)} ${t}
|
|
418
|
+
`)},Ls=(t="",e)=>{(e?.output??process.stdout).write(`${_e.default.gray(pr)}
|
|
419
|
+
${_e.default.gray(e$)} ${t}
|
|
420
|
+
|
|
421
|
+
`)};var b$=t=>_e.default.dim(t),$$=(t,e,r)=>{let n={hard:!0,trim:!1},o=Ds(t,e,n).split(`
|
|
422
|
+
`),s=o.reduce((c,u)=>Math.max(Mt(u),c),0),i=o.map(r).reduce((c,u)=>Math.max(Mt(u),c),0),a=e-(i-s);return Ds(t,a,n)},Sc=(t="",e="",r)=>{let n=r?.output??pt.stdout,o=r?.withGuide??dr.withGuide,s=r?.format??b$,i=["",...$$(t,mc(n)-6,s).split(`
|
|
423
|
+
`).map(s),""],a=Mt(e),c=Math.max(i.reduce((f,h)=>{let p=Mt(h);return p>f?p:f},0),a)+2,u=i.map(f=>`${_e.default.gray(pr)} ${f}${" ".repeat(c-Mt(f))}${_e.default.gray(pr)}`).join(`
|
|
424
|
+
`),l=o?`${_e.default.gray(pr)}
|
|
425
|
+
`:"",d=o?r$:o$;n.write(`${l}${_e.default.green(vc)} ${_e.default.reset(e)} ${_e.default.gray(Am.repeat(Math.max(c-a-1,1))+t$)}
|
|
426
|
+
${u}
|
|
427
|
+
${_e.default.gray(d+Am.repeat(c+2)+n$)}
|
|
428
|
+
`)};var S$=_e.default.magenta,wc=({indicator:t="dots",onCancel:e,output:r=process.stdout,cancelMessage:n,errorMessage:o,frames:s=_c?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],delay:i=_c?80:120,signal:a,...c}={})=>{let u=J0(),l,d,f=!1,h=!1,p="",m,g=performance.now(),y=mc(r),v=c?.styleFrame??S$,b=me=>{let dt=me>1?o??dr.messages.error:n??dr.messages.cancel;h=me===1,f&&(jt(dt,me),h&&typeof e=="function"&&e())},S=()=>b(2),T=()=>b(1),J=()=>{process.on("uncaughtExceptionMonitor",S),process.on("unhandledRejection",S),process.on("SIGINT",T),process.on("SIGTERM",T),process.on("exit",b),a&&a.addEventListener("abort",T)},D=()=>{process.removeListener("uncaughtExceptionMonitor",S),process.removeListener("unhandledRejection",S),process.removeListener("SIGINT",T),process.removeListener("SIGTERM",T),process.removeListener("exit",b),a&&a.removeEventListener("abort",T)},X=()=>{if(m===void 0)return;u&&r.write(`
|
|
429
|
+
`);let me=Ds(m,y,{hard:!0,trim:!1}).split(`
|
|
430
|
+
`);me.length>1&&r.write(lo.cursor.up(me.length-1)),r.write(lo.cursor.to(0)),r.write(lo.erase.down())},Ye=me=>me.replace(/\.+$/,""),ae=me=>{let dt=(performance.now()-me)/1e3,Xt=Math.floor(dt/60),Qt=Math.floor(dt%60);return Xt>0?`[${Xt}m ${Qt}s]`:`[${Qt}s]`},Xe=c.withGuide??dr.withGuide,Ce=(me="")=>{f=!0,l=Nm({output:r}),p=Ye(me),g=performance.now(),Xe&&r.write(`${_e.default.gray(pr)}
|
|
431
|
+
`);let dt=0,Xt=0;J(),d=setInterval(()=>{if(u&&p===m)return;X(),m=p;let Qt=v(s[dt]),Cs;if(u)Cs=`${Qt} ${p}...`;else if(t==="timer")Cs=`${Qt} ${p} ${ae(g)}`;else{let P0=".".repeat(Math.floor(Xt)).slice(0,3);Cs=`${Qt} ${p}${P0}`}let E0=Ds(Cs,y,{hard:!0,trim:!1});r.write(E0),dt=dt+1<s.length?dt+1:0,Xt=Xt<4?Xt+.125:0},i)},jt=(me="",dt=0,Xt=!1)=>{if(!f)return;f=!1,clearInterval(d),X();let Qt=dt===0?_e.default.green(vc):dt===1?_e.default.red(Y0):_e.default.red(X0);p=me??p,Xt||(t==="timer"?r.write(`${Qt} ${p} ${ae(g)}
|
|
432
|
+
`):r.write(`${Qt} ${p}
|
|
433
|
+
`)),D(),l()};return{start:Ce,stop:(me="")=>jt(me,0),message:(me="")=>{p=Ye(me??p)},cancel:(me="")=>jt(me,1),error:(me="")=>jt(me,2),clear:()=>jt("",0,!0),get isCancelled(){return h}}},S2={light:ue("\u2500","-"),heavy:ue("\u2501","="),block:ue("\u2588","#")};var w2=`${_e.default.gray(pr)} `;var E=bn(dc(),1);Fs();Hc();import{execSync as xn}from"node:child_process";import{readFileSync as $0,cpSync as Iz,accessSync as S0,existsSync as Oz,readdirSync as Cz,rmSync as ac,closeSync as zz,openSync as Nz,constants as w0}from"node:fs";import{resolve as St,dirname as Az,join as k0}from"node:path";import{tmpdir as jz,devNull as Mz}from"node:os";import{fileURLToPath as Dz,pathToFileURL as Zz}from"node:url";var Lz={"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"}};async function qz(t,e){try{zz(2),Nz(Mz,"w")}catch{process.stderr.write=(()=>!0)}let r=Lz[t]?.[e];r||process.exit(1);let n=cc();await import(Zz(k0(n,r)).href)}var Os=process.argv.slice(2);Os[0]==="doctor"?Fz().then(t=>process.exit(t)):Os[0]==="upgrade"?Hz():Os[0]==="hook"?qz(Os[1],Os[2]):Promise.resolve().then(()=>(b0(),x0));function nL(t){return t.replace(/\\/g,"/")}function cc(){let t=Dz(import.meta.url),e=Az(t);return e.endsWith("/build")||e.endsWith("\\build")?St(e,".."):e}function T0(){try{return JSON.parse($0(St(cc(),"package.json"),"utf-8")).version??"unknown"}catch{return"unknown"}}async function Uz(){try{let t=await fetch("https://registry.npmjs.org/context-mode/latest");return t.ok?(await t.json()).version??"unknown":"unknown"}catch{return"unknown"}}async function Fz(){process.stdout.isTTY&&console.clear();let t=_o(),e=await ei(t.platform);$c(E.default.bgMagenta(E.default.white(" context-mode doctor "))),C.info(`Platform: ${E.default.cyan(e.name)}`+E.default.dim(` (${t.confidence} confidence \u2014 ${t.reason})`));let r=0,n=wc();n.start("Running diagnostics");let o,s;try{o=$n(),s=Us(o)}catch{return n.stop("Diagnostics partial"),C.warn(E.default.yellow("Could not detect runtimes")+E.default.dim(" \u2014 module may be missing, restart session after upgrade")),Ls(E.default.yellow("Doctor could not fully run \u2014 try again after restarting")),1}n.stop("Diagnostics complete"),Sc(qs(o),"Runtimes"),po()?C.success(E.default.green("Performance: FAST")+" \u2014 Bun detected for JS/TS execution"):C.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++,C.error(E.default.red(`Language coverage: ${s.length}/${i} (${a}%)`)+" \u2014 too few runtimes detected"+E.default.dim(` \u2014 ${s.join(", ")||"none"}`))):C.info(`Language coverage: ${s.length}/${i} (${a}%)`+E.default.dim(` \u2014 ${s.join(", ")}`)),C.step("Testing server initialization...");try{let{PolyglotExecutor:m}=await Promise.resolve().then(()=>(hm(),Gb)),y=await new m({runtimes:o}).execute({language:"javascript",code:'console.log("ok");',timeout:5e3});y.exitCode===0&&y.stdout.trim()==="ok"?C.success(E.default.green("Server test: PASS")):(r++,C.error(E.default.red("Server test: FAIL")+` \u2014 exit ${y.exitCode}`))}catch(m){let g=m instanceof Error?m.message:String(m);g.includes("Cannot find module")||g.includes("MODULE_NOT_FOUND")?C.warn(E.default.yellow("Server test: SKIP")+E.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,C.error(E.default.red("Server test: FAIL")+` \u2014 ${g}`))}C.step(`Checking ${e.name} hooks configuration...`);let c=cc(),u=e.validateHooks(c);for(let m of u)m.status==="pass"?C.success(E.default.green(`${m.check}: PASS`)+` \u2014 ${m.message}`):C.error(E.default.red(`${m.check}: FAIL`)+` \u2014 ${m.message}`+(m.fix?E.default.dim(`
|
|
434
|
+
Run: ${m.fix}`):""));C.step("Checking hook script...");let l=St(c,"hooks","pretooluse.mjs");try{S0(l,w0.R_OK),C.success(E.default.green("Hook script exists: PASS")+E.default.dim(` \u2014 ${l}`))}catch{C.error(E.default.red("Hook script exists: FAIL")+E.default.dim(` \u2014 not found at ${l}`))}C.step(`Checking ${e.name} plugin registration...`);let d=e.checkPluginRegistration();d.status==="pass"?C.success(E.default.green("Plugin enabled: PASS")+E.default.dim(` \u2014 ${d.message}`)):C.warn(E.default.yellow("Plugin enabled: WARN")+` \u2014 ${d.message}`),C.step("Checking FTS5 / better-sqlite3...");try{let m=(await import("better-sqlite3")).default,g=new m(":memory:");g.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),g.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let y=g.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();g.close(),y&&y.content==="hello world"?C.success(E.default.green("FTS5 / better-sqlite3: PASS")+" \u2014 native module works"):(r++,C.error(E.default.red("FTS5 / better-sqlite3: FAIL")+" \u2014 query returned unexpected result"))}catch(m){let g=m instanceof Error?m.message:String(m);g.includes("Cannot find module")||g.includes("MODULE_NOT_FOUND")?C.warn(E.default.yellow("FTS5 / better-sqlite3: SKIP")+E.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,C.error(E.default.red("FTS5 / better-sqlite3: FAIL")+` \u2014 ${g}`+E.default.dim(`
|
|
435
|
+
Try: npm rebuild better-sqlite3`)))}C.step("Checking versions...");let f=T0(),h=await Uz(),p=e.getInstalledVersion();return h==="unknown"?C.warn(E.default.yellow("npm (MCP): WARN")+` \u2014 local v${f}, could not reach npm registry`):f===h?C.success(E.default.green("npm (MCP): PASS")+` \u2014 v${f}`):C.warn(E.default.yellow("npm (MCP): WARN")+` \u2014 local v${f}, latest v${h}`+E.default.dim(`
|
|
436
|
+
Run: /context-mode:ctx-upgrade`)),p==="not installed"?C.info(E.default.dim(`${e.name}: not installed`)+" \u2014 using standalone MCP mode"):h!=="unknown"&&p===h?C.success(E.default.green(`${e.name}: PASS`)+` \u2014 v${p}`):h!=="unknown"?C.warn(E.default.yellow(`${e.name}: WARN`)+` \u2014 v${p}, latest v${h}`+E.default.dim(`
|
|
437
|
+
Run: /context-mode:ctx-upgrade`)):C.info(`${e.name}: v${p}`+E.default.dim(" \u2014 could not verify against npm registry")),r>0?(Ls(E.default.red(`Diagnostics failed \u2014 ${r} critical issue(s) found`)),1):(Ls(s.length>=4?E.default.green("Diagnostics complete!"):E.default.yellow("Some checks need attention \u2014 see above for details")),0)}async function Hz(){process.stdout.isTTY&&console.clear();let t=_o(),e=await ei(t.platform);$c(E.default.bgCyan(E.default.black(" context-mode upgrade "))),C.info(`Platform: ${E.default.cyan(e.name)}`+E.default.dim(` (${t.confidence} confidence)`));let r=cc(),n=[],o=wc();C.step("Pulling latest from GitHub...");let s=T0(),i=k0(jz(),`context-mode-upgrade-${Date.now()}`);o.start("Cloning mksglu/context-mode");try{xn(`git clone --depth 1 https://github.com/mksglu/context-mode.git "${i}"`,{stdio:"pipe",timeout:3e4}),o.stop("Downloaded");let l=i,f=JSON.parse($0(St(l,"package.json"),"utf-8")).version??"unknown";f===s?C.success(E.default.green("Already on latest")+` \u2014 v${s}`):C.info(`Update available: ${E.default.yellow("v"+s)} \u2192 ${E.default.green("v"+f)}`),o.start("Installing dependencies & building"),xn("npm install --no-audit --no-fund",{cwd:l,stdio:"pipe",timeout:6e4}),xn("npm run build",{cwd:l,stdio:"pipe",timeout:3e4}),o.stop("Built successfully"),o.start("Updating files in-place");let h=r.match(/^(.*[\\/]plugins[\\/]cache[\\/][^\\/]+[\\/][^\\/]+[\\/])/);if(h){let m=h[1],g=r.replace(m,"").replace(/[\\/]/g,"");try{let y=Cz(m).filter(v=>v!==g);for(let v of y)try{ac(St(m,v),{recursive:!0,force:!0})}catch{}y.length>0&&C.info(E.default.dim(` Cleaned ${y.length} stale cache dir(s)`))}catch{}}let p=["build","src","hooks","skills",".claude-plugin","start.mjs","server.bundle.mjs","cli.bundle.mjs","package.json",".mcp.json"];for(let m of p)try{ac(St(r,m),{recursive:!0,force:!0}),Iz(St(l,m),St(r,m),{recursive:!0})}catch{}o.stop(E.default.green(`Updated in-place to v${f}`)),e.updatePluginRegistry(r,f),C.info(E.default.dim(" Registry synced to "+r)),o.start("Installing production dependencies"),xn("npm install --production --no-audit --no-fund",{cwd:r,stdio:"pipe",timeout:6e4}),o.stop("Dependencies ready"),o.start("Updating npm global package");try{xn(`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")),C.info(E.default.dim(" Could not update global npm \u2014 may need sudo or standalone install"))}ac(i,{recursive:!0,force:!0}),n.push(f!==s?`Updated v${s} \u2192 v${f}`:`Reinstalled v${s} from GitHub`),C.success(E.default.green("Plugin reinstalled from GitHub!")+E.default.dim(` \u2014 v${f}`))}catch(l){let d=l instanceof Error?l.message:String(l);o.stop(E.default.red("Update failed")),C.error(E.default.red("GitHub pull failed")+` \u2014 ${d}`),C.info(E.default.dim("Continuing with hooks/settings fix..."));try{ac(i,{recursive:!0,force:!0})}catch{}}C.step(`Backing up ${e.name} settings...`);let a=e.backupSettings();a?(C.success(E.default.green("Backup created")+E.default.dim(" -> "+a)),n.push("Backed up settings")):C.warn(E.default.yellow("No existing settings to backup")+" \u2014 a new one will be created"),C.step(`Configuring ${e.name} hooks...`);let c=e.configureAllHooks(r);for(let l of c)C.info(E.default.dim(` ${l}`)),n.push(l);C.success(E.default.green("Hooks configured")+E.default.dim(` \u2014 ${e.name}`)),C.step("Setting hook script permissions...");let u=e.setHookPermissions(r);for(let l of["build/cli.js","cli.bundle.mjs"]){let d=St(r,l);try{S0(d,w0.F_OK),xn(`chmod +x "${d}"`,{stdio:"ignore"}),u.push(d)}catch{}}u.length>0?(C.success(E.default.green("Permissions set")+E.default.dim(` \u2014 ${u.length} hook script(s)`)),n.push(`Set ${u.length} hook scripts as executable`)):C.error(E.default.red("No hook scripts found")+E.default.dim(" \u2014 expected in "+St(r,"hooks"))),n.length>0?Sc(n.map(l=>E.default.green(" + ")+l).join(`
|
|
438
|
+
`),"Changes Applied"):C.info(E.default.dim("No changes were needed.")),C.step("Running doctor to verify..."),console.log();try{let l=St(r,"cli.bundle.mjs"),d=St(r,"build","cli.js"),f=Oz(l)?l:d;xn(`node "${f}" doctor`,{stdio:"inherit",timeout:3e4,cwd:r})}catch{C.warn(E.default.yellow("Doctor had warnings")+E.default.dim(` \u2014 restart your ${e.name} session to pick up the new version`))}}export{nL as toUnixPath};
|